Greetings,

Although audio support has been in USB for a while, it still has trouble
with properly detecting the built-in microphones in my Philips webcams. For
some reason, it claims there are no audio streaming interfaces on the cam,
while the descriptor dumps clearly show there are. I *think* the audio
parsing routines are confused by the fact that these cameras use
Interface 0 for the video, the AC interface is 1 and AS is at 2. My guess is
that all audio-devices tested so far have the AC interface at 0 and AS at 1,
because this is shows up in my log:

usbaudio: device 3 audiocontrol interface 1 altsetting 0 not zero bandwidth
                                          ^ should be 2!
usbaudio: device 3 audiocontrol interface 1 has  0 input and 0 output
          AudioStreaming interfaces
                                          ^ again
usbaudio: constructing mixer for Terminal 2 type 0x0101
usbaudio: no mixer controls found for Terminal 2

So attached you will find 2 complete descriptor dumps (in hex format, with
some extra info) of a 2 different webcams. As far as I can tell, the
descriptors are perfectly legal...

I'm looking into it further myself, but maybe some of you have a good idea
(or a simple patch).

 - Nemosoft

-----------------------------------------------------------------------------
Try SorceryNet!   One of the best IRC-networks around!   irc.sorcery.net:9000
URL: never        IRC: nemosoft      IscaBBS (bbs.isca.uiowa.edu): Nemosoft
                        >> Never mind the daylight << 
09 02 e6 01 03 01 00 a0 fa 
09 04 00 00 02 0a ff 00 00 
07 05 82 03 01 00 64 
07 05 84 01 00 00 01
09 04 00 01 02 0a ff 00 00 
07 05 82 03 01 00 64
07 05 84 01 c4 00 01 
09 04 00 02 02 0a ff 00 00
07 05 82 03 01 00 64 
07 05 84 01 24 01 01 
09 04 00 03 02 0a ff 00 00 
07 05 82 03 01 00 64 
07 05 84 01 c0 01 01 
09 04 00 04 02 0a ff 00 00 
07 05 82 03 01 00 64 
07 05 84 01 50 02 01 
09 04 00 05 02 0a ff 00 00 
07 05 82 03 01 00 64 
07 05 84 01 c0 02 01 
09 04 00 06 02 0a ff 00 00 
07 05 82 03 01 00 64 
07 05 84 01 08 03 01 
09 04 00 07 02 0a ff 00 00 
07 05 82 03 01 00 64 
07 05 84 01 48 03 01 
09 04 00 08 02 0a ff 00 00 
07 05 82 03 01 00 64 
07 05 84 01 80 03 01 
09 04 00 09 02 0a ff 00 00 
07 05 82 03 01 00 64 
07 05 84 01 c0 03 01 
09 04 01 00 00 01 01 00 00 
09 24 01 00 01 26 00 01 02 
0c 24 02 01 01 02 00 01 00 00 00 00 
08 24 06 02 01 01 03 00 
09 24 03 03 01 01 00 02 00 
0b 04 02 00 01 01 02 00 00 01 00 
09 05 85 05 00 00 01 00 00 
0b 04 02 01 01 01 02 00 00 01 00 
07 24 01 03 01 01 00 
0b 24 02 01 01 02 10 01 44 ac 00 
09 05 85 05 5a 00 01 00 00 
07 25 01 00 00 00 00 
0b 04 02 02 01 01 02 00 00 01 00 
07 24 01 03 01 01 00 
0b 24 02 01 01 02 10 01 22 56 00 
09 05 85 05 2e 00 01 00 00 
07 25 01 00 00 00 00 
0b 04 02 03 01 01 02 00 00 01 00 
07 24 01 03 01 01 00 
0b 24 02 01 01 02 10 01 11 2b 00 
09 05 85 05 19 00 01 00 00 
07 25 01 00 00 00 00 
0b 04 02 04 01 01 02 00 00 01 00 
07 24 01 03 01 01 00 
0b 24 02 01 01 02 10 01 40 1f 00 
09 05 85 05 10 00 01 00 00 
07 25 01 00 00 00 00

Oct  2 03:54:47 compiler linux: SerialNumber: 020F020F00000478
Oct  2 03:54:47 compiler linux: pwc_probe() called [0471 0308]
Oct  2 03:54:47 compiler linux: Unknown new USB device:
Oct  2 03:54:47 compiler linux:   Length              = 18
Oct  2 03:54:47 compiler linux:   DescriptorType      = 01
Oct  2 03:54:48 compiler linux:   USB version         = 1.10
Oct  2 03:54:48 compiler linux:   Vendor:Product      = 0471:0308
Oct  2 03:54:48 compiler linux:   MaxPacketSize0      = 8
Oct  2 03:54:48 compiler linux:   NumConfigurations   = 1
Oct  2 03:54:48 compiler linux:   Device version      = 0.05
Oct  2 03:54:48 compiler linux:   Device Class:SubClass:Protocol = 00:00:00
Oct  2 03:54:48 compiler linux:     Per-interface classes
Oct  2 03:54:48 compiler linux: Configuration:
Oct  2 03:54:49 compiler linux:   bLength             =    9
Oct  2 03:54:49 compiler linux:   bDescriptorType     =   02
Oct  2 03:54:49 compiler linux:   wTotalLength        = 01e6
Oct  2 03:54:49 compiler linux:   bNumInterfaces      =   03
Oct  2 03:54:49 compiler linux:   bConfigurationValue =   01
Oct  2 03:54:49 compiler linux:   iConfiguration      =   00
Oct  2 03:54:49 compiler linux:   bmAttributes        =   a0
Oct  2 03:54:50 compiler linux:   MaxPower            =  500mA
Oct  2 03:54:50 compiler linux: 
Oct  2 03:54:50 compiler linux:   Interface: 0
Oct  2 03:54:50 compiler linux:   Alternate Setting:  0
Oct  2 03:54:50 compiler linux:     bLength             =    9
Oct  2 03:54:50 compiler linux:     bDescriptorType     =   04
Oct  2 03:54:50 compiler linux:     bInterfaceNumber    =   00
Oct  2 03:54:51 compiler linux:     bAlternateSetting   =   00
Oct  2 03:54:51 compiler linux:     bNumEndpoints       =   02
Oct  2 03:54:51 compiler linux:     bInterface Class:SubClass:Protocol =   0a:ff
:00
Oct  2 03:54:51 compiler linux:     iInterface          =   00
Oct  2 03:54:51 compiler linux:     Endpoint:
Oct  2 03:54:51 compiler linux:       bLength             =    7
Oct  2 03:54:52 compiler linux:       bDescriptorType     =   05
Oct  2 03:54:52 compiler linux:       bEndpointAddress    =   82 (in)
Oct  2 03:54:52 compiler linux:       bmAttributes        =   03 (Interrupt)
Oct  2 03:54:52 compiler linux:       wMaxPacketSize      = 0001
Oct  2 03:54:52 compiler linux:       bInterval           =   64
Oct  2 03:54:52 compiler linux:     Endpoint:
Oct  2 03:54:53 compiler linux:       bLength             =    7
Oct  2 03:54:53 compiler linux:       bDescriptorType     =   05
Oct  2 03:54:53 compiler linux:       bEndpointAddress    =   84 (in)
Oct  2 03:54:53 compiler linux:       bmAttributes        =   01 (Isochronous)
Oct  2 03:54:53 compiler linux:       wMaxPacketSize      = 0000
Oct  2 03:54:53 compiler linux:       bInterval           =   01
Oct  2 03:54:53 compiler linux:   Alternate Setting:  1
Oct  2 03:54:53 compiler linux:     bLength             =    9
Oct  2 03:54:54 compiler linux:     bDescriptorType     =   04
Oct  2 03:54:54 compiler linux:     bInterfaceNumber    =   00
Oct  2 03:54:54 compiler linux:     bAlternateSetting   =   01
Oct  2 03:54:54 compiler linux:     bNumEndpoints       =   02
Oct  2 03:54:54 compiler linux:     bInterface Class:SubClass:Protocol =   0a:ff
:00
Oct  2 03:54:54 compiler linux:     iInterface          =   00
Oct  2 03:54:55 compiler linux:     Endpoint:
Oct  2 03:54:55 compiler linux:       bLength             =    7
Oct  2 03:54:55 compiler linux:       bDescriptorType     =   05
Oct  2 03:54:55 compiler linux:       bEndpointAddress    =   82 (in)
Oct  2 03:54:55 compiler linux:       bmAttributes        =   03 (Interrupt)
Oct  2 03:54:55 compiler linux:       wMaxPacketSize      = 0001
Oct  2 03:54:56 compiler linux:       bInterval           =   64
Oct  2 03:54:56 compiler linux:     Endpoint:
Oct  2 03:54:56 compiler linux:       bLength             =    7
Oct  2 03:54:56 compiler linux:       bDescriptorType     =   05
Oct  2 03:54:56 compiler linux:       bEndpointAddress    =   84 (in)
Oct  2 03:54:56 compiler linux:       bmAttributes        =   01 (Isochronous)
Oct  2 03:54:57 compiler linux:       wMaxPacketSize      = 00c4
Oct  2 03:54:57 compiler linux:       bInterval           =   01
Oct  2 03:54:57 compiler linux:   Alternate Setting:  2
Oct  2 03:54:57 compiler linux:     bLength             =    9
Oct  2 03:54:57 compiler linux:     bDescriptorType     =   04
Oct  2 03:54:57 compiler linux:     bInterfaceNumber    =   00
Oct  2 03:54:58 compiler linux:     bAlternateSetting   =   02
Oct  2 03:54:58 compiler linux:     bNumEndpoints       =   02
Oct  2 03:54:58 compiler linux:     bInterface Class:SubClass:Protocol =   0a:ff
:00
Oct  2 03:54:58 compiler linux:     iInterface          =   00
Oct  2 03:54:58 compiler linux:     Endpoint:
Oct  2 03:54:58 compiler linux:       bLength             =    7
Oct  2 03:54:58 compiler linux:       bDescriptorType     =   05
Oct  2 03:54:59 compiler linux:       bEndpointAddress    =   82 (in)
Oct  2 03:54:59 compiler linux:       bmAttributes        =   03 (Interrupt)
Oct  2 03:54:59 compiler linux:       wMaxPacketSize      = 0001
Oct  2 03:54:59 compiler linux:       bInterval           =   64
Oct  2 03:54:59 compiler linux:     Endpoint:
Oct  2 03:54:59 compiler linux:       bLength             =    7
Oct  2 03:55:00 compiler linux:       bDescriptorType     =   05
Oct  2 03:55:00 compiler linux:       bEndpointAddress    =   84 (in)
Oct  2 03:55:00 compiler linux:       bmAttributes        =   01 (Isochronous)
Oct  2 03:55:00 compiler linux:       wMaxPacketSize      = 0124
Oct  2 03:55:00 compiler linux:       bInterval           =   01
Oct  2 03:55:00 compiler linux:   Alternate Setting:  3
Oct  2 03:55:00 compiler linux:     bLength             =    9
Oct  2 03:55:00 compiler linux:     bDescriptorType     =   04
Oct  2 03:55:00 compiler linux:     bInterfaceNumber    =   00
Oct  2 03:55:00 compiler linux:     bAlternateSetting   =   03
Oct  2 03:55:00 compiler linux:     bNumEndpoints       =   02
Oct  2 03:55:01 compiler linux:     bInterface Class:SubClass:Protocol =   0a:ff
:00
Oct  2 03:55:01 compiler linux:     iInterface          =   00
Oct  2 03:55:01 compiler linux:     Endpoint:
Oct  2 03:55:01 compiler linux:       bLength             =    7
Oct  2 03:55:01 compiler linux:       bDescriptorType     =   05
Oct  2 03:55:01 compiler linux:       bEndpointAddress    =   82 (in)
Oct  2 03:55:01 compiler linux:       bmAttributes        =   03 (Interrupt)
Oct  2 03:55:01 compiler linux:       wMaxPacketSize      = 0001
Oct  2 03:55:01 compiler linux:       bInterval           =   64
Oct  2 03:55:01 compiler linux:     Endpoint:
Oct  2 03:55:01 compiler linux:       bLength             =    7
Oct  2 03:55:02 compiler linux:       bDescriptorType     =   05
Oct  2 03:55:02 compiler linux:       bEndpointAddress    =   84 (in)
Oct  2 03:55:02 compiler linux:       bmAttributes        =   01 (Isochronous)
Oct  2 03:55:02 compiler linux:       wMaxPacketSize      = 01c0
Oct  2 03:55:02 compiler linux:       bInterval           =   01
Oct  2 03:55:02 compiler linux:   Alternate Setting:  4
Oct  2 03:55:02 compiler linux:     bLength             =    9
Oct  2 03:55:02 compiler linux:     bDescriptorType     =   04
Oct  2 03:55:02 compiler linux:     bInterfaceNumber    =   00
Oct  2 03:55:02 compiler linux:     bAlternateSetting   =   04
Oct  2 03:55:02 compiler linux:     bNumEndpoints       =   02
Oct  2 03:55:03 compiler linux:     bInterface Class:SubClass:Protocol =   0a:ff
:00
Oct  2 03:55:03 compiler linux:     iInterface          =   00
Oct  2 03:55:03 compiler linux:     Endpoint:
Oct  2 03:55:03 compiler linux:       bLength             =    7
Oct  2 03:55:03 compiler linux:       bDescriptorType     =   05
Oct  2 03:55:03 compiler linux:       bEndpointAddress    =   82 (in)
Oct  2 03:55:03 compiler linux:       bmAttributes        =   03 (Interrupt)
Oct  2 03:55:03 compiler linux:       wMaxPacketSize      = 0001
Oct  2 03:55:03 compiler linux:       bInterval           =   64
Oct  2 03:55:03 compiler linux:     Endpoint:
Oct  2 03:55:03 compiler linux:       bLength             =    7
Oct  2 03:55:03 compiler linux:       bDescriptorType     =   05
Oct  2 03:55:04 compiler linux:       bEndpointAddress    =   84 (in)
Oct  2 03:55:04 compiler linux:       bmAttributes        =   01 (Isochronous)
Oct  2 03:55:04 compiler linux:       wMaxPacketSize      = 0250
Oct  2 03:55:04 compiler linux:       bInterval           =   01
Oct  2 03:55:04 compiler linux:   Alternate Setting:  5
Oct  2 03:55:04 compiler linux:     bLength             =    9
Oct  2 03:55:04 compiler linux:     bDescriptorType     =   04
Oct  2 03:55:04 compiler linux:     bInterfaceNumber    =   00
Oct  2 03:55:05 compiler linux:     bAlternateSetting   =   05
Oct  2 03:55:05 compiler linux:     bNumEndpoints       =   02
Oct  2 03:55:05 compiler linux:     bInterface Class:SubClass:Protocol =   0a:ff
:00
Oct  2 03:55:05 compiler linux:     iInterface          =   00
Oct  2 03:55:05 compiler linux:     Endpoint:
Oct  2 03:55:05 compiler linux:       bLength             =    7
Oct  2 03:55:05 compiler linux:       bDescriptorType     =   05
Oct  2 03:55:05 compiler linux:       bEndpointAddress    =   82 (in)
Oct  2 03:55:05 compiler linux:       bmAttributes        =   03 (Interrupt)
Oct  2 03:55:05 compiler linux:       wMaxPacketSize      = 0001
Oct  2 03:55:05 compiler linux:       bInterval           =   64
Oct  2 03:55:06 compiler linux:     Endpoint:
Oct  2 03:55:06 compiler linux:       bLength             =    7
Oct  2 03:55:06 compiler linux:       bDescriptorType     =   05
Oct  2 03:55:06 compiler linux:       bEndpointAddress    =   84 (in)
Oct  2 03:55:06 compiler linux:       bmAttributes        =   01 (Isochronous)
Oct  2 03:55:06 compiler linux:       wMaxPacketSize      = 02c0
Oct  2 03:55:06 compiler linux:       bInterval           =   01
Oct  2 03:55:06 compiler linux:   Alternate Setting:  6
Oct  2 03:55:06 compiler linux:     bLength             =    9
Oct  2 03:55:06 compiler linux:     bDescriptorType     =   04
Oct  2 03:55:06 compiler linux:     bInterfaceNumber    =   00
Oct  2 03:55:07 compiler linux:     bAlternateSetting   =   06
Oct  2 03:55:07 compiler linux:     bNumEndpoints       =   02
Oct  2 03:55:07 compiler linux:     bInterface Class:SubClass:Protocol =   0a:ff
:00
Oct  2 03:55:07 compiler linux:     iInterface          =   00
Oct  2 03:55:07 compiler linux:     Endpoint:
Oct  2 03:55:07 compiler linux:       bLength             =    7
Oct  2 03:55:07 compiler linux:       bDescriptorType     =   05
Oct  2 03:55:07 compiler linux:       bEndpointAddress    =   82 (in)
Oct  2 03:55:07 compiler linux:       bmAttributes        =   03 (Interrupt)
Oct  2 03:55:07 compiler linux:       wMaxPacketSize      = 0001
Oct  2 03:55:07 compiler linux:       bInterval           =   64
Oct  2 03:55:08 compiler linux:     Endpoint:
Oct  2 03:55:08 compiler linux:       bLength             =    7
Oct  2 03:55:08 compiler linux:       bDescriptorType     =   05
Oct  2 03:55:08 compiler linux:       bEndpointAddress    =   84 (in)
Oct  2 03:55:08 compiler linux:       bmAttributes        =   01 (Isochronous)
Oct  2 03:55:08 compiler linux:       wMaxPacketSize      = 0308
Oct  2 03:55:08 compiler linux:       bInterval           =   01
Oct  2 03:55:08 compiler linux:   Alternate Setting:  7
Oct  2 03:55:08 compiler linux:     bLength             =    9
Oct  2 03:55:08 compiler linux:     bDescriptorType     =   04
Oct  2 03:55:08 compiler linux:     bInterfaceNumber    =   00
Oct  2 03:55:09 compiler linux:     bAlternateSetting   =   07
Oct  2 03:55:09 compiler linux:     bNumEndpoints       =   02
Oct  2 03:55:09 compiler linux:     bInterface Class:SubClass:Protocol =   0a:ff
:00
Oct  2 03:55:09 compiler linux:     iInterface          =   00
Oct  2 03:55:09 compiler linux:     Endpoint:
Oct  2 03:55:09 compiler linux:       bLength             =    7
Oct  2 03:55:09 compiler linux:       bDescriptorType     =   05
Oct  2 03:55:10 compiler linux:       bEndpointAddress    =   82 (in)
Oct  2 03:55:10 compiler linux:       bmAttributes        =   03 (Interrupt)
Oct  2 03:55:10 compiler linux:       wMaxPacketSize      = 0001
Oct  2 03:55:10 compiler linux:       bInterval           =   64
Oct  2 03:55:10 compiler linux:     Endpoint:
Oct  2 03:55:10 compiler linux:       bLength             =    7
Oct  2 03:55:10 compiler linux:       bDescriptorType     =   05
Oct  2 03:55:11 compiler linux:       bEndpointAddress    =   84 (in)
Oct  2 03:55:11 compiler linux:       bmAttributes        =   01 (Isochronous)
Oct  2 03:55:11 compiler linux:       wMaxPacketSize      = 0348
Oct  2 03:55:11 compiler linux:       bInterval           =   01
Oct  2 03:55:11 compiler linux:   Alternate Setting:  8
Oct  2 03:55:11 compiler linux:     bLength             =    9
Oct  2 03:55:11 compiler linux:     bDescriptorType     =   04
Oct  2 03:55:11 compiler linux:     bInterfaceNumber    =   00
Oct  2 03:55:11 compiler linux:     bAlternateSetting   =   08
Oct  2 03:55:11 compiler linux:     bNumEndpoints       =   02
Oct  2 03:55:12 compiler linux:     bInterface Class:SubClass:Protocol =   0a:ff
:00
Oct  2 03:55:12 compiler linux:     iInterface          =   00
Oct  2 03:55:12 compiler linux:     Endpoint:
Oct  2 03:55:12 compiler linux:       bLength             =    7
Oct  2 03:55:12 compiler linux:       bDescriptorType     =   05
Oct  2 03:55:12 compiler linux:       bEndpointAddress    =   82 (in)
Oct  2 03:55:12 compiler linux:       bmAttributes        =   03 (Interrupt)
Oct  2 03:55:12 compiler linux:       wMaxPacketSize      = 0001
Oct  2 03:55:12 compiler linux:       bInterval           =   64
Oct  2 03:55:12 compiler linux:     Endpoint:
Oct  2 03:55:13 compiler linux:       bLength             =    7
Oct  2 03:55:13 compiler linux:       bDescriptorType     =   05
Oct  2 03:55:13 compiler linux:       bEndpointAddress    =   84 (in)
Oct  2 03:55:13 compiler linux:       bmAttributes        =   01 (Isochronous)
Oct  2 03:55:13 compiler linux:       wMaxPacketSize      = 0380
Oct  2 03:55:13 compiler linux:       bInterval           =   01
Oct  2 03:55:13 compiler linux:   Alternate Setting:  9
Oct  2 03:55:14 compiler linux:     bLength             =    9
Oct  2 03:55:14 compiler linux:     bDescriptorType     =   04
Oct  2 03:55:14 compiler linux:     bInterfaceNumber    =   00
Oct  2 03:55:14 compiler linux:     bAlternateSetting   =   09
Oct  2 03:55:14 compiler linux:     bNumEndpoints       =   02
Oct  2 03:55:14 compiler linux:     bInterface Class:SubClass:Protocol =   0a:ff
:00
Oct  2 03:55:15 compiler linux:     iInterface          =   00
Oct  2 03:55:15 compiler linux:     Endpoint:
Oct  2 03:55:15 compiler linux:       bLength             =    7
Oct  2 03:55:15 compiler linux:       bDescriptorType     =   05
Oct  2 03:55:16 compiler linux:       bEndpointAddress    =   82 (in)
Oct  2 03:55:16 compiler linux:       bmAttributes        =   03 (Interrupt)
Oct  2 03:55:16 compiler linux:       wMaxPacketSize      = 0001
Oct  2 03:55:16 compiler linux:       bInterval           =   64
Oct  2 03:55:16 compiler linux:     Endpoint:
Oct  2 03:55:16 compiler linux:       bLength             =    7
Oct  2 03:55:16 compiler linux:       bDescriptorType     =   05
Oct  2 03:55:16 compiler linux:       bEndpointAddress    =   84 (in)
Oct  2 03:55:16 compiler linux:       bmAttributes        =   01 (Isochronous)
Oct  2 03:55:16 compiler linux:       wMaxPacketSize      = 03c0
Oct  2 03:55:17 compiler linux:       bInterval           =   01
Oct  2 03:55:17 compiler linux: 
Oct  2 03:55:17 compiler linux:   Interface: 1
Oct  2 03:55:17 compiler linux:   Alternate Setting:  0
Oct  2 03:55:17 compiler linux:     bLength             =    9
Oct  2 03:55:17 compiler linux:     bDescriptorType     =   04
Oct  2 03:55:17 compiler linux:     bInterfaceNumber    =   01
Oct  2 03:55:17 compiler linux:     bAlternateSetting   =   00
Oct  2 03:55:17 compiler linux:     bNumEndpoints       =   00
Oct  2 03:55:18 compiler linux:     bInterface Class:SubClass:Protocol =   01:01
:00
Oct  2 03:55:18 compiler linux:     iInterface          =   00
Oct  2 03:55:18 compiler linux: 
Oct  2 03:55:18 compiler linux:   Interface: 2
Oct  2 03:55:18 compiler linux:   Alternate Setting:  0
Oct  2 03:55:18 compiler linux:     bLength             =   11 (!!!)
Oct  2 03:55:18 compiler linux:     bDescriptorType     =   04
Oct  2 03:55:18 compiler linux:     bInterfaceNumber    =   02
Oct  2 03:55:18 compiler linux:     bAlternateSetting   =   00
Oct  2 03:55:19 compiler linux:     bNumEndpoints       =   01
Oct  2 03:55:19 compiler linux:     bInterface Class:SubClass:Protocol =   01:02
:00
Oct  2 03:55:19 compiler linux:     iInterface          =   00
Oct  2 03:55:19 compiler linux:     Endpoint:
Oct  2 03:55:19 compiler linux:       bLength             =    9 (Audio)
Oct  2 03:55:19 compiler linux:       bDescriptorType     =   05
Oct  2 03:55:19 compiler linux:       bEndpointAddress    =   85 (in)
Oct  2 03:55:19 compiler linux:       bmAttributes        =   05 (Isochronous)
Oct  2 03:55:20 compiler linux:       wMaxPacketSize      = 0000
Oct  2 03:55:20 compiler linux:       bInterval           =   01
Oct  2 03:55:20 compiler linux:       bRefresh            =   00
Oct  2 03:55:20 compiler linux:       bSynchAddress       =   00
Oct  2 03:55:20 compiler linux:   Alternate Setting:  1
Oct  2 03:55:20 compiler linux:     bLength             =   11 (!!!)
Oct  2 03:55:20 compiler linux:     bDescriptorType     =   04
Oct  2 03:55:20 compiler linux:     bInterfaceNumber    =   02
Oct  2 03:55:20 compiler linux:     bAlternateSetting   =   01
Oct  2 03:55:21 compiler linux:     bNumEndpoints       =   01
Oct  2 03:55:21 compiler linux:     bInterface Class:SubClass:Protocol =   01:02
:00
Oct  2 03:55:21 compiler linux:     iInterface          =   00
Oct  2 03:55:21 compiler linux:     Endpoint:
Oct  2 03:55:21 compiler linux:       bLength             =    9 (Audio)
Oct  2 03:55:21 compiler linux:       bDescriptorType     =   05
Oct  2 03:55:21 compiler linux:       bEndpointAddress    =   85 (in)
Oct  2 03:55:21 compiler linux:       bmAttributes        =   05 (Isochronous)
Oct  2 03:55:22 compiler linux:       wMaxPacketSize      = 005a
Oct  2 03:55:22 compiler linux:       bInterval           =   01
Oct  2 03:55:22 compiler linux:       bRefresh            =   00
Oct  2 03:55:22 compiler linux:       bSynchAddress       =   00
Oct  2 03:55:22 compiler linux:   Alternate Setting:  2
Oct  2 03:55:22 compiler linux:     bLength             =   11 (!!!)
Oct  2 03:55:22 compiler linux:     bDescriptorType     =   04
Oct  2 03:55:22 compiler linux:     bInterfaceNumber    =   02
Oct  2 03:55:23 compiler linux:     bAlternateSetting   =   02
Oct  2 03:55:23 compiler linux:     bNumEndpoints       =   01
Oct  2 03:55:23 compiler linux:     bInterface Class:SubClass:Protocol =   01:02
:00
Oct  2 03:55:23 compiler linux:     iInterface          =   00
Oct  2 03:55:23 compiler linux:     Endpoint:
Oct  2 03:55:23 compiler linux:       bLength             =    9 (Audio)
Oct  2 03:55:23 compiler linux:       bDescriptorType     =   05
Oct  2 03:55:23 compiler linux:       bEndpointAddress    =   85 (in)
Oct  2 03:55:24 compiler linux:       bmAttributes        =   05 (Isochronous)
Oct  2 03:55:24 compiler linux:       wMaxPacketSize      = 002e
Oct  2 03:55:24 compiler linux:       bInterval           =   01
Oct  2 03:55:24 compiler linux:       bRefresh            =   00
Oct  2 03:55:24 compiler linux:       bSynchAddress       =   00
Oct  2 03:55:24 compiler linux:   Alternate Setting:  3
Oct  2 03:55:24 compiler linux:     bLength             =   11 (!!!)
Oct  2 03:55:24 compiler linux:     bDescriptorType     =   04
Oct  2 03:55:25 compiler linux:     bInterfaceNumber    =   02
Oct  2 03:55:25 compiler linux:     bAlternateSetting   =   03
Oct  2 03:55:25 compiler linux:     bNumEndpoints       =   01
Oct  2 03:55:25 compiler linux:     bInterface Class:SubClass:Protocol =   01:02
:00
Oct  2 03:55:25 compiler linux:     iInterface          =   00
Oct  2 03:55:25 compiler linux:     Endpoint:
Oct  2 03:55:25 compiler linux:       bLength             =    9 (Audio)
Oct  2 03:55:25 compiler linux:       bDescriptorType     =   05
Oct  2 03:55:26 compiler linux:       bEndpointAddress    =   85 (in)
Oct  2 03:55:26 compiler linux:       bmAttributes        =   05 (Isochronous)
Oct  2 03:55:26 compiler linux:       wMaxPacketSize      = 0019
Oct  2 03:55:26 compiler linux:       bInterval           =   01
Oct  2 03:55:26 compiler linux:       bRefresh            =   00
Oct  2 03:55:26 compiler linux:       bSynchAddress       =   00
Oct  2 03:55:26 compiler linux:   Alternate Setting:  4
Oct  2 03:55:26 compiler linux:     bLength             =   11 (!!!)
Oct  2 03:55:26 compiler linux:     bDescriptorType     =   04
Oct  2 03:55:27 compiler linux:     bInterfaceNumber    =   02
Oct  2 03:55:27 compiler linux:     bAlternateSetting   =   04
Oct  2 03:55:27 compiler linux:     bNumEndpoints       =   01
Oct  2 03:55:27 compiler linux:     bInterface Class:SubClass:Protocol =   01:02
:00
Oct  2 03:55:27 compiler linux:     iInterface          =   00
Oct  2 03:55:27 compiler linux:     Endpoint:
Oct  2 03:55:27 compiler linux:       bLength             =    9 (Audio)
Oct  2 03:55:27 compiler linux:       bDescriptorType     =   05
Oct  2 03:55:27 compiler linux:       bEndpointAddress    =   85 (in)
Oct  2 03:55:28 compiler linux:       bmAttributes        =   05 (Isochronous)
Oct  2 03:55:28 compiler linux:       wMaxPacketSize      = 0010
Oct  2 03:55:28 compiler linux:       bInterval           =   01
Oct  2 03:55:28 compiler linux:       bRefresh            =   00
Oct  2 03:55:28 compiler linux:       bSynchAddress       =   00
Oct  2 03:55:28 compiler linux: hub: port 2 reset change
> Philips Webcam PCA645VC

Configuration hexdump (length = 1492):
09 02 D4 05 03 01 00 80 FA 09 04 00 00 02 0A FF 
00 00 07 05 82 03 01 00 01 07 05 84 01 00 00 01 
09 04 00 01 02 0A FF 00 00 07 05 82 03 01 00 01 
07 05 84 01 AE 03 01 09 04 00 02 02 0A FF 00 00 
07 05 82 03 01 00 01 07 05 84 01 20 03 01 09 04 
00 03 02 0A FF 00 00 07 05 82 03 01 00 01 07 05 
84 01 BC 02 01 09 04 00 04 02 0A FF 00 00 07 05 
82 03 01 00 01 07 05 84 01 58 02 01 09 04 00 05 
02 0A FF 00 00 07 05 82 03 01 00 01 07 05 84 01 
F4 01 01 09 04 00 06 02 0A FF 00 00 07 05 82 03 
01 00 01 07 05 84 01 90 01 01 09 04 00 07 02 0A 
FF 00 00 07 05 82 03 01 00 01 07 05 84 01 2C 01 
01 09 04 00 08 02 0A FF 00 00 07 05 82 03 01 00 
01 07 05 84 01 C8 00 01 0B 04 01 00 00 01 01 00 
00 01 00 09 24 01 90 00 1E 00 01 02 0C 24 02 01 
01 02 02 01 04 00 00 00 09 24 03 02 01 01 00 01 
00 0B 04 02 00 01 01 02 00 00 01 00 09 05 85 05 
00 00 01 00 00 0B 04 02 01 01 01 02 00 00 01 00 
07 24 01 02 01 01 00 0B 24 02 01 01 01 08 01 80 
BB 00 09 05 85 05 32 00 01 00 00 07 25 01 00 00 
00 00 0B 04 02 02 01 01 02 00 00 01 00 07 24 01 
02 01 01 00 0B 24 02 01 01 02 10 01 80 BB 00 09 
05 85 05 62 00 01 00 00 07 25 01 00 00 00 00 0B 
04 02 03 01 01 02 00 00 01 00 07 24 01 02 01 01 
00 0B 24 02 01 01 03 18 01 80 BB 00 09 05 85 05 
90 00 01 00 00 07 25 01 00 00 00 00 0B 04 02 04 
01 01 02 00 00 01 00 07 24 01 02 01 01 00 0B 24 
02 01 01 01 08 01 44 AC 00 09 05 85 05 2F 00 01 
00 00 07 25 01 00 00 00 00 0B 04 02 05 01 01 02 
00 00 01 00 07 24 01 02 01 01 00 0B 24 02 01 01 
02 10 01 44 AC 00 09 05 85 05 5A 00 01 00 00 07 
25 01 00 00 00 00 0B 04 02 06 01 01 02 00 00 01 
00 07 24 01 02 01 01 00 0B 24 02 01 01 03 18 01 
44 AC 00 09 05 85 05 86 00 01 00 00 07 25 01 00 
00 00 00 0B 04 02 07 01 01 02 00 00 01 00 07 24 
01 02 01 01 00 0B 24 02 01 01 01 08 01 00 7D 00 
09 05 85 05 22 00 01 00 00 07 25 01 00 00 00 00 
0B 04 02 08 01 01 02 00 00 01 00 07 24 01 02 01 
01 00 0B 24 02 01 01 02 10 01 00 7D 00 09 05 85 
05 42 00 01 00 00 07 25 01 00 00 00 00 0B 04 02 
09 01 01 02 00 00 01 00 07 24 01 02 01 01 00 0B 
24 02 01 01 03 18 01 00 7D 00 09 05 85 05 62 00 
01 00 00 07 25 01 00 00 00 00 0B 04 02 0A 01 01 
02 00 00 01 00 07 24 01 02 01 01 00 0B 24 02 01 
01 01 08 01 C0 5D 00 09 05 85 05 1A 00 01 00 00 
07 25 01 00 00 00 00 0B 04 02 0B 01 01 02 00 00 
01 00 07 24 01 02 01 01 00 0B 24 02 01 01 02 10 
01 C0 5D 00 09 05 85 05 32 00 01 00 00 07 25 01 
00 00 00 00 0B 04 02 0C 01 01 02 00 00 01 00 07 
24 01 02 01 01 00 0B 24 02 01 01 03 18 01 C0 5D 
00 09 05 85 05 4A 00 01 00 00 07 25 01 00 00 00 
00 0B 04 02 0D 01 01 02 00 00 01 00 07 24 01 02 
01 01 00 0B 24 02 01 01 01 08 01 22 56 00 09 05 
85 05 18 00 01 00 00 07 25 01 00 00 00 00 0B 04 
02 0E 01 01 02 00 00 01 00 07 24 01 02 01 01 00 
0B 24 02 01 01 02 10 01 22 56 00 09 05 85 05 2E 
00 01 00 00 07 25 01 00 00 00 00 0B 04 02 0F 01 
01 02 00 00 01 00 07 24 01 02 01 01 00 0B 24 02 
01 01 03 18 01 22 56 00 09 05 85 05 44 00 01 00 
00 07 25 01 00 00 00 00 0B 04 02 10 01 01 02 00 
00 01 00 07 24 01 02 01 01 00 0B 24 02 01 01 01 
08 01 80 3E 00 09 05 85 05 12 00 01 00 00 07 25 
01 00 00 00 00 0B 04 02 11 01 01 02 00 00 01 00 
07 24 01 02 01 01 00 0B 24 02 01 01 02 10 01 80 
3E 00 09 05 85 05 22 00 01 00 00 07 25 01 00 00 
00 00 0B 04 02 12 01 01 02 00 00 01 00 07 24 01 
02 01 01 00 0B 24 02 01 01 03 18 01 80 3E 00 09 
05 85 05 32 00 01 00 00 07 25 01 00 00 00 00 0B 
04 02 13 01 01 02 00 00 01 00 07 24 01 02 01 01 
00 0B 24 02 01 01 01 08 01 E0 2E 00 09 05 85 05 
0E 00 01 00 00 07 25 01 00 00 00 00 0B 04 02 14 
01 01 02 00 00 01 00 07 24 01 02 01 01 00 0B 24 
02 01 01 02 10 01 E0 2E 00 09 05 85 05 1A 00 01 
00 00 07 25 01 00 00 00 00 0B 04 02 15 01 01 02 
00 00 01 00 07 24 01 02 01 01 00 0B 24 02 01 01 
03 18 01 E0 2E 00 09 05 85 05 26 00 01 00 00 07 
25 01 00 00 00 00 0B 04 02 16 01 01 02 00 00 01 
00 07 24 01 02 01 01 00 0B 24 02 01 01 01 08 01 
11 2B 00 09 05 85 05 0D 00 01 00 00 07 25 01 00 
00 00 00 0B 04 02 17 01 01 02 00 00 01 00 07 24 
01 02 01 01 00 0B 24 02 01 01 02 10 01 11 2B 00 
09 05 85 05 19 00 01 00 00 07 25 01 00 00 00 00 
0B 04 02 18 01 01 02 00 00 01 00 07 24 01 02 01 
01 00 0B 24 02 01 01 03 18 01 11 2B 00 09 05 85 
05 23 00 01 00 00 07 25 01 00 00 00 00 0B 04 02 
19 01 01 02 00 00 01 00 07 24 01 02 01 01 00 0B 
24 02 01 01 01 08 01 40 1F 00 09 05 85 05 0A 00 
01 00 00 07 25 01 00 00 00 00 0B 04 02 1A 01 01 
02 00 00 01 00 07 24 01 02 01 01 00 0B 24 02 01 
01 02 10 01 40 1F 00 09 05 85 05 10 00 01 00 00 
07 25 01 00 00 00 00 0B 04 02 1B 01 01 02 00 00 
01 00 07 24 01 02 01 01 00 0B 24 02 01 01 03 18 
01 40 1F 00 09 05 85 05 1A 00 01 00 00 07 25 01 
00 00 00 00 

09 02 D4 05 03 01 00 80 FA              Configuration, 1492 bytes, 3 interfaces, 
config #1,
 500 mA
09 04 00 00 02 0A FF 00 00              Interface #0, alt #0, 2 endpoints, class 0A:FF
07 05 82 03 01 00 01                    Endpoint 0x82, Int, maxpacket = 1, intval = 1
07 05 84 01 00 00 01                    Endpoint 0x84, Iso, maxpacket = 0, intval = 1
09 04 00 01 02 0A FF 00 00              Interface #0, alt #1, 2 endpoints, class 0A:FF
07 05 82 03 01 00 01                    Endpoint 0x82, Int, maxpacket = 1, intval = 1
07 05 84 01 AE 03 01                    Endpoint 0x84, Iso, maxpacket = 942, intval = 1
09 04 00 02 02 0A FF 00 00              Interface #0, alt #2, 2 endpoints, class 0A:FF
07 05 82 03 01 00 01                    Endpoint 0x82, Int, maxpacket = 1, intval = 1
07 05 84 01 20 03 01                    Endpoint 0x84, Iso, maxpacket = 800, intval = 1
09 04 00 03 02 0A FF 00 00              Interface #0, alt #3, 2 endpoints, class 0A:FF
07 05 82 03 01 00 01                    Endpoint 0x82, Int, maxpacket = 1, intval = 1
07 05 84 01 BC 02 01                    Endpoint 0x84, Iso, maxpacket = 700, intval = 1
09 04 00 04 02 0A FF 00 00              Interface #0, alt #4, 2 endpoints, class 0A:FF
07 05 82 03 01 00 01                    Endpoint 0x82, Int, maxpacket = 1, intval = 1
07 05 84 01 58 02 01                    Endpoint 0x84, Iso, maxpacket = 600, intval = 1
09 04 00 05 02 0A FF 00 00              Interface #0, alt #5, 2 endpoints, class 0A:FF
07 05 82 03 01 00 01                    Endpoint 0x82, Int, maxpacket = 1, intval = 1
07 05 84 01 F4 01 01                    Endpoint 0x84, Iso, maxpacket = 500, intval = 1
09 04 00 06 02 0A FF 00 00              Interface #0, alt #6, 2 endpoints, class 0A:FF
07 05 82 03 01 00 01                    Endpoint 0x82, Int, maxpacket = 1, intval = 1
07 05 84 01 90 01 01                    Endpoint 0x84, Iso, maxpacket = 400, intval = 1
09 04 00 07 02 0A FF 00 00              Interface #0, alt #7, 2 endpoints, class 0A:FF
07 05 82 03 01 00 01                    Endpoint 0x82, Int, maxpacket = 1, intval = 1
07 05 84 01 2C 01 01                    Endpoint 0x84, Iso, maxpacket = 300, intval = 1
09 04 00 08 02 0A FF 00 00              Interface #0, alt #8, 2 endpoints, class 0A:FF
07 05 82 03 01 00 01                    Endpoint 0x82, Int, maxpacket = 1, intval = 1
07 05 84 01 C8 00 01                    Endpoint 0x84, Iso, maxpacket = 200, intval = 1

0B 04 01 00 00 01 01 00 00 01 00        Interface #1, alt #0, 0 endpoints, class 01:01
 (audio:audioctrontrol), 4 extra bytes?
09 24 01 90 00 1E 00 01 02              AC Interface, type Header, USB-spec 0.9, 
length = 3
0, collection = 1, first = 2
0C 24 02 01 01 02 02 01 04 00 00 00     AC Interface, type Input, term# 1, type = 0
x0201, assoc = 2, channels = 1, config = 0x0004
09 24 03 02 01 01 00 01 00              AC Interface, type Output, term# 2, type = 
0x0101, 
assoc = 0, source = 1

0B 04 02 00 01 01 02 00 00 01 00        Interface #2, alt #0, 1 endpoint, class 01:02 
(audio:audiostreaming), 4 extra?
09 05 85 05 00 00 01 00 00              Endpoint 0x85, Iso?, maxpacket = 0, intval = 
1, 2 e
xtra bytes?
0B 04 02 01 01 01 02 00 00 01 00        Interface #2, alt #1, 1 endpoint, class 01:02 (
audio:audiostreaming), 4 extra?
07 24 01 02 01 01 00                    AS Interface, AS-general, term #2, delay 1, 
format = 0x00
01
0B 24 02 01 01 01 08 01 80 BB 00        AS Interface, AS-format, 
09 05 85 05 32 00 01 00 00              Endpoint 0x85, Iso?, maxpacket = 50, intval = 
1, 2 
extra bytes?
07 25 01 00 00 00 00 
0B 04 02 02 01 01 02 00 00 01 00        Interface #2, alt #2, 
07 24 01 02 01 01 00 
0B 24 02 01 01 02 10 01 80 BB 00
09 05 85 05 62 00 01 00 00 
07 25 01 00 00 00 00 
0B 04 02 03 01 01 02 00 00 01 00        Interface #2, alt #3
07 24 01 02 01 01 00 
0B 24 02 01 01 03 18 01 80 BB 00 
09 05 85 05 90 00 01 00 00 
07 25 01 00 00 00 00 
0B 04 02 04 01 01 02 00 00 01 00        Interface #2, alt #4
07 24 01 02 01 01 00 
0B 24 02 01 01 01 08 01 44 AC 00 
09 05 85 05 2F 00 01 00 00 
07 25 01 00 00 00 00 
0B 04 02 05 01 01 02 00 00 01 00        Interface #2, alt #5
07 24 01 02 01 01 00 
0B 24 02 01 01 02 10 01 44 AC 00 
09 05 85 05 5A 00 01 00 00 
07 25 01 00 00 00 00 
0B 04 02 06 01 01 02 00 00 01 00        Interface #2, alt #6
07 24 01 02 01 01 00 
0B 24 02 01 01 03 18 01 44 AC 00 
09 05 85 05 86 00 01 00 00 
07 25 01 00 00 00 00 
0B 04 02 07 01 01 02 00 00 01 00        Interface #2, alt #7 
07 24 01 02 01 01 00 
0B 24 02 01 01 01 08 01 00 7D 00 
09 05 85 05 22 00 01 00 00 
07 25 01 00 00 00 00 
0B 04 02 08 01 01 02 00 00 01 00        Interface #2, alt #8 
07 24 01 02 01 01 00 
0B 24 02 01 01 02 10 01 00 7D 00 
09 05 85 05 42 00 01 00 00 
07 25 01 00 00 00 00 
0B 04 02 09 01 01 02 00 00 01 00        Interface #2, alt #9 
07 24 01 02 01 01 00 
0B 24 02 01 01 03 18 01 00 7D 00 
09 05 85 05 62 00 01 00 00 
07 25 01 00 00 00 00 
0B 04 02 0A 01 01 02 00 00 01 00        Interface #2, alt #10 
07 24 01 02 01 01 00 
0B 24 02 01 01 01 08 01 C0 5D 00 
09 05 85 05 1A 00 01 00 00 
07 25 01 00 00 00 00 
0B 04 02 0B 01 01 02 00 00 01 00        Interface #2, alt #11
07 24 01 02 01 01 00 
0B 24 02 01 01 02 10 01 C0 5D 00 
09 05 85 05 32 00 01 00 00 
07 25 01 00 00 00 00 
0B 04 02 0C 01 01 02 00 00 01 00        Interface #2, alt #12
07 24 01 02 01 01 00 
0B 24 02 01 01 03 18 01 C0 5D 00 
09 05 85 05 4A 00 01 00 00 
07 25 01 00 00 00 00 
0B 04 02 0D 01 01 02 00 00 01 00        Interface #2, alt #13
07 24 01 02 01 01 00 
0B 24 02 01 01 01 08 01 22 56 00 
09 05 85 05 18 00 01 00 00 
07 25 01 00 00 00 00 
0B 04 02 0E 01 01 02 00 00 01 00        Interface #2, alt #14
07 24 01 02 01 01 00 
0B 24 02 01 01 02 10 01 22 56 00 
09 05 85 05 2E 00 01 00 00 
07 25 01 00 00 00 00 
0B 04 02 0F 01 01 02 00 00 01 00        Interface #2, alt #15
07 24 01 02 01 01 00 
0B 24 02 01 01 03 18 01 22 56 00 
09 05 85 05 44 00 01 00 00 
07 25 01 00 00 00 00 
0B 04 02 10 01 01 02 00 00 01 00        Interface #2, alt #16
07 24 01 02 01 01 00 
0B 24 02 01 01 01 08 01 80 3E 00 
09 05 85 05 12 00 01 00 00 
07 25 01 00 00 00 00 
0B 04 02 11 01 01 02 00 00 01 00        Interface #2, alt #17
07 24 01 02 01 01 00 
0B 24 02 01 01 02 10 01 80 3E 00 
09 05 85 05 22 00 01 00 00 
07 25 01 00 00 00 00 
0B 04 02 12 01 01 02 00 00 01 00        Interface #2, alt #18
07 24 01 02 01 01 00 
0B 24 02 01 01 03 18 01 80 3E 00 
09 05 85 05 32 00 01 00 00 
07 25 01 00 00 00 00 
0B 04 02 13 01 01 02 00 00 01 00        Interface #2, alt #19
07 24 01 02 01 01 00 
0B 24 02 01 01 01 08 01 E0 2E 00 
09 05 85 05 0E 00 01 00 00 
07 25 01 00 00 00 00 
0B 04 02 14 01 01 02 00 00 01 00        Interface #2, alt #20
07 24 01 02 01 01 00 
0B 24 02 01 01 02 10 01 E0 2E 00 
09 05 85 05 1A 00 01 00 00 
07 25 01 00 00 00 00 
0B 04 02 15 01 01 02 00 00 01 00        Interface #2, alt #21
07 24 01 02 01 01 00 
0B 24 02 01 01 03 18 01 E0 2E 00 
09 05 85 05 26 00 01 00 00 
07 25 01 00 00 00 00 
0B 04 02 16 01 01 02 00 00 01 00        Interface #2, alt #22
07 24 01 02 01 01 00 
0B 24 02 01 01 01 08 01 11 2B 00 
09 05 85 05 0D 00 01 00 00 
07 25 01 00 00 00 00 
0B 04 02 17 01 01 02 00 00 01 00        Interface #2, alt #23
07 24 01 02 01 01 00 
0B 24 02 01 01 02 10 01 11 2B 00 
09 05 85 05 19 00 01 00 00 
07 25 01 00 00 00 00 
0B 04 02 18 01 01 02 00 00 01 00        Interface #2, alt #24
07 24 01 02 01 01 00 
0B 24 02 01 01 03 18 01 11 2B 00 
09 05 85 05 23 00 01 00 00 
07 25 01 00 00 00 00 
0B 04 02 19 01 01 02 00 00 01 00        Interface #2, alt #25
07 24 01 02 01 01 00 
0B 24 02 01 01 01 08 01 40 1F 00 
09 05 85 05 0A 00 01 00 00 
07 25 01 00 00 00 00 
0B 04 02 1A 01 01 02 00 00 01 00        Interface #2, alt #26
07 24 01 02 01 01 00 
0B 24 02 01 01 02 10 01 40 1F 00 
09 05 85 05 10 00 01 00 00 
07 25 01 00 00 00 00 
0B 04 02 1B 01 01 02 00 00 01 00        Interface #2, alt #27
07 24 01 02 01 01 00 
0B 24 02 01 01 03 18 01 40 1F 00 
09 05 85 05 1A 00 01 00 00 
07 25 01 00 00 00 00 

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to