# DVB Card : Hauppauge HVR3000 (solved)

## Fenril

Hi,

I have difficulties to install drivers for my DVB-S/T card, Hauppauge HVR3000. According to LinuxTV.org, i have to install cx8800 module. However, i haven't found it in kernel option. I can find module source in drivers/media/video/cx88/, but no option to activate it in .config. So what's wrong ?

My kernel config, on gentoo-sources stable branch (2.6.39-r3) :

http://pastebin.com/diYZ6YRmLast edited by Fenril on Wed Oct 19, 2011 6:15 pm; edited 3 times in total

----------

## Fenril

OK, i've found here : http://cateee.net/lkddb/web-lkddb/VIDEO_CX88.html

I'ill have to activate "remote controller adapters" (CONFIG_RC_CORE), then it appears in "Video capture adapters" submenu "Conexant 2388x (bt878 successor) support".

----------

## Fenril

Sorry, i reopen because it doesn't work. I have compiled the modules, and one of them fails to load, it's cx88-dvb :

Trying modprobe :

```
# modprobe cx88-dvb

FATAL: Error inserting cx88_dvb (/lib/modules/2.6.39-gentoo-r3/kernel/drivers/media/video/cx88/cx88-dvb.ko): No such device
```

lsmod :

```
# lsmod

Module                  Size  Used by

dvb_pll                10082  0 

snd_seq_dummy           1566  0 

snd_seq_oss            24977  0 

snd_seq_midi_event      5756  1 snd_seq_oss

snd_seq                46057  5 snd_seq_dummy,snd_seq_oss,snd_seq_midi_event

snd_seq_device          5533  3 snd_seq_dummy,snd_seq_oss,snd_seq

snd_pcm_oss            30826  0 

snd_mixer_oss          12950  1 snd_pcm_oss

nvidia              11969077  30 

cx24123                12761  0 

videobuf_dvb            5002  0 

dvb_core               87466  1 videobuf_dvb

wm8775                  3735  1 

rc_hauppauge            1996  0 

ir_lirc_codec           3994  0 

lirc_dev                9928  1 ir_lirc_codec

ir_sony_decoder         2029  0 

tuner                  16340  2 

ir_jvc_decoder          2122  0 

ir_rc6_decoder          2667  0 

cx8802                 12438  0 

cx88_alsa               9532  1 

cx8800                 28833  0 

ir_rc5_decoder          2042  0 

ir_nec_decoder          2490  0 

cx88xx                 73230  3 cx8802,cx8800,cx88_alsa

rc_core                16254  9 rc_hauppauge,ir_lirc_codec,ir_sony_decoder,ir_jvc_decoder,ir_rc6_decoder,ir_rc5_decoder,ir_nec_decoder,cx88xx

i2c_algo_bit            4756  1 cx88xx

tveeprom               13017  1 cx88xx

v4l2_common             6569  4 wm8775,tuner,cx8800,cx88xx

snd_intel8x0           27228  1 

snd_ac97_codec        110952  1 snd_intel8x0

ac97_bus                1202  1 snd_ac97_codec

videodev               72540  5 wm8775,tuner,cx8800,cx88xx,v4l2_common

videobuf_dma_sg         7959  4 cx8802,cx8800,cx88_alsa,cx88xx

v4l2_compat_ioctl32     6662  1 videodev

rt61pci                19546  0 

rt2x00pci               5207  1 rt61pci

rt2x00lib              28991  2 rt61pci,rt2x00pci

snd_pcm                65101  4 snd_pcm_oss,cx88_alsa,snd_intel8x0,snd_ac97_codec

parport_pc             27097  0 

videobuf_core          15722  5 videobuf_dvb,cx8802,cx8800,cx88xx,videobuf_dma_sg

btcx_risc               3514  4 cx8802,cx8800,cx88_alsa,cx88xx

mac80211              157045  2 rt2x00pci,rt2x00lib

snd_timer              18101  2 snd_seq,snd_pcm

parport                30436  1 parport_pc

cfg80211              137321  2 rt2x00lib,mac80211

k8temp                  3507  0 

snd_page_alloc          7021  2 snd_intel8x0,snd_pcm

eeprom_93cx6            1472  1 rt61pci

hwmon                   1734  1 k8temp
```

dmesg :

```
# dmesg | grep cx

[    5.737946] cx88/0: cx2388x v4l2 driver version 0.0.8 loaded

[    5.737984] cx8800 0000:02:09.0: PCI INT A -> Link[APC4] -> GSI 19 (level, low) -> IRQ 19

[    5.738166] cx2388x alsa driver version 0.0.8 loaded

[    5.739988] cx88[0]: subsystem: 0070:1402, board: Hauppauge WinTV-HVR3000 TriMode Analog/DVB-S/DVB-T [card=53,autodetected], frontend(s): 2

[    5.739993] cx88[0]: TV tuner type 63, Radio tuner type -1

[    5.820954] cx88/2: cx2388x MPEG-TS Driver Manager version 0.0.8 loaded

[    5.853166] cx88[0]: i2c init: enabling analog demod on HVR1300/3000/4000 tuner

[    6.023315] cx88[0]: hauppauge eeprom: model=14109

[    6.076149] input: cx88 IR (Hauppauge WinTV-HVR300 as /devices/pci0000:00/0000:00:0e.0/0000:02:09.0/rc/rc0/input4

[    6.076188] rc0: cx88 IR (Hauppauge WinTV-HVR300 as /devices/pci0000:00/0000:00:0e.0/0000:02:09.0/rc/rc0

[    6.076314] rc rc0: lirc_dev: driver ir-lirc-codec (cx88xx) registered at minor = 0

[    6.076321] cx88[0]/0: found at 0000:02:09.0, rev: 5, irq: 19, latency: 20, mmio: 0xfb000000

[    6.104256] wm8775 2-001b: chip found @ 0x36 (cx88[0])

[    6.116129] cx88[0]/0: registered device video0 [v4l2]

[    6.116187] cx88[0]/0: registered device vbi0

[    6.116232] cx88[0]/0: registered device radio0

[    6.116308] cx88_audio 0000:02:09.1: PCI INT A -> Link[APC4] -> GSI 19 (level, low) -> IRQ 19

[    6.116316] cx88_audio 0000:02:09.1: setting latency timer to 64

[    6.116337] cx88[0]/1: CX88x/0: ALSA support for cx2388x boards

[    6.116793] cx88[0]/2: cx2388x 8802 Driver Manager

[    6.116804] cx88-mpeg driver manager 0000:02:09.2: PCI INT A -> Link[APC4] -> GSI 19 (level, low) -> IRQ 19

[    6.116809] cx88-mpeg driver manager 0000:02:09.2: setting latency timer to 64

[    6.116815] cx88[0]/2: found at 0000:02:09.2, rev: 5, irq: 19, latency: 64, mmio: 0xf9000000

[    6.222486] cx88/2: cx2388x dvb driver version 0.0.8 loaded

[    6.222490] cx88/2: registering cx8802 driver, type: dvb access: shared

[    6.222495] cx88[0]/2: subsystem: 0070:1402, board: Hauppauge WinTV-HVR3000 TriMode Analog/DVB-S/DVB-T [card=53]

[    6.222499] cx88[0]/2: cx2388x based DVB/ATSC card

[    6.222501] cx8802_alloc_frontends() allocating 2 frontend(s)

[    6.251110] cx88[0]/2: dvb_register failed (err = -22)

[    6.251113] cx88[0]/2: cx8802 probe failed, err = -22

[ 2062.959158] cx88/2: cx2388x dvb driver version 0.0.8 loaded

[ 2062.959163] cx88/2: registering cx8802 driver, type: dvb access: shared

[ 2062.959168] cx88[0]/2: subsystem: 0070:1402, board: Hauppauge WinTV-HVR3000 TriMode Analog/DVB-S/DVB-T [card=53]

[ 2062.959172] cx88[0]/2: cx2388x based DVB/ATSC card

[ 2062.959174] cx8802_alloc_frontends() allocating 2 frontend(s)

[ 2062.961545] cx88[0]/2: dvb_register failed (err = -22)

[ 2062.961548] cx88[0]/2: cx8802 probe failed, err = -22

[ 2446.839387] cx88/2: cx2388x dvb driver version 0.0.8 loaded

[ 2446.839393] cx88/2: registering cx8802 driver, type: dvb access: shared

[ 2446.839397] cx88[0]/2: subsystem: 0070:1402, board: Hauppauge WinTV-HVR3000 TriMode Analog/DVB-S/DVB-T [card=53]

[ 2446.839402] cx88[0]/2: cx2388x based DVB/ATSC card

[ 2446.839404] cx8802_alloc_frontends() allocating 2 frontend(s)

[ 2446.841991] cx88[0]/2: dvb_register failed (err = -22)

[ 2446.841994] cx88[0]/2: cx8802 probe failed, err = -22
```

Thanks for help.

----------

## whig

In my pvr setup I load some modules in this order,

```
modules="${modules} v4l2_common videodev cx88xx cx22702 tuner cx8800 cx8802 cx88_alsa cx88_dvb"
```

----------

## Fenril

whig,

Thanks for your help.

I have loaded some modules like you :

```
Module                  Size  Used by

cx22702                 4487  0 

cx88_alsa               9532  0 

dvb_pll                10082  0 

cx24123                12761  0 

rc_hauppauge            1996  0 

tuner_simple           11498  1 

tuner_types            18635  1 tuner_simple

tda9887                 9177  1 

tuner                  16340  2 

cx8802                 12438  0 

ir_lirc_codec           3994  0 

videobuf_dvb            5002  0 

lirc_dev                9928  1 ir_lirc_codec

cx88xx                 73230  2 cx88_alsa,cx8802

rc_core                16078  4 rc_hauppauge,ir_lirc_codec,cx88xx

i2c_algo_bit            4756  1 cx88xx

videobuf_dma_sg         7959  3 cx88_alsa,cx8802,cx88xx

videobuf_core          15722  4 cx8802,videobuf_dvb,cx88xx,videobuf_dma_sg

btcx_risc               3514  3 cx88_alsa,cx8802,cx88xx

tveeprom               13017  1 cx88xx

v4l2_common             6569  2 tuner,cx88xx

videodev               72540  3 tuner,cx88xx,v4l2_common

v4l2_compat_ioctl32     6662  1 videodev

dvb_core               87466  1 videobuf_dvb

nvidia              11969077  30 

snd_seq_dummy           1566  0 

snd_seq_oss            24977  0 

snd_seq_midi_event      5756  1 snd_seq_oss

snd_seq                46057  5 snd_seq_dummy,snd_seq_oss,snd_seq_midi_event

snd_seq_device          5533  3 snd_seq_dummy,snd_seq_oss,snd_seq

snd_pcm_oss            30826  0 

snd_mixer_oss          12950  1 snd_pcm_oss

parport_pc             27097  0 

rt61pci                19546  0 

rt2x00pci               5207  1 rt61pci

rt2x00lib              28991  2 rt61pci,rt2x00pci

mac80211              157045  2 rt2x00pci,rt2x00lib

snd_intel8x0           27228  1 

snd_ac97_codec        110952  1 snd_intel8x0

ac97_bus                1202  1 snd_ac97_codec

snd_pcm                65101  4 cx88_alsa,snd_pcm_oss,snd_intel8x0,snd_ac97_codec

cfg80211              137321  2 rt2x00lib,mac80211

snd_timer              18101  2 snd_seq,snd_pcm

parport                30436  1 parport_pc

eeprom_93cx6            1472  1 rt61pci

snd_page_alloc          7021  2 snd_intel8x0,snd_pcm

k8temp                  3507  0 

hwmon                   1734  1 k8temp
```

But no luck, still the same problem with cx88-dvb.

In fact, I just realize there's an incredible lack of support for multimedia/tv card support. On linuxtv, there's a bit lazy update for drivers, and it has a sporadic activities, poor documentations. I know, it's quite difficult, i'm not criticizing, but it's an unfortunate constatation.

----------

## whig

You have modules loaded, but are they loaded in the right order? One of the readme files (forgotten which) stipulates the modules have to be loaded in the right order for them to work. A reboot is the easiest way to start fresh.

----------

## Fenril

My lsmod output is from a fresh reboot, modules are automatically loaded as expected with recent kernel behaviour, it just misses cx22702. So does it load in a right order ? I don't know. So i have to blacklist and then loaded with a script modules ? Strange. The only one i can't load is cx88-dvb.

----------

## whig

The automatic loading order is/can be wrong. Add this to /etc/conf.d/modules

```
modules="${modules} v4l2_common videodev cx88xx cx22702 tuner cx8800 cx8802 cx88_alsa cx88_dvb"
```

This page has a different load order for an old version of source code. Either way the order matters. I'm not a dev to explain why...

----------

## Fenril

OK, after putting :

```
modules="${modules} v4l2_common videodev cx88xx cx22702 tuner cx8800 cx8802 cx88_alsa cx88_dvb"
```

in /etc/conf.d/modules, same error. It was that i thought at begining : i think it's a bug driver. Maybe i have to contact developers.

OK, in a complete kernel log, i have a bit more information :

```
DVB: Unable to find symbol isl6421_attach()
```

I'ill try to find a module called is6421.

----------

## Fenril

Bingo !

That was ! So, i sum up for Hauppauge HVR3000 for those who eventually need infos, we don't know :

v4l2_common

videodev

cx88xx

cx22702

isl6421 <-- it was missing for me at the begining

tuner

cx8800

cx8802

cx88_alsa

cx88_dvb

rc_core <-- for remote

Thanks whig for your patience.

----------

## Jaglover

Good job, Fenril!

Thanks for posting the solution.  :Smile: 

----------

