public inbox for linux-media@vger.kernel.org
 help / color / mirror / Atom feed
* Hauppauge USB Live 2
@ 2010-12-14  9:57 Gerd Hoffmann
  2010-12-14 10:06 ` Devin Heitmueller
  0 siblings, 1 reply; 6+ messages in thread
From: Gerd Hoffmann @ 2010-12-14  9:57 UTC (permalink / raw)
  To: linux-media

[-- Attachment #1: Type: text/plain, Size: 369 bytes --]

   Hi folks,

Got a "Hauppauge USB Live 2" after google found me that there is a linux 
driver for it.  Unfortunaly linux doesn't manage to initialize the device.

I've connected the device to a Thinkpad T60.  It runs a 2.6.37-rc5 
kernel with the linuxtv/staging/for_v2.6.38 branch merged in.

Kernel log and lsusb output are attached.

Ideas anyone?

cheers,
   Gerd

[-- Attachment #2: live2-dmesg.txt --]
[-- Type: text/plain, Size: 2103 bytes --]

[  231.994065] usb 1-2: new high speed USB device using ehci_hcd and address 5
[  232.110991] usb 1-2: New USB device found, idVendor=2040, idProduct=c200
[  232.110998] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[  232.111023] usb 1-2: Product: Hauppauge Device
[  232.111029] usb 1-2: Manufacturer: Hauppauge
[  232.111033] usb 1-2: SerialNumber: 0013566174
[  232.465523] IR NEC protocol handler initialized
[  232.489573] Linux video capture interface: v2.00
[  232.499834] IR RC5(x) protocol handler initialized
[  232.518668] IR RC6 protocol handler initialized
[  232.541743] IR JVC protocol handler initialized
[  232.579260] IR Sony protocol handler initialized
[  232.614172] lirc_dev: IR Remote Control driver registered, major 250 
[  232.643778] IR LIRC bridge handler initialized
[  232.656779] cx231xx v4l2 driver loaded.
[  232.656844] cx231xx #0: New device Hauppauge Hauppauge Device @ 480 Mbps (2040:c200) with 5 interfaces
[  232.656848] cx231xx #0: registering interface 1
[  232.659017] cx231xx #0: can't change interface 3 alt no. to 3: Max. Pkt size = 0
[  232.660130] cx231xx #0: can't change interface 4 alt no. to 1: Max. Pkt size = 0
[  232.661252] cx231xx #0: Identified as Hauppauge USB Live 2 (card=9)
[  232.686363] cx231xx #0: UsbInterface::sendCommand, failed with status --32
[  232.686726] cx231xx #0: UsbInterface::sendCommand, failed with status --32
[  232.687166] cx231xx #0: UsbInterface::sendCommand, failed with status --32
[  232.687479] cx231xx #0: UsbInterface::sendCommand, failed with status --32
[  232.687853] cx231xx #0: UsbInterface::sendCommand, failed with status --32
[  232.688348] cx231xx #0: UsbInterface::sendCommand, failed with status --32
[  232.688727] cx231xx #0: UsbInterface::sendCommand, failed with status --32
[  232.688731] cx231xx #0: cx231xx_dev_init: cx231xx_afe init super block - errCode [-32]!
[  232.688845] cx231xx #0: cx231xx_init_dev: cx231xx_i2c_register - errCode [-32]!
[  232.688859] cx231xx: probe of 1-2:1.1 failed with error -32
[  232.688915] usbcore: registered new interface driver cx231xx

[-- Attachment #3: live2-lsusb.txt --]
[-- Type: text/plain, Size: 12938 bytes --]


Bus 001 Device 005: ID 2040:c200 Hauppauge 
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass          239 Miscellaneous Device
  bDeviceSubClass         2 ?
  bDeviceProtocol         1 Interface Association
  bMaxPacketSize0        64
  idVendor           0x2040 Hauppauge
  idProduct          0xc200 
  bcdDevice           40.01
  iManufacturer           1 Hauppauge
  iProduct                2 Hauppauge Device
  iSerial                 3 0013566174
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength          248
    bNumInterfaces          6
    bConfigurationValue     1
    iConfiguration          4 Hauppauge Device
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              340mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface             32 Hauppauge Device
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x8e  EP 14 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0020  1x 32 bytes
        bInterval               4
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x0e  EP 14 OUT
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0020  1x 32 bytes
        bInterval               4
    Interface Association:
      bLength                 8
      bDescriptorType        11
      bFirstInterface         1
      bInterfaceCount         5
      bFunctionClass        255 Vendor Specific Class
      bFunctionSubClass     255 Vendor Specific Subclass
      bFunctionProtocol     255 Vendor Specific Protocol
      iFunction               0 
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface              7 Hauppauge Device
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x8f  EP 15 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval               7
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        2
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface             20 Hauppauge Device
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        2
      bAlternateSetting       1
      bNumEndpoints           1
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface             21 Hauppauge Device
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            5
          Transfer Type            Isochronous
          Synch Type               Asynchronous
          Usage Type               Data
        wMaxPacketSize     0x001c  1x 28 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        2
      bAlternateSetting       2
      bNumEndpoints           1
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface             22 Hauppauge Device
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            5
          Transfer Type            Isochronous
          Synch Type               Asynchronous
          Usage Type               Data
        wMaxPacketSize     0x0034  1x 52 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        3
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface             23 Hauppauge Device
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x84  EP 4 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        3
      bAlternateSetting       1
      bNumEndpoints           1
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface             24 Hauppauge Device
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x84  EP 4 IN
        bmAttributes            5
          Transfer Type            Isochronous
          Synch Type               Asynchronous
          Usage Type               Data
        wMaxPacketSize     0x00b8  1x 184 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        3
      bAlternateSetting       2
      bNumEndpoints           1
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface             25 Hauppauge Device
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x84  EP 4 IN
        bmAttributes            5
          Transfer Type            Isochronous
          Synch Type               Asynchronous
          Usage Type               Data
        wMaxPacketSize     0x02d8  1x 728 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        3
      bAlternateSetting       3
      bNumEndpoints           1
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface             26 Hauppauge Device
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x84  EP 4 IN
        bmAttributes            5
          Transfer Type            Isochronous
          Synch Type               Asynchronous
          Usage Type               Data
        wMaxPacketSize     0x13c4  3x 964 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        3
      bAlternateSetting       4
      bNumEndpoints           1
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface             27 Hauppauge Device
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x84  EP 4 IN
        bmAttributes            5
          Transfer Type            Isochronous
          Synch Type               Asynchronous
          Usage Type               Data
        wMaxPacketSize     0x0b84  2x 900 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        4
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface             28 Hauppauge Device
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x85  EP 5 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        4
      bAlternateSetting       1
      bNumEndpoints           1
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface             31 Hauppauge Device
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x05  EP 5 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        5
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface             29 Hauppauge Device
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x86  EP 6 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        5
      bAlternateSetting       1
      bNumEndpoints           1
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface             30 Hauppauge Device
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x86  EP 6 IN
        bmAttributes            5
          Transfer Type            Isochronous
          Synch Type               Asynchronous
          Usage Type               Data
        wMaxPacketSize     0x0240  1x 576 bytes
        bInterval               1
Device Qualifier (for other device speed):
  bLength                10
  bDescriptorType         6
  bcdUSB               2.00
  bDeviceClass          239 Miscellaneous Device
  bDeviceSubClass         2 ?
  bDeviceProtocol         1 Interface Association
  bMaxPacketSize0        64
  bNumConfigurations      1
Device Status:     0x0000
  (Bus Powered)

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Hauppauge USB Live 2
  2010-12-14  9:57 Hauppauge USB Live 2 Gerd Hoffmann
@ 2010-12-14 10:06 ` Devin Heitmueller
  2010-12-14 14:05   ` Mauro Carvalho Chehab
  0 siblings, 1 reply; 6+ messages in thread
From: Devin Heitmueller @ 2010-12-14 10:06 UTC (permalink / raw)
  To: Gerd Hoffmann; +Cc: linux-media

On Tue, Dec 14, 2010 at 4:57 AM, Gerd Hoffmann <kraxel@redhat.com> wrote:
>  Hi folks,
>
> Got a "Hauppauge USB Live 2" after google found me that there is a linux
> driver for it.  Unfortunaly linux doesn't manage to initialize the device.
>
> I've connected the device to a Thinkpad T60.  It runs a 2.6.37-rc5 kernel
> with the linuxtv/staging/for_v2.6.38 branch merged in.
>
> Kernel log and lsusb output are attached.
>
> Ideas anyone?

Looks like a regression got introduced since I submitted the original
support for the device.

Mauro?

Devin

-- 
Devin J. Heitmueller - Kernel Labs
http://www.kernellabs.com

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Hauppauge USB Live 2
  2010-12-14 10:06 ` Devin Heitmueller
@ 2010-12-14 14:05   ` Mauro Carvalho Chehab
  2010-12-14 16:28     ` Gerd Hoffmann
  0 siblings, 1 reply; 6+ messages in thread
From: Mauro Carvalho Chehab @ 2010-12-14 14:05 UTC (permalink / raw)
  To: Devin Heitmueller; +Cc: Gerd Hoffmann, linux-media

Hi Devin,

Em 14-12-2010 08:06, Devin Heitmueller escreveu:
> On Tue, Dec 14, 2010 at 4:57 AM, Gerd Hoffmann <kraxel@redhat.com> wrote:
>>  Hi folks,
>>
>> Got a "Hauppauge USB Live 2" after google found me that there is a linux
>> driver for it.  Unfortunaly linux doesn't manage to initialize the device.
>>
>> I've connected the device to a Thinkpad T60.  It runs a 2.6.37-rc5 kernel
>> with the linuxtv/staging/for_v2.6.38 branch merged in.
>>
>> Kernel log and lsusb output are attached.
>>
>> Ideas anyone?
> 
> Looks like a regression got introduced since I submitted the original
> support for the device.
> 
> Mauro?

No idea what happened. The driver is working here with the devices I have.
Unfortunately, I don't have any USB Live 2 here for testing.

Based on the logs, maybe the driver is directing the I2C commands to the
wrong bus.

The better would be to bisect the kernel and see what patch broke it.
The support for USB live2 were added on changeset 4270c3ca.

There aren't many changes on it (45 changes), so, bisecting it shouldn't be hard:

$ git log --oneline --no-merges 4270c3ca.. drivers/media/video/cx231xx 
f5db33f [media] cx231xx: stray unlock on error path
9a1f8b3 [media] v4l: Remove module_name argument to the v4l2_i2c_new_subdev* functions
80bab1f [media] rc: Properly name the rc_map struct
e58462f [media] rc: Rename remote controller type to rc_type instead of ir_type
9489b78 [media] cx231xx: Properly name rc_map name
6054b77 [media] rc: rename the remaining things to rc_core
b8da8d2 [media] cx231xx-417: Remove unnecessary casts of void ptr returning alloc function return values
c3e1500 [media] cx231xx: Fix i2c support at cx231xx-input
1639cc0 [media] ir-core: make struct rc_dev the primary interface
0d71fa1 [media] ir-core: more cleanups of ir-functions.c
0edf2e5 [media] v4l: kill the BKL
e31e62a [media] cx231xx: Add IR support for Pixelview Hybrid SBTVD
0d1220a [media] cx231xx: Add a driver for I2C-based IR
2d1b6c2 [media] mb86a20s: add support for serial streams
9bb63ec [media] cx231xx: use callback to set agc on PixelView
e97fc39 [media] add digital support for PV SBTVD hybrid
4938aef [media] Add analog support for Pixelvied Hybrid SBTVD
1532a07 [media] v4l: Remove hardcoded module names passed to v4l2_i2c_new_subdev*
b838396 [media] cx231xx: fix double lock typo
4372584 [media] cx231xx: Fix compilation breakage if DVB is not selected
44ed895 [media] cx231xx: Remove IR support from the driver
10e4ebb [media] cx231xx: Only register USB interface 1
9439943 [media] v4l-dvb: using vmalloc needs vmalloc.h in cx231xx-417.c
643800d [media] cx231xx: use core-assisted lock
0f86158 [media] cx231xx: Colibri carrier offset was wrong for PAL/M
1001f90 [media] cx231xx: remove some unused functions
82c3cca [media] cx231xx: declare static functions as such
bae94dc [media] cx231xx-417: Fix a gcc warning
955e6ed [media] CodingStyle cleanup at s5h1432 and cx231xx
61b04cb [media] cx231xx-audio: fix some locking issues
78bb6df [media] cx231xx: Only change gpio direction when needed
a6f6fb9 [media] cx231xx: better handle the master port enable command
1a4aa92 [media] cx231xx: properly use the right tuner i2c address
24c80b6 [media] cx231xx: properly implement URB control messages log
92fbb811 [media] cx231xx: fix Kconfig dependencies
62c78c9 [media] cx231xx: remove a printk warning at -avcore and at -417
6af8cc0 [media] cx231xx: Fix vblank/vactive line counts for PAL/SECAM
222c435 [media] cx231xx: properly set active line count for PAL/SECAM
2ded0fe [media] cx231xx: whitespace cleanup
b6cd9c4 [media] cx231xx: remove board specific check for Colibri configuration
8aed3f4 [media] cx231xx: Make the DIF configuration based on the tuner not the board id
b522591 [media] cx231xx: remove i2c ir stubs
2b43db3 [media] cx231xx: move printk() line related to 417 initialization
9f51259 [media] cx231xx: fixup video grabber board profile
8880621 [media] cx231xx: make output mode configurable via the board profile

Cheers,
Mauro

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Hauppauge USB Live 2
  2010-12-14 14:05   ` Mauro Carvalho Chehab
@ 2010-12-14 16:28     ` Gerd Hoffmann
  2010-12-14 17:23       ` Gerd Hoffmann
  0 siblings, 1 reply; 6+ messages in thread
From: Gerd Hoffmann @ 2010-12-14 16:28 UTC (permalink / raw)
  To: Mauro Carvalho Chehab; +Cc: Devin Heitmueller, linux-media

On 12/14/10 15:05, Mauro Carvalho Chehab wrote:
> Hi Devin,
>
> Em 14-12-2010 08:06, Devin Heitmueller escreveu:
>> On Tue, Dec 14, 2010 at 4:57 AM, Gerd Hoffmann<kraxel@redhat.com>  wrote:
>>>   Hi folks,
>>>
>>> Got a "Hauppauge USB Live 2" after google found me that there is a linux
>>> driver for it.  Unfortunaly linux doesn't manage to initialize the device.
>>>
>>> I've connected the device to a Thinkpad T60.  It runs a 2.6.37-rc5 kernel
>>> with the linuxtv/staging/for_v2.6.38 branch merged in.
>>>
>>> Kernel log and lsusb output are attached.
>>>
>>> Ideas anyone?
>>
>> Looks like a regression got introduced since I submitted the original
>> support for the device.
>>
>> Mauro?
>
> No idea what happened. The driver is working here with the devices I have.
> Unfortunately, I don't have any USB Live 2 here for testing.
>
> Based on the logs, maybe the driver is directing the I2C commands to the
> wrong bus.
>
> The better would be to bisect the kernel and see what patch broke it.
> The support for USB live2 were added on changeset 4270c3ca.
>
> There aren't many changes on it (45 changes), so, bisecting it shouldn't be hard:
>
> $ git log --oneline --no-merges 4270c3ca.. drivers/media/video/cx231xx
> f5db33f [media] cx231xx: stray unlock on error path

Using that commit directly looks better.  I still see the 
UsbInterface::sendCommand failures, but the driver seems to finish the 
initialization and looks for the firmware.  So it seems something 
between -rc2 and -rc5 in mainline made it regress ...

cheers,
   Gerd


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Hauppauge USB Live 2
  2010-12-14 16:28     ` Gerd Hoffmann
@ 2010-12-14 17:23       ` Gerd Hoffmann
  2010-12-15 20:15         ` Gerd Hoffmann
  0 siblings, 1 reply; 6+ messages in thread
From: Gerd Hoffmann @ 2010-12-14 17:23 UTC (permalink / raw)
  To: Mauro Carvalho Chehab; +Cc: Devin Heitmueller, linux-media

>> $ git log --oneline --no-merges 4270c3ca.. drivers/media/video/cx231xx
>> f5db33f [media] cx231xx: stray unlock on error path
>
> Using that commit directly looks better. I still see the
> UsbInterface::sendCommand failures, but the driver seems to finish the
> initialization and looks for the firmware. So it seems something between
> -rc2 and -rc5 in mainline made it regress ...

Uhm, no.  Looks like the difference is actually the .config

The stripped-down kernel with the driver compiled in statically for a 
quick test works fine, whereas the fedora-derived configuration doesn't.

/me continues burning cpu cycles with kernel builds ;)

cheers,
   Gerd

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Hauppauge USB Live 2
  2010-12-14 17:23       ` Gerd Hoffmann
@ 2010-12-15 20:15         ` Gerd Hoffmann
  0 siblings, 0 replies; 6+ messages in thread
From: Gerd Hoffmann @ 2010-12-15 20:15 UTC (permalink / raw)
  To: Mauro Carvalho Chehab; +Cc: Devin Heitmueller, linux-media

[-- Attachment #1: Type: text/plain, Size: 1281 bytes --]

On 12/14/10 18:23, Gerd Hoffmann wrote:
>>> $ git log --oneline --no-merges 4270c3ca.. drivers/media/video/cx231xx
>>> f5db33f [media] cx231xx: stray unlock on error path
>>
>> Using that commit directly looks better. I still see the
>> UsbInterface::sendCommand failures, but the driver seems to finish the
>> initialization and looks for the firmware. So it seems something between
>> -rc2 and -rc5 in mainline made it regress ...
>
> Uhm, no. Looks like the difference is actually the .config

No, isn't.  Running vanilla 2.6.37-rc5 now, seeing both success and 
failure with the very same kernel.

The driver is compiled statically into the kernel now.  Booting with the 
device plugged works, it seems to initialize the device largely 
sucessfully, although some errors are sprinkled in.  The firmware one is 
probably just a matter of making sure the firmware is in the initramfs, 
didn't look at that yet.

Trying to fix the firmware issue by just unplugging and re-plugging the 
device once the system is fully  up'n'running (and thus /lib/firmware 
available) results in a failure which looks pretty much like the 
original report.

Any idea?  Initialization order issue?  Timing issue?

cheers,
   Gerd

PS: attached log was created using "dmesg | egrep '(cx|usb 1-2)'".

[-- Attachment #2: log --]
[-- Type: text/plain, Size: 4662 bytes --]

[    1.954715] cx231xx v4l2 driver loaded.
[    1.954741] usbcore: registered new interface driver cx231xx
[    2.171811] usb 1-2: new high speed USB device using ehci_hcd and address 2
[    2.291875] usb 1-2: New USB device found, idVendor=2040, idProduct=c200
[    2.293621] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[    2.297065] usb 1-2: Product: Hauppauge Device
[    2.298805] usb 1-2: Manufacturer: Hauppauge
[    2.298807] usb 1-2: SerialNumber: 0013566174
[    2.305647] cx231xx #0: New device Hauppauge Hauppauge Device @ 480 Mbps (2040:c200) with 5 interfaces
[    2.307548] cx231xx #0: registering interface 1
[    2.309498] cx231xx #0: can't change interface 3 alt no. to 3: Max. Pkt size = 0
[    2.311374] cx231xx #0: can't change interface 4 alt no. to 1: Max. Pkt size = 0
[    2.313248] cx231xx #0: Identified as Hauppauge USB Live 2 (card=9)
[    2.337247] cx231xx #0: UsbInterface::sendCommand, failed with status --32
[    2.339250] cx231xx #0: UsbInterface::sendCommand, failed with status --32
[    2.342754] cx231xx #0: UsbInterface::sendCommand, failed with status --32
[    2.373011] cx231xx #0: cx231xx_dif_set_standard: setStandard to ffffffff
[    2.382006] cx231xx #0: Changing the i2c master port to 3
[    2.386252] cx25840 15-0044: cx23102 A/V decoder found @ 0x88 (cx231xx #0)
[    2.412085] cx25840 15-0044:  Firmware download size changed to 16 bytes max length
[    2.415597] cx25840 15-0044: unable to open firmware v4l-cx231xx-avcore-01.fw
[    2.448841] cx231xx #0: cx231xx #0: v4l2 driver version 0.0.1
[    2.468502] cx231xx #0: cx231xx_dif_set_standard: setStandard to ffffffff
[    2.516996] cx231xx #0: video_mux : 0
[    2.518927] cx231xx #0: do_mode_ctrl_overrides : 0xb000
[    2.521745] cx231xx #0: do_mode_ctrl_overrides NTSC
[    2.530728] cx231xx #0: cx231xx #0/0: registered device video0 [v4l2]
[    2.532972] cx231xx #0: cx231xx #0/0: registered device vbi0
[    2.534857] cx231xx #0: V4L2 device registered as video0 and vbi0
[    2.537056] cx231xx #0: EndPoint Addr 0x84, Alternate settings: 5
[    2.549992] cx231xx #0: Alternate setting 0, max size= 512
[    2.552147] cx231xx #0: Alternate setting 1, max size= 184
[    2.554244] cx231xx #0: Alternate setting 2, max size= 728
[    2.556181] cx231xx #0: Alternate setting 3, max size= 2892
[    2.558023] cx231xx #0: Alternate setting 4, max size= 1800
[    2.559827] cx231xx #0: EndPoint Addr 0x85, Alternate settings: 2
[    2.583025] cx231xx #0: Alternate setting 0, max size= 512
[    2.584811] cx231xx #0: Alternate setting 1, max size= 512
[    2.586602] cx231xx #0: EndPoint Addr 0x86, Alternate settings: 2
[    2.598406] cx231xx #0: Alternate setting 0, max size= 512
[    2.600058] cx231xx #0: Alternate setting 1, max size= 576
[   13.304543] cx231xx #0: cx231xx_stop_stream():: ep_mask = 8
[   13.314640] cx231xx #0: can't change interface 3 alt no. to 0 (err=-71)
[   29.289535] cx231xx #0: cx231xx_stop_stream():: ep_mask = 8
[   29.299602] cx231xx #0: can't change interface 3 alt no. to 0 (err=-71)
[  180.241409] usb 1-2: USB disconnect, address 2
[  184.261061] usb 1-2: new high speed USB device using ehci_hcd and address 6
[  184.377920] usb 1-2: New USB device found, idVendor=2040, idProduct=c200
[  184.377928] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[  184.377934] usb 1-2: Product: Hauppauge Device
[  184.377939] usb 1-2: Manufacturer: Hauppauge
[  184.377944] usb 1-2: SerialNumber: 0013566174
[  184.381595] cx231xx #1: New device Hauppauge Hauppauge Device @ 480 Mbps (2040:c200) with 5 interfaces
[  184.381603] cx231xx #1: registering interface 1
[  184.381784] cx231xx #1: can't change interface 3 alt no. to 3: Max. Pkt size = 0
[  184.381906] cx231xx #1: can't change interface 4 alt no. to 1: Max. Pkt size = 0
[  184.382057] cx231xx #1: Identified as Hauppauge USB Live 2 (card=9)
[  184.400418] cx231xx #1: UsbInterface::sendCommand, failed with status --32
[  184.400788] cx231xx #1: UsbInterface::sendCommand, failed with status --32
[  184.401167] cx231xx #1: UsbInterface::sendCommand, failed with status --32
[  184.401539] cx231xx #1: UsbInterface::sendCommand, failed with status --32
[  184.401907] cx231xx #1: UsbInterface::sendCommand, failed with status --32
[  184.402293] cx231xx #1: UsbInterface::sendCommand, failed with status --32
[  184.402782] cx231xx #1: UsbInterface::sendCommand, failed with status --32
[  184.402788] cx231xx #1: cx231xx_dev_init: cx231xx_afe init super block - errCode [-32]!
[  184.402966] cx231xx #1: cx231xx_init_dev: cx231xx_i2c_register - errCode [-32]!
[  184.402981] cx231xx: probe of 1-2:1.1 failed with error -32

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2010-12-15 20:15 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-12-14  9:57 Hauppauge USB Live 2 Gerd Hoffmann
2010-12-14 10:06 ` Devin Heitmueller
2010-12-14 14:05   ` Mauro Carvalho Chehab
2010-12-14 16:28     ` Gerd Hoffmann
2010-12-14 17:23       ` Gerd Hoffmann
2010-12-15 20:15         ` Gerd Hoffmann

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox