This howto, hopefully, will be able to explain how to install these kinds of cards. All of the errors will be written down which i have seen during the process. If you still have any questions, write a mail to email@example.com.
If your kernel contains Video For Linux support higher than 0.0.3 version (2.6.8 and higher versions of kernel do), then go to section 3 (the version can be found out by the "kernel's-source-directory/drivers/media/video/cx88/cx88.h" file's line which contains #define CX88_VERSION_CODE KERNEL_VERSION(x,y,z) - where x,y,z mean the version number seperated by commas instead of dots). But if you don't have a good version of program, then first of all, you will need a cx88-version.tar.gz (version>0.0.3) file directly from this server or indirectly from http://bytesex.org/ (this is the OFFICIAL version; the file can be found at video4linux -> releases). If you are NOT A DEBIAN USER, jump to section 3, else (if you are a DEBIAN USER) you will have to replace the kernel's driver to the downloaded one or get the changed kernel from here and go to section 3.
If you want to replace this, then first you must compare the "kernel's-source-directory/drivers/media/video" and "kernel's-source-directory/drivers/media/video/cx88" to the downloaded file's directory. There will be some files which has exactly the same name - they must be overwritten by the newer ones. In the downloaded file's directory there will be some files remaining which can't be found in kernel. If these have the same names as files in "kernel's-source-directory/include/linux" or "kernel's-source-directory/include/media", then you must overwrite them. If there will still be some files, then search the already copied source files and look for #include lines. If these says #include <linux/remaining-file's-name> or #include <media/remaining-file's-name>, then they must be copied in "kernel's-source-directory/include/linux" or "kernel's-source-directory/include/media", but if #include "remaining-file's-name" looks like this, then using the "kernel's-source-directory/drivers/media/video" directory as actual, the path will be given by the string between " characters.
ATTENTION! If you couldn't replace your driver by reading the section above, then you still can send a letter to me with the kernel type (version,...) and the cx88 version.
First you must check your compiler's version, it must be higher than 3.2 (to check this, write: cc --version or gcc --version). If you have lower version, then you must choose between updating your compiler or rewriting some code in the driver. If you replace your cc or gcc, then you can go to section 4. But if you choose modifing the code (of course, you don't have to update you compiler), you must edit "kernel's-source-directory/drivers/media/video/cx88/cx88-vbi.c" (in cx8800-0.0.4 this file was the only one which needed to be changed, later this file list can grow) and search for switch statement(s) (mostly those switches must be rewritten which contains dev->tvnorm->id variable). After finding these you must replace switches with simple if instructions.
If you didn't have to download the cx88-version.tar.gz file or you had to, but you are a Debian user, then go to section 5.
First you must check your kernel. It has to have Video For Linux, I2C support and I2C bit-banging interfaces modules. If you don't know anything about what i am writing, then i suggest you to read the Kernel-HOWTO. If you don't have these in your kernel, then you must compile one. To make cx88 work you must enable Device Drivers -> I2C support, Device Drivers -> I2C support -> I2C Algorithms -> I2C bit-banging interfaces, Device Drivers -> Multimedia devices -> Video For Linux as modules (M before the option represents that it will be a module). After you have installed your new kernel and rebooted your computer with that, the downloaded file can be unpacked. To install the driver go to "cx88-version" directory and type make; make install; doc/MAKEDEV. If it didn't show error, then type as root: modprobe cx8800. If there were no errors, then your driver is complete.
In this way of making the driver if you restart your computer, the cx88 won't be in the kernel and cannot be used. To make it work, after reboot or halt you will always have to type the previous modprobe command. Go to section 6.
If you haven't compiled a kernel before, then i suggest you to read the Kernel-HOWTO. For making the tv-tuner work you must decide between:
Now, hopefully you can use your card. If you looking for a tv-watcher program which is good and user-friendly, i think tvime is an excellent choice. And if you are from Hungary, i can help you with config files to tvtime (here you can find the general config for tv - copy it to "tvtime-installed-directory/etc/tvtime"; here is the user config, which by the way contains the channels setup - MTV1, RTL Klub, TV2 -, copy the compressed file's contents to your home directory).
|*** Warning: "__ucmpdi2" [drivers/media/video/cx88/cx8800.ko] undefined! message under kernel compiling||choose between updating your compiler (to version>=3.3) or rewriting some code in the driver; if you replace your cc or gcc, then you don't have to do anything else; but if you choose modifing the code (of course, you don't have to update you compiler), you must edit "kernel's-source-directory/drivers/media/video/cx88/cx88-vbi.c" (in cx8800-0.0.4 this file was the only one which needed to be changed, later this file list can grow) and search for switch statement(s) (mostly those switches must be rewritten which contains dev->tvnorm->id variable); after finding these you must replace switches with simple if instructions||old c compilers (like 2.95.4) are not able to make 64-bit wide switch statements|
|Unknown symbol: __ucmpdi2 message under running modprobe command||same as the previous row||same as the previous row|
|Segmentation fault message under running modprobe command||compile the driver in the kernel, not as modules (if you don't know how, then read the part of section 2, which is written for Debian users) - IF YOU ARE NOT A DEBIAN USER AND HAVE THIS PROBLEM AND THIS SOLUTION WORKS FOR YOU, THEN PLEASE SEND ME A LETTER WITH YOUR OPERATION SYSTEM'S NAME AND VERSION||unknown|
|no sound||use higher driver version than 0.0.3 (>=0.0.4)||no support in lower version than 0.0.4|
|strange noises||use mono audio mode||no support|
|only black and white colours||use higher hue and colour value||unknown|