I have similar issues with my AverTV Stereo.
- IRQ lockup, cleared int mask
seems to occur if there are devices sharing irq, even though
it doesn't seem related to the tv card. For example,
Sound IRQ3
AverTV IRQ5
USB IRQ10
eth0 IRQ10
VGA IRQ11
If I unload the usb-uhci module, problem seems to go away. It
comes back if I have the usb-uhci module loaded and watch tv.
This doesn't lock up the whole system, just the tvcard. I am
unable to capture video (in capture mode, overlay mode still
works) until I restarted the bttv/etc. modules.
my temporary workaround: rearrange my PCI cards so that they
don't share IRQ. Unfortunately I have 3 PCI cards but only
4 PCI slots. Slot 1 always share IRQ with videocard, Slot
4 share with USB. So I have to unload the usb-uhci module.
- System lockup when capturing to disk
seems to occur when I try to capture at a resolution that
exceed the power of my CPU.
my temporary workaround: uses a lower quality setting.
eg, 15fps, 384x288 (yes, it's very low, but I only have
a K6-3 450)
streamer -t 0:10:0 -r 15 -s 384x288 -f mjpeg -F stereo -o tv.avi
Hope this helps.
btw, does anyone with other brands of tvcard have similar issues?
Are these driver problems, or Avermedia cards just picky on
hardware?
Rich Tollerton wrote:
Like several others on this list I've been running into trouble with an AVerTV
card (AVerTV Studio), but my system only crashes when capturing to disk. XawTV
is rock-solid stable with good picture quality, but as soon as I try anything
that involves saving to disk (xawtv capture, nuppelvideo, streamer, vcr) the
system has even odds of hard locking on the spot or during capture.
I've reproduced this in single-user mode with both NVdriver and agpgart
unloaded, so this has NOTHING to do with XFree86.
System specs: Celeron 850, 1G RAM, 440BX mobo, Linux 2.4.21-pre1 with V4L2 API
patches applied, on Debian sid. Video is NVidia GF2MX with 32MB RAM, NVidia's
1.0-3123 drivers, XFree86 4.2.1.1 and bttv 0.9.23 with the V4L2 patch to the
kernel. I've also tried bttv 0.7.100 with similar results, as well as an
unpatched 2.4.21-pre1 (which I'm using now). Audio is alsa 0.9.0rc5 with
emu10k1.
The locking behavior is NOT a utter freeze of the system - the magic SysRq
commands still work, although syncing/remounting RO does not appear to trigger
any disk activity (so maybe this means a hang in bottom-half handling?).
Other notes:
- The 878 apparantly shares an interrupt with both the USB controller and the
ACPI controller.
- CPU usage is typically pretty minimal
- No kernel messages when the system hangs or any errors reported by the
capture utility as far as I can tell.
- Video input is via Composite1, audio bypasses the capture card entirely and
is routed directly to the source (a digital cable box).
- Smaller capture resolutions appear to be more stable than resolutions closer
to full NTSC - 640x480 consistenly crashes before it even gets off the
ground - but 320x240 is still really touchy.
- I think some hangs may be triggered by disk access - I noticed that
one otherwise fine capture hung when I opened up a sawfish root menu.
- I'm using alsa drivers but recording with OSS via compatibility layers.
Any suggestions on how to stabilize captures, or even looking harder at
specific configs I've already tried (ie v4l2), or debugging questions,
would be greatly appreciated. I'm agonizingly close to getting this
running perfectly :)
Relevant kernel logs:
/sbin/modprobe bttv:
Linux video capture interface: v1.00
i2c-core.o: i2c core module
i2c-algo-bit.o: i2c bit algorithm module
bttv: driver version 0.7.96 loaded
bttv: using 4 buffers with 2080k (8320k total) for capture
bttv: Host bridge is Intel Corp. 440BX/ZX/DX - 82443BX/ZX/DX Host bridge
bttv: Host bridge needs ETBF enabled.
bttv: Bt8xx card found (0).
PCI: Found IRQ 5 for device 00:09.0
PCI: Sharing IRQ 5 with 00:07.2
PCI: Sharing IRQ 5 with 00:09.1
bttv0: Bt878 (rev 17) at 00:09.0, irq: 5, latency: 32, mmio: 0xdb002000
bttv0: detected: AVerMedia TVPhone98 [card=41], PCI subsystem ID is 1461:0003
bttv0: using: BT878(AVerMedia TVPhone 98) [card=41,autodetected]
bttv0: enabling ETBF (430FX/VP3 compatibilty)
i2c-core.o: adapter bt848 #0 registered as adapter 0.
bttv0: Avermedia eeprom[0x4803]: tuner=2 radio:yes remote control:yes
bttv0: using tuner=2
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 @ 0xc2
bttv0: i2c attach [client=Philips NTSC (FI1236 and compati,ok]
i2c-core.o: client [Philips NTSC (FI1236 and compati] registered to adapter [bt848 #0](pos. 0).
bttv0: registered device video0
bttv0: registered device vbi0
bttv0: registered device radio0
cat /proc/pci:
PCI devices found:
Bus 0, device 0, function 0:
Host bridge: Intel Corp. 440BX/ZX/DX - 82443BX/ZX/DX Host bridge (rev 2).
Prefetchable 32 bit memory at 0xc0000000 [0xcfffffff].
Bus 0, device 1, function 0:
PCI bridge: Intel Corp. 440BX/ZX/DX - 82443BX/ZX/DX AGP bridge (rev 2).
Master Capable. No bursts. Min Gnt=136.
Bus 0, device 7, function 0:
ISA bridge: Intel Corp. 82371AB/EB/MB PIIX4 ISA (rev 2).
Bus 0, device 7, function 1:
IDE interface: Intel Corp. 82371AB/EB/MB PIIX4 IDE (rev 1).
I/O at 0xf000 [0xf00f].
Bus 0, device 7, function 2:
USB Controller: Intel Corp. 82371AB/EB/MB PIIX4 USB (rev 1).
IRQ 5.
I/O at 0xd000 [0xd01f].
Bus 0, device 7, function 3:
Bridge: Intel Corp. 82371AB/EB/MB PIIX4 ACPI (rev 2).
IRQ 9.
Bus 0, device 9, function 0:
Multimedia video controller: Brooktree Corporation Bt878 Video Capture (rev 17).
IRQ 5.
Master Capable. Latency=32. Min Gnt=16.Max Lat=40.
Prefetchable 32 bit memory at 0xdb002000 [0xdb002fff].
Bus 0, device 9, function 1:
Multimedia controller: Brooktree Corporation Bt878 Audio Capture (rev 17).
IRQ 5.
Master Capable. Latency=32. Min Gnt=4.Max Lat=255.
Prefetchable 32 bit memory at 0xdb000000 [0xdb000fff].
Bus 0, device 11, function 0:
Multimedia audio controller: Creative Labs SB Live! EMU10k1 (rev 4).
IRQ 12.
Master Capable. No bursts. Min Gnt=2.Max Lat=20.
I/O at 0xd400 [0xd41f].
Bus 0, device 11, function 1:
Input device controller: Creative Labs SB Live! MIDI/Game Port (rev 1).
I/O at 0xd800 [0xd807].
Bus 0, device 13, function 0:
SCSI storage controller: Adaptec AHA-2940U/UW/D / AIC-7881U (rev 0).
IRQ 10.
Master Capable. Latency=8. Min Gnt=8.Max Lat=8.
I/O at 0xdc00 [0xdcff].
Non-prefetchable 32 bit memory at 0xdb001000 [0xdb001fff].
Bus 0, device 15, function 0:
Ethernet controller: 3Com Corporation 3c905C-TX/TX-M [Tornado] (rev 48).
IRQ 11.
Master Capable. Latency=8. Min Gnt=10.Max Lat=10.
I/O at 0xe000 [0xe07f].
Non-prefetchable 32 bit memory at 0xdb003000 [0xdb00307f].
Bus 1, device 0, function 0:
VGA compatible controller: nVidia Corporation NV11 [GeForce2 MX] (rev 161).
IRQ 11.
Master Capable. Latency=248. Min Gnt=5.Max Lat=1.
Non-prefetchable 32 bit memory at 0xd8000000 [0xd8ffffff].
Prefetchable 32 bit memory at 0xd0000000 [0xd7ffffff].