Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 99921 - ivtv-0.2.0_rc3-r5 insists my card is a PVR-150 when I know it's a PVR-250
Summary: ivtv-0.2.0_rc3-r5 insists my card is a PVR-150 when I know it's a PVR-250
Status: RESOLVED LATER
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: x86 Linux
: High normal
Assignee: Television related Applications in Gentoo's Portage
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-07-22 08:50 UTC by Gregg Casillo
Modified: 2005-11-21 10:49 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Gregg Casillo 2005-07-22 08:50:05 UTC
This is happening on just one of my three IVTV/PVR-250 encoder boxes at work.
All are running gentoo-sources-2.6.12-r4 and ivtv-0.2.0_rc3-r5. Two boxes work
fine; the ivtv module loads normally and recognizes the Hauppauge cards in them
as PVR-250. However, one just simply refuses to recognize the card in it as a
PVR-250 and dmesg reports that it is a PVR-150.

Here's the relevant output from lspci:
0000:03:03.0 Multimedia video controller: Internext Compression Inc iTVC16
(CX23416) MPEG-2 Encoder (rev 01)

Here's a different encoder's lspci output (one that works):
0000:03:03.0 Multimedia video controller: Internext Compression Inc iTVC16
(CX23416) MPEG-2 Encoder (rev 01)

So I know the cards are the same. Here's the relevant dmesg output from the box
that does NOT work:
ivtv: ==================== START INIT IVTV ====================
ivtv: version 0.2.0 (rc3j) loading
ivtv: Linux version: 2.6.12-gentoo-r4 SMP preempt PENTIUM4 gcc-3.4
ivtv: In case of problems please include the debug info
ivtv: between the START INIT IVTV and END INIT IVTV lines when
ivtv: mailing the ivtv-devel mailinglist.
ivtv: Unknown card: vendor/device: 4444/0016, subsystem vendor/device: 0070/0009
ivtv: Defaulting to WinTV PVR 150 card
ivtv: Please mail the vendor/device and subsystem vendor/device IDs and what kind of
ivtv: card you have to the ivtv-devel mailinglist:
http://sourceforge.net/projects/ivtv
ivtv: Prefix your subject line with [UNKNOWN CARD].
ivtv: Found an iTVC16 based chip
ACPI: PCI Interrupt 0000:03:03.0[A] -> GSI 19 (level, low) -> IRQ 19
ivtv: XXX PCI device: 0x2570 vendor: 0x8086
msp34xx: ivtv version
msp34xx: init: chip=MSP3435G-B6, has NICAM support, simpler (G) no-thread mode
msp34xx: $Id$ compiled on: Jul 22 2005 11:24:35
ivtv: i2c attach [client=MSP3435G-B6,ok]
saa7115: starting probe for adapter ivtv i2c driver #0 (0x10005)
saa7115: detecting saa7115 client on address 0x42
saa7115: writing init values
ivtv: i2c attach [client=saa7115,ok]
saa7115: status: (1E) 0x48, (1F) 0xc0
ivtv: i2c attach [client=(tuner unset),ok]
tuner 0-0061: chip found @ 0xc2 (ivtv i2c driver #0)
tveeprom: Hauppauge: model = 32031, rev = B210, serial# = 6152431
tveeprom: tuner = Philips FI1236 MK2 (idx = 10, type = 2)
tveeprom: tuner fmt = NTSC(M) (eeprom = 0x08, v4l2 = 0x00001000)
tveeprom: audio_processor = MSP3435 (type = 10)
ivtv: i2c attach [client=tveeprom,ok]
ivtv: Tuner Type 2, Tuner formats 0x00001000, Radio: yes, Model 0x00892450,
Revision 0x00000000
ivtv: NTSC tuner detected
ivtv: Radio detected
ivtv: Failed to load module cx25840
ivtv: Failed to load module wm8775
ivtv: Encoder revision: 0x02040024
ivtv: Encoder Firmware may be buggy, use version 0x02040011
ivtv: Configuring WinTV PVR 150 card with 5 streams
ivtv: Create DMA stream 0 using 256 16384 byte buffers  4194304 kbytes total
ivtv: Registered v4l2 device, streamtype 0 minor 0
ivtv: Create DMA stream 1
ivtv: Registered v4l2 device, streamtype 1 minor 32
ivtv: Create stream 2 using 40 52224 byte buffers  2097152 kbytes total
ivtv: Registered v4l2 device, streamtype 2 minor 224
ivtv: Create DMA stream 3 using 455 4608 byte buffers  2097152 kbytes total
ivtv: Registered v4l2 device, streamtype 3 minor 24
ivtv: Create stream 4
ivtv: Registered v4l2 device, streamtype 4 minor 64
ivtv: Setting Tuner 2
tuner 0-0061: type set to 2 (Philips NTSC (FI1236,FM1236 and compatibles))
ivtv: i2c client addr: 0x44 not found!
ivtv: Switching standard to NTSC.
ivtv: i2c client addr: 0x44 not found!
ivtv: Initialized WinTV PVR 150, card #0
ivtv: ====================  END INIT IVTV  ====================


And the dmesg output from the box that DOES:
ivtv: ==================== START INIT IVTV ====================
ivtv: version 0.2.0 (rc3j) loading
ivtv: Linux version: 2.6.12-gentoo-r4 SMP preempt PENTIUM4 gcc-3.4
ivtv: In case of problems please include the debug info
ivtv: between the START INIT IVTV and END INIT IVTV lines when
ivtv: mailing the ivtv-devel mailinglist.
ivtv: Autodetected WinTV PVR 250 card
ivtv: Found an iTVC16 based chip
ACPI: PCI Interrupt 0000:03:03.0[A] -> GSI 19 (level, low) -> IRQ 19
ivtv: Unreasonably low latency timer, setting to 64 (was 32)
ivtv: XXX PCI device: 0x2570 vendor: 0x8086
tveeprom: Hauppauge: model = 32031, rev = B110, serial# = 6789647
tveeprom: tuner = Philips FI1236 MK2 (idx = 10, type = 2)
tveeprom: tuner fmt = NTSC(M) (eeprom = 0x08, v4l2 = 0x00001000)
tveeprom: audio_processor = MSP3435 (type = 10)
ivtv: i2c attach [client=tveeprom,ok]
ivtv: Tuner Type 2, Tuner formats 0x00001000, Radio: yes, Model 0x00891450,
Revision 0x00000000
ivtv: NTSC tuner detected
ivtv: Radio detected
ivtv: i2c attach [client=(tuner unset),ok]
tuner 0-0061: chip found @ 0xc2 (ivtv i2c driver #0)
saa7115: starting probe for adapter ivtv i2c driver #0 (0x10005)
saa7115: detecting saa7115 client on address 0x42
saa7115: writing init values
ivtv: i2c attach [client=saa7115,ok]
saa7115: status: (1E) 0x48, (1F) 0xc0
msp34xx: ivtv version
msp34xx: init: chip=MSP3435G-B6, has NICAM support, simple (D) mode, simpler (G)
no-thread mode
msp34xx: $Id$ compiled on: Jul 14 2005 14:38:06
ivtv: i2c attach [client=MSP3435G-B6,ok]
ivtv: Encoder revision: 0x02040024
ivtv: Encoder Firmware may be buggy, use version 0x02040011
ivtv: Configuring WinTV PVR 250 card with 5 streams
ivtv: Create DMA stream 0 using 256 16384 byte buffers  4194304 kbytes total
ivtv: Registered v4l2 device, streamtype 0 minor 0
ivtv: Create DMA stream 1
ivtv: Registered v4l2 device, streamtype 1 minor 32
ivtv: Create stream 2 using 40 52224 byte buffers  2097152 kbytes total
ivtv: Registered v4l2 device, streamtype 2 minor 224
ivtv: Create DMA stream 3 using 455 4608 byte buffers  2097152 kbytes total
ivtv: Registered v4l2 device, streamtype 3 minor 24
ivtv: Create stream 4
ivtv: Registered v4l2 device, streamtype 4 minor 64
ivtv: Setting Tuner 2
tuner 0-0061: type set to 2 (Philips NTSC (FI1236,FM1236 and compatibles))
saa7115: decoder set input (4)
saa7115: now setting Composite input
ivtv: ivtv_enc_thread: pid = 16287, itv = 0xf8980ea0
ivtv: Setting audio matrix to input 3, output 1
ivtv: Switching standard to NTSC.
saa7115: decoder set norm NTSC
saa7115: set audio: 0x01
ivtv: Initialized WinTV PVR 250, card #0
ivtv: ====================  END INIT IVTV  ====================


Here's the /etc/modules.d/ivtv I'm using on all my encoder boxes:
alias char-major-81 videodev
alias char-major-81-0 ivtv

The hardware, kernel versions, kernel configs, and Hauppauge PVR-250 cards are
identical. I'm at a loss to figure out why IVTV wants to set one up as a
PVR-150. Consequently, encodes fail and I get zero-length files.

Reproducible: Always
Steps to Reproduce:
1.
2.
3.
Comment 1 Brian Jackson (RETIRED) gentoo-dev 2005-07-22 14:27:07 UTC
You need a newer version of ivtv than is in portage. There likely won't be a
newer version in portage for a while. You'll have to install on your own.
Comment 2 Gregg Casillo 2005-07-22 16:16:33 UTC
Okay, cool. As long as I know what to do, I can manage. So this is a known issue
by the ivtv devs?
Comment 3 Gregg Casillo 2005-11-21 08:19:28 UTC
This continues to be a problem. I'm now using ivtv-0.4.0-r2 and
gentoo-sources-2.6.14-r2. Now, I'm hosed pretty badly, because there's nothing I
can fall back to that seems to work. I tried 0.2.0_rc3-r5, and it does not work.
It too thinks the cards are PVR-150s. I tried going back to
gentoo-sources-2.6.13-r5 (was running -r4 but it no longer shows in portage) and
installing either of the ivtv versions; no go. This particular encoder has two
PVR-250 cards in it that encode programs round the clock, and if it doesn't
work, I end up having to encode stuff from tapes. Not good.

Again, I was running gentoo-sources-2.6.13-r4 and (I believe) 0.4.0-r2 as
recently as last Thursday, and everything was working peachy. Could it be the
firmware that's fouling up?

Here's my dmesg output:

Linux video capture interface: v1.00
ivtv:  ==================== START INIT IVTV ====================
ivtv:  version 0.4.0 (tagged release) loading
ivtv:  Linux version: 2.6.14-gentoo-r2 SMP preempt PENTIUM4 gcc-3.4
ivtv:  In case of problems please include the debug info
ivtv:  between the START INIT IVTV and END INIT IVTV lines when
ivtv:  mailing the ivtv-devel mailinglist.
ivtv0: Autodetected WinTV PVR 150 card (iTVC16 based)
ACPI: PCI Interrupt 0000:03:00.0[A] -> GSI 21 (level, low) -> IRQ 17
ivtv0: Unreasonably low latency timer, setting to 64 (was 32)
tveeprom: ivtv version
tveeprom: Hauppauge: model = 32031, rev = B210, serial# = 6196120
tveeprom: tuner = Philips FI1236 MK2 (idx = 10, type = 2)
tveeprom: tuner fmt = NTSC(M) (eeprom = 0x08, v4l2 = 0x00001000)
tveeprom: audio processor = MSP3435 (type = a)
tveeprom: decoder processor = SAA7115 (type = 13)
ivtv0: i2c attach to card #0 ok [client=tveeprom, addr=50]
tuner (ivtv): chip found at addr 0xc2 i2c-bus ivtv i2c driver #0
ivtv0: i2c attach to card #0 ok [client=(tuner unset), addr=61]
ivtv0 warning: i2c client addr: 0x44 not found for command 0x400464c9!
ivtv0: loading /lib/modules/ivtv-fw-enc.bin
ivtv0: Encoder revision: 0x02050032
ivtv0: Allocate DMA encoder MPEG stream: 128 x 32768 buffers (4096KB total)
ivtv0: Allocate DMA encoder YUV stream: 194 x 10800 buffers (2048KB total)
ivtv0: Allocate DMA encoder VBI stream: 120 x 17472 buffers (2048KB total)
ivtv0: Allocate DMA encoder PCM audio stream: 455 x 4608 buffers (2048KB total)
tuner: type set to 2 (Philips NTSC (FI1236,FM1236 and compatibles)) by ivtv i2c
driver #0
ivtv0 warning: i2c client addr: 0x44 not found for command 0x40046403!
ivtv0 warning: i2c client addr: 0x44 not found for command 0x40046404!
ivtv0 warning: i2c client addr: 0x1b not found for command 0x40047764!
ivtv0 warning: i2c client addr: 0x44 not found for command 0x4004646e!
ivtv0 warning: i2c client addr: 0x44 not found for command 0x40046403!
ivtv0 warning: i2c client addr: 0x44 not found for command 0x80287610!
ivtv0 warning: i2c client addr: 0x44 not found for command 0x40287611!
ivtv0 warning: i2c client addr: 0x44 not found for command 0x40046406!
ivtv0 warning: i2c client addr: 0x1b not found for command 0x4004760f!
ivtv0 warning: i2c client addr: 0x44 not found for command 0x4004760f!
ivtv0 warning: i2c client addr: 0x44 not found for command 0x40046406!
ivtv0 warning: i2c client addr: 0x44 not found for command 0x80287610!
ivtv0 warning: i2c client addr: 0x44 not found for command 0x40287611!
ivtv0: Initialized WinTV PVR 150, card #0
ivtv:  ======================  NEXT CARD  ======================
ivtv1: Autodetected WinTV PVR 150 card (iTVC16 based)
ACPI: PCI Interrupt 0000:03:01.0[A] -> GSI 22 (level, low) -> IRQ 18
ivtv1: Unreasonably low latency timer, setting to 64 (was 32)
tveeprom: ivtv version
tveeprom: Hauppauge: model = 32031, rev = B110, serial# = 6151408
tveeprom: tuner = Philips FI1236 MK2 (idx = 10, type = 2)
tveeprom: tuner fmt = NTSC(M) (eeprom = 0x08, v4l2 = 0x00001000)
tveeprom: audio processor = MSP3435 (type = a)
tveeprom: decoder processor = SAA7115 (type = 13)
ivtv1: i2c attach to card #1 ok [client=tveeprom, addr=50]
tuner (ivtv): chip found at addr 0xc2 i2c-bus ivtv i2c driver #1
ivtv1: i2c attach to card #1 ok [client=(tuner unset), addr=61]
ivtv1 warning: i2c client addr: 0x44 not found for command 0x400464c9!
ivtv1: loading /lib/modules/ivtv-fw-enc.bin
ivtv1: Encoder revision: 0x02050032
ivtv1: Allocate DMA encoder MPEG stream: 128 x 32768 buffers (4096KB total)
ivtv1: Allocate DMA encoder YUV stream: 194 x 10800 buffers (2048KB total)
ivtv1: Allocate DMA encoder VBI stream: 120 x 17472 buffers (2048KB total)
ivtv1: Allocate DMA encoder PCM audio stream: 455 x 4608 buffers (2048KB total)
tuner: type set to 2 (Philips NTSC (FI1236,FM1236 and compatibles)) by ivtv i2c
driver #1
ivtv1 warning: i2c client addr: 0x44 not found for command 0x40046403!
ivtv1 warning: i2c client addr: 0x44 not found for command 0x40046404!
ivtv1 warning: i2c client addr: 0x1b not found for command 0x40047764!
ivtv1 warning: i2c client addr: 0x44 not found for command 0x4004646e!
ivtv1 warning: i2c client addr: 0x44 not found for command 0x40046403!
ivtv1 warning: i2c client addr: 0x44 not found for command 0x80287610!
ivtv1 warning: i2c client addr: 0x44 not found for command 0x40287611!
ivtv1 warning: i2c client addr: 0x44 not found for command 0x40046406!
ivtv1 warning: i2c client addr: 0x1b not found for command 0x4004760f!
ivtv1 warning: i2c client addr: 0x44 not found for command 0x4004760f!
ivtv1 warning: i2c client addr: 0x44 not found for command 0x40046406!
ivtv1 warning: i2c client addr: 0x44 not found for command 0x80287610!
ivtv1 warning: i2c client addr: 0x44 not found for command 0x40287611!
ivtv1: Initialized WinTV PVR 150, card #1
ivtv:  ====================  END INIT IVTV  ====================
Comment 4 Gregg Casillo 2005-11-21 10:49:01 UTC
Looks like a cold boot (turn power off for 10+ seconds) was needed per the
suggestion found here:
http://www.gossamer-threads.com/lists/ivtv/devel/22612?search_string=ivtv%3A%20i2c%20client%20addr%3A%200x21%20not%20found%20for%20command;#22612

Strange, but this worked for me. My cards are now correctly recognized as
PVR-250s. I'll make a mental note to power cycle my encoders whenever I update
to a new kernel or ivtv version.