-----BEGIN PGP SIGNED MESSAGE-----
I solved the following problem while writing it up. I'm posting it
anyway in case it helps other.
I have a 848-based tuner card that works fine when I boot Red Hat's
2.4.18-27.8.0 kernel, but just shows snow when I cold boot Red Hat's
2.4.20-18.8 or 2.4.20-13.8 kernels.
- - Everything else is unchanged: the same file systems and settings are
present. All I change is the kernel that is being booted. So it
seems as if the problem must be within the kernel.
- - If I boot 2.4.18-27.8.0, use the tuner, and then reboot to
2.4.20-18.8 without turning off the power, the tuner works. So it
seems as if the problem might be with initializing the device.
- - when I look at the dmesg output for a cold and warm boot of the
2.4.20-18.8 kernel, I see no difference.
- - the key difference is probably between bttv versions 0.7.91
and 0.7.104
I've included a diff between the bttv parts of the dmesg output of the
2.4.18-27.8.0 and 2.4.20-13.8 kernels. In each case, I did a fresh
boot, started X, started and stopped xawtv, and did the dmesg. The
diff was done with -U 100 to avoid gaps.
Kernel version:
-Linux version 2.4.18-27.8.0 ([EMAIL PROTECTED]) (gcc version 3.2 20020903 (Red
Hat Linux 8.0 3.2-7)) #1 Fri Mar 14 07:36:43 EST 2003
+Linux version 2.4.20-18.8 ([EMAIL PROTECTED]) (gcc version 3.2 20020903 (Red Hat
Linux 8.0 3.2-7)) #1 Thu May 29 07:20:39 EDT 2003
Interesting message. I assume that it isn't relevant:
+PCI: 00:09.2 PCI cache line size set incorrectly (32 bytes) by BIOS/FW.
+PCI: 00:09.2 PCI cache line size corrected to 64.
This output from lspci suggests it is one of the USB controllers:
00:09.2 USB Controller: VIA Technologies, Inc. USB 2.0 (rev 51)
Here is the lspci -vv output for the tuner:
00:0f.0 Multimedia video controller: Brooktree Corporation Bt848 Video Capture
(rev 12)
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort-
<MAbort- >SERR- <PERR-
Latency: 32 (4000ns min, 10000ns max)
Interrupt: pin A routed to IRQ 5
Region 0: Memory at f5000000 (32-bit, prefetchable) [size=4K]
Here is the meat of the diff:
i2c-core.o: i2c core module
-i2c-algo-bit.o: i2c bit algorithm module
Linux video capture interface: v1.00
-bttv: driver version 0.7.91 loaded
-bttv: using 2 buffers with 2080k (4160k total) for capture
+i2c-algo-bit.o: i2c bit algorithm module
+bttv: driver version 0.7.104 loaded
+bttv: using 4 buffers with 2080k (8320k total) for capture
bttv: Host bridge is VIA Technologies, Inc. VT8367 [KT266]
bttv: Bt8xx card found (0).
PCI: Found IRQ 5 for device 00:0f.0
-bttv0: Bt848 (rev 18) at 00:0f.0, irq: 5, latency: 32, memory: 0xf5000000
+bttv0: Bt848 (rev 18) at 00:0f.0, irq: 5, latency: 32, mmio: 0xf5000000
bttv0: using: BT848A(Aimslab Video Highway X) [card=14,insmod option]
i2c-algo-bit.o: Adapter: bt848 #0 scl: 1 sda: 1 -- testing...
i2c-algo-bit.o:1 scl: 1 sda: 0
i2c-algo-bit.o:2 scl: 1 sda: 1
i2c-algo-bit.o:3 scl: 0 sda: 1
i2c-algo-bit.o:4 scl: 1 sda: 1
i2c-algo-bit.o: bt848 #0 passed test.
i2c-core.o: adapter bt848 #0 registered as adapter 0.
+bttv0: using tuner=-1
bttv0: i2c: checking for MSP34xx @ 0x80... not found
bttv0: i2c: checking for TDA9875 @ 0xb0... not found
bttv0: i2c: checking for TDA7432 @ 0x8a... not found
tvaudio: TV audio decoder + audio/video mux driver
tvaudio: known chips:
tda9840,tda9873h,tda9874h/a,tda9850,tda9855,tea6300,tea6420,tda8425,pic16c54 (PV951)
i2c-core.o: driver generic i2c audio driver registered.
-i2c-core.o: driver i2c TV tuner driver registered.
-tuner: probing bt848 #0 i2c adapter [id=0x10005]
-tuner: chip found @ 0xc0
-bttv0: i2c attach [client=Philips NTSC,ok]
-i2c-core.o: client [Philips NTSC] registered to adapter [bt848 #0](pos. 0).
+bttv0: PLL: 28636363 => 35468950 .. ok
bttv0: registered device video0
bttv0: registered device vbi0
bttv0: registered device radio0
-tuner: tv freq set to 83.25
+bttv0: PLL can sleep, using XTAL (28636363).
Hmm. The tuner is no longer being recognized. I don't know why.
My modules.conf said:
options i2c-core i2c_debug=1
options i2c-algo-bit bit_test=1
options bttv card=0x0e radio=1 bttv_verbose=2
options tuner debug=1 type=2
options tvaudio debug=1
I fixed the problem by adding " tuner=2" at the end of the options
bttv line. Not sure why this became necessary.
Hugh Redelmeier
[EMAIL PROTECTED] voice: +1 416 482-8253
-----BEGIN PGP SIGNATURE-----
Version: 2.6.3ia
Charset: noconv
iQCVAwUBPxtIIcFAuQPManGZAQHXFAP/SU/uJRHsevD0D0VwAlAXJOAePkhT4aeW
WtcRTh5uT+ppsQ82fqKKrGw3rdYwusTddvRNrCw/7ypdUgtqx6chhSNtrP9RIxee
HdAGmrtZ4S6ipuEk8Fyoy0A3Bgg5FXJyP79MhHVYkjw4NCYGunGDX1oeesp7ni+v
/tfdILIegB4=
=vwY6
-----END PGP SIGNATURE-----
--
video4linux-list mailing list
Unsubscribe mailto:[EMAIL PROTECTED]
https://www.redhat.com/mailman/listinfo/video4linux-list