[mythtvnz] Win-TV Nova-S card not working

Vance McIndoe vance at juniper.net
Sat Jan 9 23:29:46 GMT 2010


Hi guys.  Happy New Year - I've been away for a week and a bit, and got
back to find my system still broken (okay no surprise there - just
wishful thinking).  Even with a Kernel upgrade and 119 package
update's...... So there was a suggestion that IRQ sharing was bad, and
dmesg reports this sharing is happening.  

vance at mythbuntu:~$ cat /proc/interrupts | egrep "20:|^    "
           CPU0       CPU1
 20:         16      57700   IO-APIC-fasteoi   cx88[0], cx88[0], cx88[0]

I think the interrupt is shared (three entries) since there are multiple
PCI devices on that card (this from lspci -v):

03:06.0 Multimedia video controller: Conexant Systems, Inc.
CX23880/1/2/3 PCI Video and Audio Decoder (rev 05)
        Subsystem: Hauppauge computer works Inc. Device 9202
        Flags: bus master, medium devsel, latency 32, IRQ 20
        Memory at f9000000 (32-bit, non-prefetchable) [size=16M]
        Capabilities: [44] Vital Product Data <?>
        Capabilities: [4c] Power Management version 2
        Kernel driver in use: cx8800
        Kernel modules: cx8800

03:06.1 Multimedia controller: Conexant Systems, Inc. CX23880/1/2/3 PCI
Video and Audio Decoder [Audio Port] (rev 05)
        Subsystem: Hauppauge computer works Inc. Device 9202
        Flags: bus master, medium devsel, latency 32, IRQ 20
        Memory at f8000000 (32-bit, non-prefetchable) [size=16M]
        Capabilities: [4c] Power Management version 2
        Kernel driver in use: cx88_audio
        Kernel modules: cx88-alsa

03:06.2 Multimedia controller: Conexant Systems, Inc. CX23880/1/2/3 PCI
Video and Audio Decoder [MPEG Port] (rev 05)
        Subsystem: Hauppauge computer works Inc. Device 9202
        Flags: bus master, medium devsel, latency 32, IRQ 20
        Memory at fb000000 (32-bit, non-prefetchable) [size=16M]
        Capabilities: [4c] Power Management version 2
        Kernel driver in use: cx88-mpeg driver manager
        Kernel modules: cx8802

03:06.4 Multimedia controller: Conexant Systems, Inc. CX23880/1/2/3 PCI
Video and Audio Decoder [IR Port] (rev 05)
        Subsystem: Hauppauge computer works Inc. Device 9202
        Flags: bus master, medium devsel, latency 32, IRQ 5
        Memory at fa000000 (32-bit, non-prefetchable) [size=16M]
        Capabilities: [4c] Power Management version 2

So, assuming this is no problem, what am I missing to get my card
registered (and get /dev/dvb created)? Specific tweaks I've tried are
adding the following entry to /etc/modprobe.d/dvb.conf

vance at mythbuntu:/etc/modprobe.d$ cat dvb.conf
# Hauppauge Nova-S-Plus DVB-S
options cx88-dvb adapter_nr=0,1

(I have no options.conf or alias.conf - and assuming I don't need
them?).  And I've added an entry to udev, with a script in an attempt to
get /dev/dvb/ created.

vance at mythbuntu:/etc/udev$ cat rules.d/10-dvb.rules
# DVB Support
KERNEL=="dvb*", PROGRAM="/etc/udev/scripts/dvb.sh %k", NAME="%c",
GROUP="video", MODE="0660"

vance at mythbuntu:/etc/udev$ cat scripts/dvb.sh
#!/bin/sh
/usr/bin/touch /tmp/dvb.sh.executed
/bin/mkdir -p /dev/dvb
/bin/echo $1 | /bin/sed -e
's,dvb\([0-9]\)\.\([^0-9]*\)\([0-9]\),dvb/adapter\1/\2\3,'

As you can see, the script includes a touch command to create a file in
/tmp directory if it runs, but I've never seen it created, so guessing
either udev isn't being invoked for the card, or the match criteria is
wrong (/dev/dvb never get's created either).  dmesg output follows
(showing the register failure at the bottom).

vance at mythbuntu:/etc/udev$ dmesg | grep -i cx
[    7.737948] cx2388x alsa driver version 0.0.7 loaded
[    7.738221] cx88_audio 0000:03:06.1: PCI INT A -> GSI 20 (level, low)
-> IRQ 20
[    7.738730] cx88[0]: subsystem: 0070:9202, board: Hauppauge
Nova-S-Plus DVB-S [card=37,autodetected], frontend(s): 1
[    7.738732] cx88[0]: TV tuner type 4, Radio tuner type -1
[    7.739820] cx88/2: cx2388x MPEG-TS Driver Manager version 0.0.7
loaded
[    7.744559] cx88/0: cx2388x v4l2 driver version 0.0.7 loaded
[    7.908499] tveeprom 0-0050: tuner model is Conexant_CX24109 (idx
111, type 4)
[    7.908503] tveeprom 0-0050: audio processor is CX883 (idx 32)
[    7.908505] tveeprom 0-0050: decoder processor is CX883 (idx 22)
[    7.908509] cx88[0]: hauppauge eeprom: model=92001
[    7.908711] input: cx88 IR (Hauppauge Nova-S-Plus  as
/devices/pci0000:00/0000:00:14.4/0000:03:06.1/input/input7
[    7.908749] IRQ 20/cx88[0]: IRQF_DISABLED is not guaranteed on shared
IRQs
[    7.908785] cx88[0]/1: CX88x/0: ALSA support for cx2388x boards
[    7.910999] cx88[0]/2: cx2388x 8802 Driver Manager
[    7.911016] cx88-mpeg driver manager 0000:03:06.2: PCI INT A -> GSI
20 (level, low) -> IRQ 20
[    7.911026] cx88[0]/2: found at 0000:03:06.2, rev: 5, irq: 20,
latency: 32, mmio: 0xfb000000
[    7.911032] IRQ 20/cx88[0]: IRQF_DISABLED is not guaranteed on shared
IRQs
[    7.912661] cx8800 0000:03:06.0: PCI INT A -> GSI 20 (level, low) ->
IRQ 20
[    7.912668] cx88[0]/0: found at 0000:03:06.0, rev: 5, irq: 20,
latency: 32, mmio: 0xf9000000
[    7.912680] IRQ 20/cx88[0]: IRQF_DISABLED is not guaranteed on shared
IRQs
[    7.912740] cx88[0]/0: registered device video0 [v4l2]
[    7.912758] cx88[0]/0: registered device vbi0
[    7.984289] cx88/2: cx2388x dvb driver version 0.0.7 loaded
[    7.984292] cx88/2: registering cx8802 driver, type: dvb access:
shared
[    7.984295] cx88[0]/2: subsystem: 0070:9202, board: Hauppauge
Nova-S-Plus DVB-S [card=37]
[    7.984298] cx88[0]/2: cx2388x based DVB/ATSC card
[    7.984299] cx8802_alloc_frontends() allocating 1 frontend(s)
[    8.097343] CX24123: detected CX24123
[    8.140629] cx88[0]/2: dvb_register failed (err = -22)
[    8.140632] cx88[0]/2: cx8802 probe failed, err = -22

And if I run:
sudo modprobe cx88-dvb

I get:
FATAL: Error inserting cx88_dvb
(/lib/modules/2.6.31-17-generic/kernel/drivers/media/video/cx88/cx88-dvb
.ko): No such device

and that causes the last eight lines of the dmesg (above) are sent to
kern.log again.

I posted here as this looks the same as this bug
(https://bugs.launchpad.net/ubuntu/+source/linux/+bug/458304), but since
others have this working, I'm sure it must be config or drivers.

Vance





More information about the mythtvnz mailing list