Next Previous Contents

3. Compiling a custom kernel

3.1 Fetching the sources

Unfortunately the Fedora kernel doesn't support the DVICO HDTV card and not all of the patches have made it into the 2.6.10 kernel, so we have to make a custom kernel and use Chris Pascoe's driver package. Don't try using the 2.6.10 vanilla kernel as the driver package does not work with it. (well, it didn't work when I first tried it, though that might have been because of one or more of the small patches that we have to use that I wasn't aware of then) Update: I've been assured that 2.6.10 kernel will work, so I'll give compiling it another go and modify this guide when I can get it to work.

$ cd
$ wget http://www.piau.lkams.kernel.org/pub/linux/kernel/v2.6/linux-2.6.9.tar.bz2
$ wget http://download.nvidia.com/XFree86/Linux-x86/1.0-6629/NVIDIA-Linux-x86-1.0-6629-pkg1.run
$ wget http://www.itee.uq.edu.au/~chrisp/Linux-DVB/DVICO/hid-core.c.diff
$ wget http://www.itee.uq.edu.au/~chrisp/Linux-DVB/DVICO/hid.h.diff

Hint: use 'wget -c http://www.....' if your internet connection drops and you need to resume an interrupted download.

Hint: use the up arrow to bring up the last command and edit it instead of typing it all in again.

Hint: use the TAB key when typing in a long path - type in the first couple of letters, then hit TAB... hit TAB a second time to see all the options.

3.2 Patching the sources

Ok, now become root, uncompress the source, patch some files and start compiling. The patches enable use of the USB IR receiver and remote that comes with the DVICO FusionHDTV. We will compile lircd later on in the installation process.

# cd /usr/src
# tar jxvf /home/mythtv/linux-2.6.9.tar.bz2 -C /usr/src/
# cd /usr/src/linux-2.6.9/drivers/usb/input
# patch hid.h /home/mythtv/hid.h.diff
# patch hid-core.c /home/mythtv/hid-core.c.diff

The second patch will fail on the third chunk for some reason, and so we'll need to edit hid-core.c by hand a bit. If you read hid-core.c.rej you will see that the patch failed to insert a line. We will insert the following at line 1489:

{ USB_VENDOR_ID_DVICO, USB_DEVICE_ID_DVICO_REMOTE, HID_QUIRK_REPEAT_SAME_VARIABLES },

by using nano.

# nano -w /usr/src/linux-2.6.9/drivers/usb/input/hid-core.c

Hint: use CTRL-C to find out what line you're on. The shortcuts to the commands are actually displayed at the bottom of the screen.


Next Previous Contents