Annotation of dvb-kernel/README.bt8xx, revision 1.5

1.4       hunold      1: How to get the Nebula, PCTV and Twinhan DST cards working
                      2: =========================================================
1.1       holger      3: 
1.2       honan       4: This class of cards has a bt878a as the PCI interface, and
                      5: require the bttv driver.
                      6: 
                      7: Please pay close attention to the warning about the bttv module
                      8: options below for the DST card.
                      9: 
1.3       honan      10: For 2.4, make sure you are using an uptodate kernel 2.4.23 and above.
1.4       hunold     11: For 2.6, shuffle down to the 2.6 section below.
                     12: 
                     13: 1) 2.4
                     14: ======
1.2       honan      15: 
1.3       honan      16: For 2.4, make sure you are using an uptodate kernel 2.4.23 and above.
1.2       honan      17: This is the *only* way to go when you are experimenting with 
1.5     ! hunold     18: bleeding-edge stuff like DVB.
        !            19: 
        !            20: Do the usual to build your kernel and remember to enable the V4L functionality.
        !            21: For the 'BT848 Video For Linux' in the 'Video for Linux' section to show up
        !            22: you need to enable 'I2C support' and 'I2C bit-banging interfaces' in the
        !            23: charcter devices section.
1.2       honan      24: 
1.4       hunold     25: I'd recommend you install and  test your kernel, rather than diving
                     26: straight into the bt878 stuff.
1.1       holger     27: 
1.4       hunold     28: Download http://bytesex.org/snapshot/video4linux-xxxxyyzz.tar.gz, where
                     29: xxxxyyzz is the date of the release.
1.1       holger     30: 
1.4       hunold     31: Extract it and do the usual "make" and "make install".
                     32:   $ tar xzfv video4linux-xxxxyyzz.tar.gz
                     33:   $ make
                     34:   $ make install
                     35:   
                     36: Now grab "dvb-kernel" from CVS:
1.1       holger     37: 
                     38:   $ cvs -d :pserver:anonymous@linuxtv.org:/cvs/linuxtv login
                     39:   $ cvs -d :pserver:anonymous@linuxtv.org:/cvs/linuxtv co dvb-kernel
                     40: 
1.4       hunold     41: ... and build the driver:
1.2       honan      42: 
                     43:   $ cd dvb-kernel/build-2.4
                     44:   $ ./getlinks
                     45:   $ make
                     46:   $ make install
                     47: 
1.5     ! hunold     48: If you don't use devfs (or your devfs setup is not configured correctly)
        !            49: you might need to add the device nodes manually with the "makedev"
        !            50: script from the DVB driver:
        !            51: http://linuxtv.org/cgi-bin/cvsweb.cgi/~checkout~/DVB/driver/makedev.napi?rev=1.14&content-type=text/plain
        !            52: 
1.4       hunold     53: 2) 2.6
                     54: ======
1.1       holger     55: 
1.4       hunold     56: For 2.6, you don't need the latest bttv driver, everything is in
                     57: the kernel drivers. Please use 2.6.0-test10 and above.
1.1       holger     58: 
1.4       hunold     59: Checkout dvb-kernel as mentionen above, but then do everything as per
                     60: the README in dvb-kernel.
1.1       holger     61: 
1.5     ! hunold     62: Unfortunately, in some older kernels the bttv card lists have the
        !            63: TwinHan cards listed as card=0x68. (see below) Using card=0x71 there
        !            64: will lockup your machine.
        !            65: 
1.4       hunold     66: 3) Loading Modules
                     67: ==================
1.1       holger     68: 
1.4       hunold     69: You can either modify and use the "insmod-bt8xx.sh" script in the build-2.4
                     70: directory or simply do everything by hand.
1.1       holger     71: 
1.4       hunold     72: In general you need to load the bttv driver, which will handle the gpio and
                     73: i2c communication for us. Next you need the common dvb-bt8xx device driver
                     74: and one frontend driver.
1.1       holger     75: 
1.4       hunold     76: The bttv driver will HANG YOUR SYSTEM IF YOU DO NOT SPECIFY THE COORECT 
                     77: CARD ID! A list of possible card ids can be found inside "bttv-cards.c" inside
                     78: the bttv driver package. 
1.1       holger     79: 
1.2       honan      80: Pay attention to failures to load these frontends. 
                     81: (E.g. dmesg, /var/log/messages).
1.3       honan      82: 
1.4       hunold     83: 3a) Nebula / Pinnacle PCTV
                     84: --------------------------
                     85: 
                     86:    $ modprobe bttv i2c_hw=1 card=0x68
                     87:    $ modprobe dvb-bt8xx
                     88:    
                     89: For Nebula cards use the "nxt6000" frontend driver:
                     90:    $ modprobe nxt6000
                     91: 
                     92: For Pinnacle PCTV cards use the "cx24110" frontend driver:
                     93:    $ modprobe cx24110
                     94: 
                     95: 3b) TwinHan
                     96: -----------
                     97: 
                     98:    $ modprobe bttv i2c_hw=1 card=0x71
                     99:    $ modprobe dvb-bt8xx
                    100:    $ modprobe dst
1.3       honan     101: 
1.4       hunold    102: The value 0x71 will override the PCI type detection for dvb-bt8xx, which 
1.5     ! hunold    103: is necessary for TwinHan cards. If you're using 2.6, see the remark above
        !           104: about the card parameter.
        !           105: 
        !           106: If you're having an older card (blue color circuit) and card=0x71 locks your
        !           107: machine, try using 0x68, too. If that does not work, ask on the mailing list.
1.3       honan     108: 
                    109: The DST module takes a couple of useful parameters, in case the
                    110: dst drivers fails to detect your type of card correctly.
                    111: 
                    112: dst_type takes values 0 (satellite), 1 (terrestial TV), 2 (cable).
                    113: 
                    114: dst_type_flags takes bit combined values:
                    115: 1 = new tuner type packets. You can use this if your card is detected
                    116:     and you have debug and you continually see the tuner packets not
                    117:     working (make sure not a basic problem like dish alignment etc.)
                    118: 
                    119: 2 = TS 204. If your card tunes OK, but the picture is terrible, seemingly
                    120:     breaking up in one half continually, and crc fails a lot, then
                    121:     this is worth a try (or trying to turn off)
                    122: 
                    123: 4 = has symdiv. Some cards, mostly without new tuner packets, require
                    124:     a symbol division algorithm. Doesn't apply to terrestial TV.
                    125: 
                    126: You can also specify a value to have the autodetected values turned off
                    127: (e.g. 0). The autodected values are determined bythe cards 'response
                    128: string' which you can see in your logs e.g.
                    129: 
                    130: dst_check_ci: recognize DST-MOT
                    131: 
                    132: or 
                    133: 
                    134: dst_check_ci: unable to recognize DSTXCI or STXCI
1.1       holger    135: 
1.4       hunold    136: 4) The rest
                    137: ===========
1.2       honan     138: 
1.4       hunold    139: That's it. Have fun. Report problems to the mailing list. Thanks!
1.1       holger    140: 
1.4       hunold    141: --
                    142: Authors:
                    143: Richard Walker (Original)
                    144: Jamie Honan (13 Oct 2003)
                    145: Michael Hunold (25 Nov 2003)

LinuxTV legacy CVS <linuxtv.org/cvs>