# PCTV HD Pro USB Stick issues

## Bitstream

Trying to get a Pinnacle PCTV HD Pro USB Stick to work with kernel 2.6.30-gentoo-r5 and dmesg shows the following:

[39554.659823] usb usb2: usb resume

[39554.659832] ehci_hcd 0000:00:1d.7: resume root hub

[39554.679098] hub 2-0:1.0: hub_resume

[39554.679119] ehci_hcd 0000:00:1d.7: GetStatus port 1 status 001803 POWER sig=j CSC CONNECT

[39554.679130] hub 2-0:1.0: port 1: status 0501 change 0001

[39554.780153] hub 2-0:1.0: state 7 ports 6 chg 0002 evt 0000

[39554.780171] hub 2-0:1.0: port 1, status 0501, change 0000, 480 Mb/s

[39554.831367] ehci_hcd 0000:00:1d.7: port 1 high speed

[39554.831379] ehci_hcd 0000:00:1d.7: GetStatus port 1 status 001005 POWER sig=se0 PE CONNECT

[39554.882101] usb 2-1: new high speed USB device using ehci_hcd and address 7

[39554.933369] ehci_hcd 0000:00:1d.7: port 1 high speed

[39554.933380] ehci_hcd 0000:00:1d.7: GetStatus port 1 status 001005 POWER sig=se0 PE CONNECT

[39554.996550] usb 2-1: default language 0x0409

[39555.004326] usb 2-1: New USB device found, idVendor=2304, idProduct=0227

[39555.004334] usb 2-1: New USB device strings: Mfr=3, Product=1, SerialNumber=2

[39555.004341] usb 2-1: Product: PCTV 800e

[39555.004345] usb 2-1: Manufacturer: Pinnacle Systems

[39555.004351] usb 2-1: SerialNumber: 070501960069

[39555.004498] usb 2-1: uevent

[39555.004535] usb 2-1: usb_probe_device

[39555.004542] usb 2-1: configuration #1 chosen from 1 choice

[39555.004709] usb 2-1: adding 2-1:1.0 (config #1, interface 0)

[39555.004756] usb 2-1:1.0: uevent

[39555.004829] em28xx 2-1:1.0: usb_probe_interface

[39555.004836] em28xx 2-1:1.0: usb_probe_interface - got id

[39555.004845] em28xx: New device Pinnacle Systems PCTV 800e @ 480 Mbps (2304:0227, interface 0, class 0)

[39555.004856] em28xx #0: Identified as Pinnacle PCTV HD Pro Stick (card=17)

[39555.005040] em28xx #0: chip ID is em2882/em2883

[39555.006806] usb 2-1: uevent

[39555.147306] em28xx #0: i2c eeprom 00: 1a eb 67 95 04 23 27 02 d0 12 5c 03 8e 16 a4 1c

[39555.147331] em28xx #0: i2c eeprom 10: 6a 24 27 57 46 07 01 00 00 00 00 00 00 00 00 00

[39555.147353] em28xx #0: i2c eeprom 20: 46 00 01 00 f0 10 02 00 b8 00 00 00 5b 1c 00 00

[39555.147375] em28xx #0: i2c eeprom 30: 00 00 20 40 20 80 02 20 01 01 00 00 00 00 00 00

[39555.147397] em28xx #0: i2c eeprom 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

[39555.147419] em28xx #0: i2c eeprom 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

[39555.147441] em28xx #0: i2c eeprom 60: 00 00 00 00 00 00 00 00 00 00 24 03 50 00 69 00

[39555.147463] em28xx #0: i2c eeprom 70: 6e 00 6e 00 61 00 63 00 6c 00 65 00 20 00 53 00

[39555.147484] em28xx #0: i2c eeprom 80: 79 00 73 00 74 00 65 00 6d 00 73 00 00 00 16 03

[39555.147506] em28xx #0: i2c eeprom 90: 50 00 43 00 54 00 56 00 20 00 38 00 30 00 30 00

[39555.147528] em28xx #0: i2c eeprom a0: 65 00 00 00 1c 03 30 00 37 00 30 00 35 00 30 00

[39555.147550] em28xx #0: i2c eeprom b0: 31 00 39 00 36 00 30 00 30 00 36 00 39 00 00 00

[39555.147572] em28xx #0: i2c eeprom c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

[39555.147594] em28xx #0: i2c eeprom d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

[39555.147615] em28xx #0: i2c eeprom e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

[39555.147637] em28xx #0: i2c eeprom f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

[39555.147662] em28xx #0: EEPROM ID= 0x9567eb1a, EEPROM hash = 0x1fe5a8bf

[39555.147666] em28xx #0: EEPROM info:

[39555.147670] em28xx #0:	AC97 audio (5 sample rates)

[39555.147674] em28xx #0:	500mA max power

[39555.147680] em28xx #0:	Table at 0x27, strings=0x168e, 0x1ca4, 0x246a

[39555.151246] tvp5150 1-005c: chip found @ 0xb8 (em28xx #0)

[39555.156370] tuner 1-0061: chip found @ 0xc2 (em28xx #0)

[39555.156473] xc2028 1-0061: creating new instance

[39555.156479] xc2028 1-0061: type set to XCeive xc2028/xc3028 tuner

[39555.156494] i2c-adapter i2c-1: firmware: requesting xc3028-v27.fw

[39555.156511] ------------[ cut here ]------------

[39555.156524] WARNING: at fs/sysfs/dir.c:487 sysfs_add_one+0xcf/0xe6()

[39555.156529] Hardware name: 6459CTO

[39555.156533] sysfs: cannot create duplicate filename '/devices/pci0000:00/0000:00:1d.7/usb2/2-1/i2c-adapter/i2c-1/i2c-1'

[39555.156539] Modules linked in: vmnet vmblock vmci vmmon lgdt330x em28xx_dvb em28xx_alsa nvidia(P) snd_hda_codec_analog tuner tvp5150 iwl3945 sdhci_pci sdhci snd_hda_intel snd_hda_codec em28xx ir_common thinkpad_acpi videobuf_vmalloc videobuf_core tveeprom snd_hwdep

[39555.156585] Pid: 377, comm: khubd Tainted: P        W  2.6.30-gentoo-r5 #6

[39555.156590] Call Trace:

[39555.156601]  [<ffffffff81109240>] ? sysfs_add_one+0xcf/0xe6

[39555.156612]  [<ffffffff81038c6b>] warn_slowpath_common+0x77/0xa4

[39555.156621]  [<ffffffff81038d0d>] warn_slowpath_fmt+0x64/0x66

[39555.156629]  [<ffffffff81109169>] ? sysfs_pathname+0x37/0x3f

[39555.156637]  [<ffffffff81109169>] ? sysfs_pathname+0x37/0x3f

[39555.156645]  [<ffffffff81109169>] ? sysfs_pathname+0x37/0x3f

[39555.156654]  [<ffffffff81109169>] ? sysfs_pathname+0x37/0x3f

[39555.156661]  [<ffffffff81109240>] sysfs_add_one+0xcf/0xe6

[39555.156670]  [<ffffffff811097e6>] create_dir+0x58/0x87

[39555.156678]  [<ffffffff8110984d>] sysfs_create_dir+0x38/0x4f

[39555.156689]  [<ffffffff811fcb46>] ? kobject_get+0x1a/0x22

[39555.156697]  [<ffffffff811fcc8b>] kobject_add_internal+0xd5/0x195

[39555.156706]  [<ffffffff811fce23>] kobject_add_varg+0x41/0x4e

[39555.156714]  [<ffffffff811fcf35>] kobject_add+0x89/0x8b

[39555.156725]  [<ffffffff812b5441>] ? kzalloc+0xf/0x11

[39555.156735]  [<ffffffff810b597f>] ? __kmalloc+0x10d/0x11f

[39555.156743]  [<ffffffff812b5441>] ? kzalloc+0xf/0x11

[39555.156751]  [<ffffffff811fcb46>] ? kobject_get+0x1a/0x22

[39555.156759]  [<ffffffff812b5e05>] device_add+0xea/0x552

[39555.156767]  [<ffffffff811fc968>] ? kobject_init+0x43/0x83

[39555.156776]  [<ffffffff812b6286>] device_register+0x19/0x1e

[39555.156785]  [<ffffffff812bcf2f>] _request_firmware+0x1f9/0x3e3

[39555.156794]  [<ffffffff812bd1a4>] request_firmware+0xe/0x12

[39555.156805]  [<ffffffff813cbeb5>] generic_set_freq+0x243/0x13fb

[39555.156814]  [<ffffffff8105afdf>] ? each_symbol+0x48/0x17f

[39555.156826]  [<ffffffff8155cf31>] ? printk+0x67/0x69

[39555.156835]  [<ffffffff810b597f>] ? __kmalloc+0x10d/0x11f

[39555.156843]  [<ffffffff813cbc70>] ? kzalloc+0xf/0x11

[39555.156852]  [<ffffffff813cd4d4>] ? xc2028_set_config+0xc9/0xec

[39555.156861]  [<ffffffff813cd224>] xc2028_set_analog_freq+0x1b7/0x1c0

[39555.156876]  [<ffffffffa00953e8>] fe_set_params+0x46/0x48 [tuner]

[39555.156888]  [<ffffffffa0094401>] set_freq+0x23b/0x284 [tuner]

[39555.156898]  [<ffffffff810992a8>] ? kstrdup+0x2f/0x4b

[39555.156910]  [<ffffffffa0094b06>] tuner_s_frequency+0x87/0x92 [tuner]

[39555.156933]  [<ffffffffa0040bff>] em28xx_card_setup+0x79b/0x7c3 [em28xx]

[39555.156942]  [<ffffffff813c7c3d>] ? i2c_master_recv+0x3c/0x4b

[39555.156963]  [<ffffffffa0040c27>] ? em28xx_tuner_callback+0x0/0x23 [em28xx]

[39555.156983]  [<ffffffffa00417a0>] em28xx_usb_probe+0x5b9/0x781 [em28xx]

[39555.156997]  [<ffffffff8138fd61>] usb_probe_interface+0x167/0x1c0

[39555.157036]  [<ffffffff812b7f1d>] driver_probe_device+0x97/0x13c

[39555.157045]  [<ffffffff812b803d>] ? __device_attach+0x0/0x3c

[39555.157053]  [<ffffffff812b8070>] __device_attach+0x33/0x3c

[39555.157062]  [<ffffffff812b7553>] bus_for_each_drv+0x51/0x88

[39555.157071]  [<ffffffff812b80fb>] device_attach+0x5e/0x73

[39555.157080]  [<ffffffff812b73ba>] bus_attach_device+0x25/0x57

[39555.157090]  [<ffffffff812b60e4>] device_add+0x3c9/0x552

[39555.157101]  [<ffffffff810b37e5>] ? virt_to_head_page+0x9/0x2a

[39555.157112]  [<ffffffff8138e8e4>] usb_set_configuration+0x5a8/0x615

[39555.157123]  [<ffffffff81396736>] generic_probe+0x56/0xa0

[39555.157133]  [<ffffffff8138f099>] usb_probe_device+0x67/0x70

[39555.157144]  [<ffffffff812b7f1d>] driver_probe_device+0x97/0x13c

[39555.157154]  [<ffffffff812b803d>] ? __device_attach+0x0/0x3c

[39555.157164]  [<ffffffff812b8070>] __device_attach+0x33/0x3c

[39555.157173]  [<ffffffff812b7553>] bus_for_each_drv+0x51/0x88

[39555.157183]  [<ffffffff812b80fb>] device_attach+0x5e/0x73

[39555.157193]  [<ffffffff812b73ba>] bus_attach_device+0x25/0x57

[39555.157203]  [<ffffffff812b60e4>] device_add+0x3c9/0x552

[39555.157213]  [<ffffffff81387976>] usb_new_device+0x130/0x192

[39555.157223]  [<ffffffff813896b6>] hub_thread+0xd9d/0x13d3

[39555.157236]  [<ffffffff8104bbb4>] ? autoremove_wake_function+0x0/0x38

[39555.157246]  [<ffffffff81388919>] ? hub_thread+0x0/0x13d3

[39555.157254]  [<ffffffff81388919>] ? hub_thread+0x0/0x13d3

[39555.157262]  [<ffffffff8104b7c6>] kthread+0x56/0x83

[39555.157272]  [<ffffffff8100cafa>] child_rip+0xa/0x20

[39555.157282]  [<ffffffff8104b770>] ? kthread+0x0/0x83

[39555.157291]  [<ffffffff8100caf0>] ? child_rip+0x0/0x20

[39555.157297] ---[ end trace fe3d381734f38054 ]---

[39555.157307] kobject_add_internal failed for i2c-1 with -EEXIST, don't try to register things with the same name in the same directory.

[39555.157317] Pid: 377, comm: khubd Tainted: P        W  2.6.30-gentoo-r5 #6

[39555.157322] Call Trace:

[39555.157331]  [<ffffffff811fca25>] ? kobject_put+0x47/0x4b

[39555.157342]  [<ffffffff811fcd32>] kobject_add_internal+0x17c/0x195

[39555.157352]  [<ffffffff811fce23>] kobject_add_varg+0x41/0x4e

[39555.157361]  [<ffffffff811fcf35>] kobject_add+0x89/0x8b

[39555.157370]  [<ffffffff812b5441>] ? kzalloc+0xf/0x11

[39555.157381]  [<ffffffff810b597f>] ? __kmalloc+0x10d/0x11f

[39555.157390]  [<ffffffff812b5441>] ? kzalloc+0xf/0x11

[39555.157399]  [<ffffffff811fcb46>] ? kobject_get+0x1a/0x22

[39555.157409]  [<ffffffff812b5e05>] device_add+0xea/0x552

[39555.157418]  [<ffffffff811fc968>] ? kobject_init+0x43/0x83

[39555.157428]  [<ffffffff812b6286>] device_register+0x19/0x1e

[39555.157438]  [<ffffffff812bcf2f>] _request_firmware+0x1f9/0x3e3

[39555.157448]  [<ffffffff812bd1a4>] request_firmware+0xe/0x12

[39555.157458]  [<ffffffff813cbeb5>] generic_set_freq+0x243/0x13fb

[39555.157468]  [<ffffffff8105afdf>] ? each_symbol+0x48/0x17f

[39555.157479]  [<ffffffff8155cf31>] ? printk+0x67/0x69

[39555.157489]  [<ffffffff810b597f>] ? __kmalloc+0x10d/0x11f

[39555.157499]  [<ffffffff813cbc70>] ? kzalloc+0xf/0x11

[39555.157509]  [<ffffffff813cd4d4>] ? xc2028_set_config+0xc9/0xec

[39555.157520]  [<ffffffff813cd224>] xc2028_set_analog_freq+0x1b7/0x1c0

[39555.157534]  [<ffffffffa00953e8>] fe_set_params+0x46/0x48 [tuner]

[39555.157547]  [<ffffffffa0094401>] set_freq+0x23b/0x284 [tuner]

[39555.157557]  [<ffffffff810992a8>] ? kstrdup+0x2f/0x4b

[39555.157570]  [<ffffffffa0094b06>] tuner_s_frequency+0x87/0x92 [tuner]

[39555.157592]  [<ffffffffa0040bff>] em28xx_card_setup+0x79b/0x7c3 [em28xx]

[39555.157603]  [<ffffffff813c7c3d>] ? i2c_master_recv+0x3c/0x4b

[39555.157625]  [<ffffffffa0040c27>] ? em28xx_tuner_callback+0x0/0x23 [em28xx]

[39555.157646]  [<ffffffffa00417a0>] em28xx_usb_probe+0x5b9/0x781 [em28xx]

[39555.157660]  [<ffffffff8138fd61>] usb_probe_interface+0x167/0x1c0

[39555.157672]  [<ffffffff812b7f1d>] driver_probe_device+0x97/0x13c

[39555.157682]  [<ffffffff812b803d>] ? __device_attach+0x0/0x3c

[39555.157692]  [<ffffffff812b8070>] __device_attach+0x33/0x3c

[39555.157702]  [<ffffffff812b7553>] bus_for_each_drv+0x51/0x88

[39555.157712]  [<ffffffff812b80fb>] device_attach+0x5e/0x73

[39555.157722]  [<ffffffff812b73ba>] bus_attach_device+0x25/0x57

[39555.157732]  [<ffffffff812b60e4>] device_add+0x3c9/0x552

[39555.157742]  [<ffffffff810b37e5>] ? virt_to_head_page+0x9/0x2a

[39555.157753]  [<ffffffff8138e8e4>] usb_set_configuration+0x5a8/0x615

[39555.157764]  [<ffffffff81396736>] generic_probe+0x56/0xa0

[39555.157774]  [<ffffffff8138f099>] usb_probe_device+0x67/0x70

[39555.157784]  [<ffffffff812b7f1d>] driver_probe_device+0x97/0x13c

[39555.157794]  [<ffffffff812b803d>] ? __device_attach+0x0/0x3c

[39555.157804]  [<ffffffff812b8070>] __device_attach+0x33/0x3c

[39555.157814]  [<ffffffff812b7553>] bus_for_each_drv+0x51/0x88

[39555.157824]  [<ffffffff812b80fb>] device_attach+0x5e/0x73

[39555.157834]  [<ffffffff812b73ba>] bus_attach_device+0x25/0x57

[39555.157843]  [<ffffffff812b60e4>] device_add+0x3c9/0x552

[39555.157853]  [<ffffffff81387976>] usb_new_device+0x130/0x192

[39555.157863]  [<ffffffff813896b6>] hub_thread+0xd9d/0x13d3

[39555.157875]  [<ffffffff8104bbb4>] ? autoremove_wake_function+0x0/0x38

[39555.157884]  [<ffffffff81388919>] ? hub_thread+0x0/0x13d3

[39555.157893]  [<ffffffff81388919>] ? hub_thread+0x0/0x13d3

[39555.157903]  [<ffffffff8104b7c6>] kthread+0x56/0x83

[39555.157912]  [<ffffffff8100cafa>] child_rip+0xa/0x20

[39555.157922]  [<ffffffff8104b770>] ? kthread+0x0/0x83

[39555.157930]  [<ffffffff8100caf0>] ? child_rip+0x0/0x20

[39555.157938] i2c-adapter i2c-1: fw_register_device: device_register failed

[39555.157946] xc2028 1-0061: Error -17 while requesting firmware xc3028-v27.fw 

[39555.158137] input: em28xx IR (em28xx #0) as /devices/pci0000:00/0000:00:1d.7/usb2/2-1/input/input14

[39555.158842] em28xx #0: Config register raw data: 0xd0

[39555.159664] em28xx #0: AC97 vendor ID = 0xffffffff

[39555.160051] em28xx #0: AC97 features = 0x6a90

[39555.160055] em28xx #0: Empia 202 AC97 audio processor detected

[39555.167798] usb 2-1: uevent

[39555.167838] usb usb2: uevent

[39555.168657] usb 2-1: uevent

[39555.168685] usb usb2: uevent

[39555.251552] tvp5150 1-005c: tvp5150am1 detected.

[39555.344919] em28xx #0: v4l2 driver version 0.1.2

[39555.405120] em28xx #0: V4L2 device registered as /dev/video0 and /dev/vbi0

[39555.405128] em28xx-audio.c: probing for em28x1 non standard usbaudio

[39555.405132] em28xx-audio.c: Copyright (C) 2006 Markus Rechberger

[39555.418315] usb 2-1: uevent

[39555.418433] usb usb2: uevent

[39555.420582] usb 2-1: uevent

[39555.420666] usb usb2: uevent

[39555.448814] xc2028 1-0061: attaching existing instance

[39555.448817] xc2028 1-0061: type set to XCeive xc2028/xc3028 tuner

[39555.448819] em28xx #0/2: xc3028 attached

[39555.448821] DVB: registering new adapter (em28xx #0)

[39555.448824] DVB: registering adapter 0 frontend 0 (LG Electronics LGDT3303 VSB/QAM Frontend)...

[39555.449114] Successfully loaded em28xx-dvb

[39555.461180] drivers/usb/core/inode.c: creating file '007'

[39555.540558] tvp5150 1-005c: tvp5150am1 detected.

Any ideas why it thinks it is trying to create duplicate files?  Thanks!

----------

## asgentoo

In case anyone googles this issue, there is a bug in (at least) 2.6.30 that is corrected in (at least) 2.6.32

The bug is:

```
ret = request_firmware(&fw, fwname, &state->i2c->dev);

```

Instead of:

```
ret = request_firmware(&fw, fwname, state->i2c->dev.parent);

```

Look in drivers/media/dvb/frontends/

Search for the name of your module, and edit it. Or just download 2.6.32 (or better), and either use it, or copy the file from it.

----------

