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