Mailing List Archive

PVR-150 Driver Problem
I recently upgrade my mother board to a Biostar A880G+ and Linux
2.6-35.  My PVR-150 no longer works.  In going through the trouble
shooting guide, it appears to be a problem in loading the driver but
since I am no expert, I could use some insight as to what is going
wrong and how to fix it.


03:05.0 Multimedia video controller: Internext Compression Inc iTVC16
(CX23416) MPEG-2 Encoder (rev 01)
Subsystem: Hauppauge computer works Inc. WinTV PVR 150
Flags: bus master, medium devsel, latency 64, IRQ 20
Memory at f8000000 (32-bit, prefetchable) [size=64M]
Capabilities: <access denied>
Kernel driver in use: ivtv
Kernel modules: ivtv


[ 12.375774] ivtv: Start initialization, version 1.4.1
[ 12.375884] ivtv0: Initializing card 0
[ 12.375888] ivtv0: Autodetected Hauppauge card (cx23416 based)
[ 12.376222] alloc irq_desc for 20 on node 0
[ 12.376225] alloc kstat_irqs on node 0
[ 12.376231] ivtv 0000:03:05.0: PCI INT A -> GSI 20 (level, low) -> IRQ 20
[ 12.434953] tveeprom 0-0050: Hauppauge model 26552, rev B268, serial# 7826786
[ 12.434956] tveeprom 0-0050: tuner model is LG TAPE H001F MK3 (idx
68, type 47)
[ 12.434958] tveeprom 0-0050: TV standards NTSC(M) (eeprom 0x08)
[ 12.434960] tveeprom 0-0050: audio processor is CX25843 (idx 37)
[ 12.434961] tveeprom 0-0050: decoder processor is CX25843 (idx 30)
[ 12.434963] tveeprom 0-0050: has radio
[ 12.434964] ivtv0: Autodetected Hauppauge WinTV PVR-150
[ 12.462360] cx25840 0-0044: Unable to detect h/w, assuming cx23887
[ 12.463455] cx25840 0-0044: cx23887 A/V decoder found @ 0x88 (ivtv
i2c driver #0)
[ 12.815223] Slow work thread pool: Starting up
[ 12.815263] Slow work thread pool: Ready
[ 12.815315] FS-Cache: Loaded
[ 12.946698] tuner 0-0043: chip found @ 0x86 (ivtv i2c driver #0)
[ 13.199970] fglrx: module license 'Proprietary. (C) 2002 - ATI
Technologies, Starnberg, GERMANY' taints kernel.
[ 13.199973] Disabling lock debugging due to kernel taint
[ 13.212614] tda9887 0-0043: creating new instance
[ 13.212617] tda9887 0-0043: tda988[5/6/7] found
[ 13.216888] tuner 0-0061: chip found @ 0xc2 (ivtv i2c driver #0)
[ 13.225760] [fglrx] Maximum main memory to use for locked dma
buffers: 3552 MBytes.
[ 13.225799] [fglrx] vendor: 1002 device: 9715 count: 1
[ 13.226081] [fglrx] ioport: bar 1, base 0xd000, size: 0x100
[ 13.226094] pci 0000:01:05.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18
[ 13.226097] pci 0000:01:05.0: setting latency timer to 64
[ 13.226367] [fglrx] Kernel PAT support is enabled
[ 13.226384] [fglrx] module loaded - fglrx 8.78.30 [Sep 20 2010] with 1 minors
[ 13.538461] wm8775 0-001b: chip found @ 0x36 (ivtv i2c driver #0)
[ 13.714808] FS-Cache: Netfs 'nfs' registered for caching
[ 13.774718] HDA Intel 0000:00:14.2: PCI INT A -> GSI 16 (level,
low) -> IRQ 16
[ 13.795234] tuner-simple 0-0061: creating new instance
[ 13.795238] tuner-simple 0-0061: type set to 47 (LG NTSC (TAPE series))
[ 13.797905] ivtv0: Registered device video0 for encoder MPG (4096 kB)
[ 13.797922] ivtv0: Registered device video32 for encoder YUV (2048 kB)
[ 13.797939] ivtv0: Registered device vbi0 for encoder VBI (1024 kB)
[ 13.797954] ivtv0: Registered device video24 for encoder PCM (320 kB)
[ 13.797968] ivtv0: Registered device radio0 for encoder radio
[ 13.797969] ivtv0: Initialized card: Hauppauge WinTV PVR-150
[ 13.798034] ivtv: End initialization
[ 14.411589] Installing knfsd (copyright (C) 1996 okir@monad.swb.de).
[ 14.464778] hda_codec: ALC662 rev1: BIOS auto-probing.
[ 14.472447] HDA Intel 0000:01:05.1: PCI INT B -> GSI 19 (level,
low) -> IRQ 19
[ 14.472493] HDA Intel 0000:01:05.1: setting latency timer to 64
[ 14.605405] ivtv0: Loaded v4l-cx2341x-enc.fw firmware (376836 bytes)
[ 14.808323] type=1400 audit(1293990279.774:6): apparmor="STATUS"
operation="profile_replace" name="/sbin/dhclient3" pid=1079
comm="apparmor_parser"
[ 14.808523] type=1400 audit(1293990279.774:7): apparmor="STATUS"
operation="profile_replace"
name="/usr/lib/NetworkManager/nm-dhcp-client.action" pid=1079
comm="apparmor_parser"
[ 14.808633] type=1400 audit(1293990279.774:8): apparmor="STATUS"
operation="profile_replace"
name="/usr/lib/connman/scripts/dhclient-script" pid=1079
comm="apparmor_parser"
[ 14.810266] ivtv0: Encoder revision: 0x02060039
[ 14.810291] type=1400 audit(1293990279.774:9): apparmor="STATUS"
operation="profile_replace" name="/usr/sbin/ntpd" pid=1082
comm="apparmor_parser"
[ 14.930452] type=1400 audit(1293990279.894:10): apparmor="STATUS"
operation="profile_load" name="/usr/sbin/tcpdump" pid=1083
comm="apparmor_parser"
[ 14.933076] type=1400 audit(1293990279.904:11): apparmor="STATUS"
operation="profile_load" name="/usr/sbin/mysqld" pid=1081
comm="apparmor_parser"
[ 14.988118] cx25840 0-0044: firmware load i2c failure
[ 15.980292] svc: failed to register lockdv1 RPC service (errno 97).
[ 15.981728] NFSD: Using /var/lib/nfs/v4recovery as the NFSv4 state
recovery directory
[ 16.013350] NFSD: starting 90-second grace period
[ 17.311251] type=1400 audit(1293990282.284:12): apparmor="STATUS"
operation="profile_replace" name="/usr/sbin/mysqld" pid=1207
comm="apparmor_parser"
[ 17.473248] r8169 0000:02:00.0: eth0: link up
[ 17.473253] r8169 0000:02:00.0: eth0: link up
[ 25.626541] [fglrx] GART Table is not in FRAME_BUFFER range
[ 25.626659] [fglrx] Could not enable MSI; System prevented initialization
[ 25.627055] [fglrx] Firegl kernel thread PID: 1509
[ 25.627288] [fglrx] IRQ 18 Enabled
[ 27.984138] EXT4-fs (sda1): re-mounted. Opts: errors=remount-ro,commit=0
[ 28.270846] eth0: no IPv6 routers present
[ 29.112292] [fglrx] Gart USWC size:1160 M.
[ 29.112295] [fglrx] Gart cacheable size:459 M.
[ 29.112298] [fglrx] Reserved FB block: Shared offset:0, size:1000000
[ 29.112300] [fglrx] Reserved FB block: Unshared offset:fffb000, size:5000

_______________________________________________
ivtv-users mailing list
ivtv-users@ivtvdriver.org
http://ivtvdriver.org/mailman/listinfo/ivtv-users
Re: PVR-150 Driver Problem [ In reply to ]
On Sun, 2011-01-02 at 12:31 -0600, Bob Karschnia wrote:
> I recently upgrade my mother board to a Biostar A880G+ and Linux
> 2.6-35. My PVR-150 no longer works. In going through the trouble
> shooting guide, it appears to be a problem in loading the driver but
> since I am no expert, I could use some insight as to what is going
> wrong and how to fix it.
>
>
> 03:05.0 Multimedia video controller: Internext Compression Inc iTVC16
> (CX23416) MPEG-2 Encoder (rev 01)
> Subsystem: Hauppauge computer works Inc. WinTV PVR 150
> Flags: bus master, medium devsel, latency 64, IRQ 20
> Memory at f8000000 (32-bit, prefetchable) [size=64M]
> Capabilities: <access denied>
> Kernel driver in use: ivtv
> Kernel modules: ivtv
>
>
> [ 12.375774] ivtv: Start initialization, version 1.4.1
> [ 12.375884] ivtv0: Initializing card 0
> [ 12.375888] ivtv0: Autodetected Hauppauge card (cx23416 based)
> [ 12.376222] alloc irq_desc for 20 on node 0
> [ 12.376225] alloc kstat_irqs on node 0
> [ 12.376231] ivtv 0000:03:05.0: PCI INT A -> GSI 20 (level, low) -> IRQ 20
> [ 12.434953] tveeprom 0-0050: Hauppauge model 26552, rev B268, serial# 7826786
> [ 12.434956] tveeprom 0-0050: tuner model is LG TAPE H001F MK3 (idx
> 68, type 47)
> [ 12.434958] tveeprom 0-0050: TV standards NTSC(M) (eeprom 0x08)
> [ 12.434960] tveeprom 0-0050: audio processor is CX25843 (idx 37)
> [ 12.434961] tveeprom 0-0050: decoder processor is CX25843 (idx 30)
> [ 12.434963] tveeprom 0-0050: has radio
> [ 12.434964] ivtv0: Autodetected Hauppauge WinTV PVR-150
> [ 12.462360] cx25840 0-0044: Unable to detect h/w, assuming cx23887
^^^^^^^^^^^^^^^^^^^^
> [ 12.463455] cx25840 0-0044: cx23887 A/V decoder found @ 0x88 (ivtv
> i2c driver #0)

The CX25843 chip on your PVR-150 isn't responding properly.

The most likely cause is the CX25843 chip on your PVR-150 is no longer
working.

You can turn on some debugging as root to see what the cx25840 module is
reading as a device ID from the CX25843 chip:

# modprobe -r ivtv
# modprobe -r cx25840
# modprobe cx25840 debug=1
# modprobe ivtv debug=0x203
# dmesg

ivtv: Start initialization, version 1.4.1
ivtv0: Initializing card 0
ivtv0: Autodetected Hauppauge card (cx23416 based)
ivtv0: info: base addr: 0xc8000000
ivtv0: info: Enabling pci device
ivtv 0000:03:01.0: PCI INT A -> GSI 21 (level, low) -> IRQ 21
ivtv0: info: Bus Mastering Enabled.
ivtv0: info: 22 (rev 1) at 03:01.0, irq: 21, latency: 64, memory: 0xc8000000
ivtv0: info: attempting ioremap at 0xc8000000 len 0x00800000
ivtv0: info: attempting ioremap at 0xca000000 len 0x00010000
ivtv0: info: GPIO initial dir: 00000000 out: 00000000
ivtv0: info: activating i2c...
ivtv0: i2c: i2c init
ivtv0: i2c: setting scl and sda to 1
tveeprom 6-0050: Hauppauge model 26552, rev B268, serial# 8768144
tveeprom 6-0050: tuner model is LG TAPE H001F MK3 (idx 68, type 47)
tveeprom 6-0050: TV standards NTSC(M) (eeprom 0x08)
tveeprom 6-0050: audio processor is CX25843 (idx 37)
tveeprom 6-0050: decoder processor is CX25843 (idx 30)
tveeprom 6-0050: has radio
ivtv0: Autodetected Hauppauge WinTV PVR-150
ivtv0: info: NTSC tuner detected

cx25840 6-0044: detecting cx25840 client on address 0x88
cx25840 6-0044: device_id = 0x8433
cx25840 6-0044: cx25843-23 found @ 0x88 (ivtv i2c driver #0)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
The above lines are from a working PVR-150 with a good
CX25843 chip. The device id from the chip should be "0x8433"

tuner 6-0043: chip found @ 0x86 (ivtv i2c driver #0)
tda9887 6-0043: creating new instance
tda9887 6-0043: tda988[5/6/7] found
tuner 6-0061: chip found @ 0xc2 (ivtv i2c driver #0)
wm8775 6-001b: chip found @ 0x36 (ivtv i2c driver #0)
tuner-simple 6-0061: creating new instance
tuner-simple 6-0061: type set to 47 (LG NTSC (TAPE series))
IRQ 21/ivtv0: IRQF_DISABLED is not guaranteed on shared IRQs
ivtv0: info: Allocate DMA encoder MPG stream: 128 x 32768 buffers (4096kB total)
ivtv0: info: Allocate DMA encoder YUV stream: 64 x 32768 buffers (2048kB total)
ivtv0: info: Allocate DMA encoder VBI stream: 61 x 17472 buffers (1040kB total)
ivtv0: info: Allocate DMA encoder PCM stream: 72 x 4608 buffers (324kB total)
ivtv0: Registered device video2 for encoder MPG (4096 kB)
ivtv0: Registered device video34 for encoder YUV (2048 kB)
ivtv0: Registered device vbi2 for encoder VBI (1024 kB)
ivtv0: Registered device video26 for encoder PCM (320 kB)
ivtv0: Registered device radio2 for encoder radio
ivtv0: Initialized card: Hauppauge WinTV PVR-150
ivtv: End initialization
ivtv0: info: Preparing for firmware halt.
ivtv0: info: Stopping VDM
ivtv0: info: Stopping AO
ivtv0: info: pinging (?) APU
ivtv0: info: Stopping VPU
ivtv0: info: Resetting Hw Blocks
ivtv0: info: Stopping SPU
ivtv0: info: init Encoder SDRAM pre-charge
ivtv0: info: init Encoder SDRAM refresh to 1us
ivtv0: info: Sleeping for 600ms
ivtv0: info: Loading encoder image
ivtv 0000:03:01.0: firmware: requesting v4l-cx2341x-enc.fw
ivtv0: Loaded v4l-cx2341x-enc.fw firmware (376836 bytes)
ivtv0: info: Getting firmware version..
ivtv0: Encoder revision: 0x02060039

cx25840 6-0044: firmware: requesting v4l-cx25840.fw
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Look for this message when the device is first opened by HAL


> [ 12.815223] Slow work thread pool: Starting up
> [ 12.815263] Slow work thread pool: Ready
> [ 12.815315] FS-Cache: Loaded
> [ 12.946698] tuner 0-0043: chip found @ 0x86 (ivtv i2c driver #0)
> [ 13.199970] fglrx: module license 'Proprietary. (C) 2002 - ATI
> Technologies, Starnberg, GERMANY' taints kernel.
> [ 13.199973] Disabling lock debugging due to kernel taint
> [ 13.212614] tda9887 0-0043: creating new instance
> [ 13.212617] tda9887 0-0043: tda988[5/6/7] found
> [ 13.216888] tuner 0-0061: chip found @ 0xc2 (ivtv i2c driver #0)
> [ 13.225760] [fglrx] Maximum main memory to use for locked dma
> buffers: 3552 MBytes.
> [ 13.225799] [fglrx] vendor: 1002 device: 9715 count: 1
> [ 13.226081] [fglrx] ioport: bar 1, base 0xd000, size: 0x100
> [ 13.226094] pci 0000:01:05.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18
> [ 13.226097] pci 0000:01:05.0: setting latency timer to 64
> [ 13.226367] [fglrx] Kernel PAT support is enabled
> [ 13.226384] [fglrx] module loaded - fglrx 8.78.30 [Sep 20 2010] with 1 minors
> [ 13.538461] wm8775 0-001b: chip found @ 0x36 (ivtv i2c driver #0)
> [ 13.714808] FS-Cache: Netfs 'nfs' registered for caching
> [ 13.774718] HDA Intel 0000:00:14.2: PCI INT A -> GSI 16 (level,
> low) -> IRQ 16
> [ 13.795234] tuner-simple 0-0061: creating new instance
> [ 13.795238] tuner-simple 0-0061: type set to 47 (LG NTSC (TAPE series))
> [ 13.797905] ivtv0: Registered device video0 for encoder MPG (4096 kB)
> [ 13.797922] ivtv0: Registered device video32 for encoder YUV (2048 kB)
> [ 13.797939] ivtv0: Registered device vbi0 for encoder VBI (1024 kB)
> [ 13.797954] ivtv0: Registered device video24 for encoder PCM (320 kB)
> [ 13.797968] ivtv0: Registered device radio0 for encoder radio
> [ 13.797969] ivtv0: Initialized card: Hauppauge WinTV PVR-150
> [ 13.798034] ivtv: End initialization


You can try a few things to see if the PVR-150 card will work again:

1. Don't load proprietary drivers like the fglrx module listed in your
output above. If they accidentially corrupt the window into CX23416
memory space or register space, or corrupt ivtv internal data
structures, then things won't work.

or

2. Pull out *all* your PCI cards, blow the dust out of *all* the slots,
reinsert the cards, and test again.

or

3. Blacklist the ivtv module in /etc/modporbe.conf.d/, and modprobe the
ivtv module later after the boot sequence is complete. The PCI bus
register accesses for the I2C bus transactions may not be reliable on
that motherboard when the PCI bus is very busy.

or

4. Test with a Windows install on the machine.

or

5. Test the PVR-150 in another machine.

Regards,
Andy


_______________________________________________
ivtv-users mailing list
ivtv-users@ivtvdriver.org
http://ivtvdriver.org/mailman/listinfo/ivtv-users
Re: PVR-150 Driver Problem [ In reply to ]
On Sun, 2011-01-02 at 19:38 -0600, Bob Karschnia wrote:
> Per your recommendation, I modprobed the ivtv and cx25840 drivers in
> debug mode, below is the result.
>
> Based on this, it looks like the problem is still occurring even if I
> do it manually when the PCI bus isn't busy. It does not show the
> correct device id as your directions said.
> [14489.808510] cx25840 0-0044: detecting cx25840 client on address 0x88
> [14489.810650] cx25840 0-0044: device_id = 0x0000
> [14489.810653] cx25840 0-0044: cx25 0-21 found @ 0x88 (ivtv i2c driver #0)
>
>
> Any other thoughts on what to do from here?

> > The most likely cause is the CX25843 chip on your PVR-150 is no longer
> > working.

The CX25843 chip on your PVR-150 is most likely dead. All analog video
and audio processing goes through the CX25843 chip. If the CX25843 is
dead, then your PVR-150 is useless.

The list below had all my suggestions. If none of them result in the
PVR-150 working, then it is time to throw your broken PVR-150 in the
trash can.

> > You can try a few things to see if the PVR-150 card will work again:
> >
> > 1. Don't load proprietary drivers like the fglrx module listed in your
> > output above. If they accidentially corrupt the window into CX23416
> > memory space or register space, or corrupt ivtv internal data
> > structures, then things won't work.
> >
> > or
> >
> > 2. Pull out *all* your PCI cards, blow the dust out of *all* the slots,
> > reinsert the cards, and test again.
> >
> > or
> >
> > 3. Blacklist the ivtv module in /etc/modporbe.conf.d/, and modprobe the
> > ivtv module later after the boot sequence is complete. The PCI bus
> > register accesses for the I2C bus transactions may not be reliable on
> > that motherboard when the PCI bus is very busy.
> >
> > or
> >
> > 4. Test with a Windows install on the machine.
> >
> > or
> >
> > 5. Test the PVR-150 in another machine.

Regards,
Andy



_______________________________________________
ivtv-users mailing list
ivtv-users@ivtvdriver.org
http://ivtvdriver.org/mailman/listinfo/ivtv-users