I realized that I had compiled xawtv on an old kernel. I recompiled
xawtv 1.88 and it now shows /dev/video0 it as v4l2
-BUT-BUT-BUT-
How do I know that it is not falling back to v4l?
Should Bill Dirks sample apps from 2002-03-17 still work with 2.4.22 and
bttv 0.9.11? (they compile fine but fail miserably when run)
The code I have is based on that code, so if someone has hacked the old
sample apps to work I would love to see them. It seems that everything
pukes on the VIDIOC_QUERYBUF call, which I understand is the way to tell
if v4l2 is working....
help!
--George
George Motter wrote:
I'm having a heck of a time getting v4l2 running on a server. Recently
I tried 2.4.21 patched cleanly for v4l2 on a RH8 box using the infamous
WinTV Go card. With any version of bttv 0.9 it loaded and attached
itself to /dev/video31 which did not exist.
I compiled 2.4.22 with patches and I can now get bttv on /dev/video0
(with no changes in modules.conf from 2.4.21)
but... xawtv works fine xawtv -hwscan reports it is only v4l. Tried
the old sample apps (vctrl, xcaptest) and it bails on QUERYCAP hinting
that it can't find the v4l2 in bttv either. (they do compile cleanly on
the patched 2.4.22 videodev.h so it is finding the v4l2 libraries) I
tried bttv 0.9.5 - 0.9.11, all compile great but no v4l2.
I'm really climbing a wall here, I have to get this done for a project.
The software was written on a RH 7.2 box with the old v4l2 stuff, and I
need to bring the server up to a recent version for security and sanity.
Thank you to whoever has pity on me!
--George
Here are the important details:
Module Size Used by Not tainted
tuner 12480 1 (autoclean)
tvaudio 16796 0 (autoclean) (unused)
bttv 113504 0 (autoclean)
video-buf 15500 0 (autoclean) [bttv]
i2c-algo-bit 8840 1 (autoclean) [bttv]
btcx-risc 3624 0 (autoclean) [bttv]
v4l2-common 5376 0 (autoclean) [bttv]
i2c-core 19172 0 (autoclean) [tuner tvaudio bttv
i2c-algo-bit]
videodev 9248 2 (autoclean) [bttv]
i810_audio 27592 0 (autoclean)
ac97_codec 17224 0 (autoclean) [i810_audio]
soundcore 6468 2 (autoclean) [bttv i810_audio]
Oct 8 12:02:36 dyn003166 kernel: Linux video capture interface: v1.00
Oct 8 12:02:36 dyn003166 kernel: i2c-core.o: i2c core module
Oct 8 12:02:36 dyn003166 kernel: i2c-algo-bit.o: i2c bit algorithm module
Oct 8 12:02:36 dyn003166 kernel: bttv: driver version 0.9.11 loaded
Oct 8 12:02:36 dyn003166 kernel: bttv: using 8 buffers with 2080k (520
pages) each for capture
Oct 8 12:02:36 dyn003166 kernel: bttv: Host bridge is Intel Corp. E7505
Memory Controller Hub
Oct 8 12:02:36 dyn003166 kernel: bttv: Bt8xx card found (0).
Oct 8 12:02:36 dyn003166 kernel: PCI: Found IRQ 11 for device 05:0e.0
Oct 8 12:02:36 dyn003166 kernel: PCI: Sharing IRQ 11 with 05:0e.1
Oct 8 12:02:36 dyn003166 kernel: bttv0: Bt878 (rev 17) at 05:0e.0, irq:
11, latency: 64, mmio: 0xf80ff000
Oct 8 12:02:36 dyn003166 kernel: bttv0: detected: Hauppauge WinTV
[card=10], PCI subsystem ID is 0070:13eb
Oct 8 12:02:36 dyn003166 kernel: bttv0: using: BT878(Hauppauge (bt878))
[card=10,autodetected]
Oct 8 12:02:36 dyn003166 kernel: bttv0: Hauppauge/Voodoo msp34xx: reset
line init [5]
Oct 8 12:02:36 dyn003166 kernel: i2c-algo-bit.o: Adapter: bt848 #0 scl:
1 sda: 1 -- testing...
Oct 8 12:02:36 dyn003166 kernel: i2c-algo-bit.o:1 scl: 1 sda: 0
Oct 8 12:02:36 dyn003166 kernel: i2c-algo-bit.o:2 scl: 1 sda: 1
Oct 8 12:02:36 dyn003166 kernel: i2c-algo-bit.o:3 scl: 0 sda: 1
Oct 8 12:02:36 dyn003166 kernel: i2c-algo-bit.o:4 scl: 1 sda: 1
Oct 8 12:02:36 dyn003166 kernel: i2c-algo-bit.o: bt848 #0 passed test.
Oct 8 12:02:36 dyn003166 kernel: i2c-core.o: adapter bt848 #0
registered as adapter 0.
Oct 8 12:02:36 dyn003166 kernel: bttv0: Hauppauge eeprom: model=44801,
tuner=Philips FI1236 MK2 (2), radio=no
Oct 8 12:02:36 dyn003166 kernel: bttv0: using tuner=2
Oct 8 12:02:36 dyn003166 kernel: bttv0: i2c: checking for MSP34xx @
0x80... not found
Oct 8 12:02:36 dyn003166 kernel: bttv0: i2c: checking for TDA9875 @
0xb0... not found
Oct 8 12:02:36 dyn003166 kernel: bttv0: i2c: checking for TDA7432 @
0x8a... not found
Oct 8 12:02:36 dyn003166 kernel: tvaudio: TV audio decoder +
audio/video mux driver
Oct 8 12:02:36 dyn003166 kernel: tvaudio: known chips:
tda9840,tda9873h,tda9874h/a,tda9850,tda9855,tea6300,tea6420,tda8425,pic16c54
(PV951),ta8874z
Oct 8 12:02:36 dyn003166 kernel: i2c-core.o: driver generic i2c audio
driver registered.
Oct 8 12:02:36 dyn003166 kernel: i2c-core.o: driver i2c TV tuner driver
registered.
Oct 8 12:02:36 dyn003166 kernel: tuner: chip found @ 0xc2
Oct 8 12:02:36 dyn003166 kernel: tuner(bttv): type forced to 2 (Philips
NTSC (FI1236,FM1236 and compatibles)) [insmod]
Oct 8 12:02:36 dyn003166 kernel: tuner: type already set (2)
Oct 8 12:02:36 dyn003166 kernel: i2c-core.o: client [Philips NTSC
(FI1236,FM1236 and] registered to adapter [bt848 #0](pos. 0).
Oct 8 12:02:36 dyn003166 kernel: bttv0: registered device video0
Oct 8 12:02:36 dyn003166 kernel: bttv0: registered device vbi0
Oct 8 12:02:36 dyn003166 kernel: bttv0: PLL: 28636363 => 35468950 .. ok
# i2c
alias char-major-89 i2c-dev
options i2c-core i2c_debug=1
options i2c-algo-bit bit_test=1
# bttv
alias char-major-81 videodev
alias char-major-81-0 bttv
options bttv bttv_debug=3 v4l2=1 radio=0 tuner=2
options tuner type=2 debug=1
--
--------------------------------
George F. Motter V
Senior Systems Specialist
Instructional Technology Support
Library & Technology Services
Lehigh University
Bethlehem, PA 18015
(610) 758-6149
george.motter@xxxxxxxxxx