Hi,
I have an interesting problem -- or hopefully just a question.
I have a Creative WebCam Live! and I'm trying to make it work on my Dell
600m notebook. The camera actually works fine if I plug it in directly
into a notebook's USB port. However, I'd like the camera attached to my
Dell's Advanced Port Replicator (model PR01K), which is not working and
hence this e-mail.
As you can see below, the port replicator has three 2.0 USB UHCI ports
and
one EHCI. For power reasons I am obviously connecting to the latter (I
also tried the other ones w/o success).
Thus, I'd like to know if this is a *bug* or if simply the port
replicator
cannot support 'it' (for some reason I'd like to know). By 'it', I am
not sure if the problem is specific only to my webcam or it is a general
problem such as: 1.1 isoc transfers on 2.0 USB ports, etc. Note that the
webcam is a 1.1 USB device and the docking ports are 2.0. However, my
notebook ports are 2.0 too. In sum, I'm not sure how to present this
problem except to say that it doesn't work with my webcam.
I've attached pretty much everything I could think of below. Even the
diff
of 'strace gqcam' between: attached to my notebook directly (working)
and attached to the docking station (not working).
The error I get is a -ENOSYS (Function not implemented) as you can see
on the dmesg log and the 'strace gqcam' output. I don't know exactly
which 'function'(ality) it is actually trying to access.
Any help would be appreciated. Thanks,
Andre
# ---------------------------------------------------------------
# cat /proc/version
Linux version 2.6.13-suspend2-r4 ([EMAIL PROTECTED]) (gcc version 3.4.3-20050110
(Gentoo 3.4.3.20050110-r2, ssp-3.4.3.20050110-0, pie-8.7.7)) #1 SMP Sat
Nov 19 20:19:51 EST 2005
# ---------------------------------------------------------------
# sh scripts/ver_linux
Linux zeco 2.6.13-suspend2-r4 #1 SMP Sat Nov 19 20:19:51 EST 2005 i686
Intel(R) Pentium(R) M processor 1.60GHz GenuineIntel GNU/Linux
Gnu C 3.4.3-20050110
Gnu make 3.80
binutils 2.15.92.0.2
util-linux 2.12r
mount 2.12r
module-init-tools 3.0
e2fsprogs 1.38
reiserfsprogs 3.6.19
reiser4progs line
PPP 2.4.2
Linux C Library 2.3.5
Dynamic linker (ldd) 2.3.5
Procps 3.2.5
Net-tools 1.60
Kbd 1.12
Sh-utils 5.2.1
udev 068
Modules Loaded ipw2200 firmware_class spca5xx videodev tg3 evdev
snd_pcm_oss snd_mixer_oss snd_seq_oss snd_seq_midi_event snd_seq
snd_seq_device snd_intel8x0 snd_ac97_codec snd_pcm snd_timer snd
soundcore snd_page_alloc ieee80211 ieee80211_crypt fglrx intel_agp
agpgart
# ---------------------------------------------------------------
# dmesg (after plugging-in the camera. camera is properly recognized)
[...]
usb 1-6.4: new full speed USB device using ehci_hcd and address 4
.../spca5xx.c: USB SPCA5XX camera found. Type Creative Live!
Zc301+Tas5130c
.../spca5xx.c: [spca5xx_probe:8652] Camera type JPEG
.../zc3xx.h: [zcxx_probeSensor:108] sensor answer1 0
.../zc3xx.h: [zcxx_probeSensor:160] sensor answervga 0
.../zc3xx.h: [zcxx_probeSensor:160] sensor answervga 0
.../zc3xx.h: [zcxx_probeSensor:160] sensor answervga 0
.../zc3xx.h: [zcxx_probeSensor:160] sensor answervga 0
.../zc3xx.h: [zcxx_probeSensor:160] sensor answervga 0
.../zc3xx.h: [zcxx_probeSensor:160] sensor answervga 0
.../zc3xx.h: [zcxx_probeSensor:160] sensor answervga 0
.../zc3xx.h: [zcxx_probeSensor:160] sensor answervga 0
.../zc3xx.h: [zc3xx_config:414] Find Sensor HV713(c)
.../spca5xx.c: [spca5xx_getcapability:2525] maxw 640 maxh 480 minw 176
minh 144
[...]
# ---------------------------------------------------------------
# dmesg after trying to open the webcam (using gqcam)
[...]
.../spca5xx.c: init isoc: usb_submit_urb(0) ret -38
.../spca5xx.c: [spca5xx_open:4589] DEALLOC error on init_Isoc
[...]
# ---------------------------------------------------------------
# lspci -v
[...]
0000:00:1d.0 USB Controller: Intel Corporation 82801DB/DBL/DBM
(ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (rev 01) (prog-if 00 [UHCI])
Subsystem: Dell: Unknown device 011e
Flags: bus master, medium devsel, latency 0, IRQ 11
I/O ports at bf80 [size=32]
0000:00:1d.1 USB Controller: Intel Corporation 82801DB/DBL/DBM
(ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (rev 01) (prog-if 00 [UHCI])
Subsystem: Dell: Unknown device 011e
Flags: bus master, medium devsel, latency 0, IRQ 11
I/O ports at bf40 [size=32]
0000:00:1d.2 USB Controller: Intel Corporation 82801DB/DBL/DBM
(ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (rev 01) (prog-if 00 [UHCI])
Subsystem: Dell: Unknown device 011e
Flags: bus master, medium devsel, latency 0, IRQ 11
I/O ports at bf20 [size=32]
0000:00:1d.7 USB Controller: Intel Corporation 82801DB/DBM (ICH4/ICH4-M)
USB2 EHCI Controller (rev 01) (prog-if 20 [EHCI])
Subsystem: Dell: Unknown device 011e
Flags: bus master, medium devsel, latency 0, IRQ 11
Memory at f4fffc00 (32-bit, non-prefetchable) [size=1K]
Capabilities: [50] Power Management version 2
Capabilities: [58] #0a [2080]
[...]
# ---------------------------------------------------------------
# diff between 'strace gqcam'. The first block is the 'working' part
(when attached to my notebook directly) and the second block is the
output when attached to my docking station.
< lstat64("/etc/gtk/gtkrc", 0xbf9317fc) = -1 ENOENT (No such file or
directory)
< lstat64("/home/amadeira/.gtkrc", 0xbf9317fc) = -1 ENOENT (No such file
or directory)
< shmget(IPC_PRIVATE, 393216, IPC_CREAT|0777) = 17760259
< shmat(17760259, 0, 0)
< write(3, "\224\1\4\0\2\0\340\0\3\0\17\1\0rop+h\1\0", 20) = 20
< read(3,
"\1\1%\0\0\0\0\0\2\0\200\0\0\0\0\0\0\0\0\0\0\0\0\0\240\200"..., 32) = 32
< shmctl(17760259, IPC_64|IPC_RMID, 0) = 0
< open("/dev/video", O_RDWR) = 4
< futex(0x8058bac, FUTEX_WAKE, 1) = 0
---
lstat64("/etc/gtk/gtkrc", 0xbf98cebc) = -1 ENOENT (No such file or
directory)
lstat64("/home/amadeira/.gtkrc", 0xbf98cebc) = -1 ENOENT (No such file
or directory)
shmget(IPC_PRIVATE, 393216, IPC_CREAT|0777) = 1835010
shmat(1835010, 0, 0) write(3,
"\224\1\4\0\2\0\300\0\2\0\34\0\0rop+h\1\0", 20) = 20
read(3, "\1\1%\0\0\0\0\0\2\0\200\0\0\0\0\0\0\0\0\0\0\0\0\0X\277"...,
32) = 32
shmctl(1835010, IPC_64|IPC_RMID, 0) = 0
open("/dev/video", O_RDWR) = -1 ENOSYS (Function not
implemented)
# ---------------------------------------------------------------
# cat /proc/bus/usb/devices
[...]
T: Bus=01 Lev=02 Prnt=02 Port=03 Cnt=01 Dev#= 4 Spd=12 MxCh= 0
D: Ver= 1.10 Cls=ff(vend.) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=041e ProdID=4036 Rev= 1.00
S: Manufacturer=Creative Labs
S: Product=WebCam Live!
C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=160mA
I: If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=spca5xx
E: Ad=81(I) Atr=01(Isoc) MxPS= 0 Ivl=1ms
E: Ad=82(I) Atr=03(Int.) MxPS= 8 Ivl=10ms
I: If#= 0 Alt= 1 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=spca5xx
E: Ad=81(I) Atr=01(Isoc) MxPS= 128 Ivl=1ms
E: Ad=82(I) Atr=03(Int.) MxPS= 8 Ivl=10ms
I: If#= 0 Alt= 2 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=spca5xx
E: Ad=81(I) Atr=01(Isoc) MxPS= 192 Ivl=1ms
E: Ad=82(I) Atr=03(Int.) MxPS= 8 Ivl=10ms
I: If#= 0 Alt= 3 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=spca5xx
E: Ad=81(I) Atr=01(Isoc) MxPS= 256 Ivl=1ms
E: Ad=82(I) Atr=03(Int.) MxPS= 8 Ivl=10ms
I: If#= 0 Alt= 4 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=spca5xx
E: Ad=81(I) Atr=01(Isoc) MxPS= 384 Ivl=1ms
E: Ad=82(I) Atr=03(Int.) MxPS= 8 Ivl=10ms
I: If#= 0 Alt= 5 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=spca5xx
E: Ad=81(I) Atr=01(Isoc) MxPS= 512 Ivl=1ms
E: Ad=82(I) Atr=03(Int.) MxPS= 8 Ivl=10ms
I: If#= 0 Alt= 6 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=spca5xx
E: Ad=81(I) Atr=01(Isoc) MxPS= 768 Ivl=1ms
E: Ad=82(I) Atr=03(Int.) MxPS= 8 Ivl=10ms
I: If#= 0 Alt= 7 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=spca5xx
E: Ad=81(I) Atr=01(Isoc) MxPS=1023 Ivl=1ms
E: Ad=82(I) Atr=03(Int.) MxPS= 8 Ivl=10ms
[...]
# ---------------------------------------------------------------
# lsusb -v
[...]
Bus 001 Device 003: ID 041e:4036 Creative Technology, Ltd
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 1.10
bDeviceClass 255 Vendor Specific Class
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 8
idVendor 0x041e Creative Technology, Ltd
idProduct 0x4036
bcdDevice 1.00
iManufacturer 1 Creative Labs
iProduct 2 WebCam Live!
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 193
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
MaxPower 160mA
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 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type none
wMaxPacketSize 0
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type none
wMaxPacketSize 8
bInterval 10
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 1
bNumEndpoints 2
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 255 Vendor Specific Subclass
bInterfaceProtocol 255 Vendor Specific Protocol
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type none
wMaxPacketSize 128
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type none
wMaxPacketSize 8
bInterval 10
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 2
bNumEndpoints 2
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 255 Vendor Specific Subclass
bInterfaceProtocol 255 Vendor Specific Protocol
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type none
wMaxPacketSize 192
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type none
wMaxPacketSize 8
bInterval 10
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 3
bNumEndpoints 2
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 255 Vendor Specific Subclass
bInterfaceProtocol 255 Vendor Specific Protocol
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type none
wMaxPacketSize 256
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type none
wMaxPacketSize 8
bInterval 10
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 4
bNumEndpoints 2
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 255 Vendor Specific Subclass
bInterfaceProtocol 255 Vendor Specific Protocol
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type none
wMaxPacketSize 384
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type none
wMaxPacketSize 8
bInterval 10
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 5
bNumEndpoints 2
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 255 Vendor Specific Subclass
bInterfaceProtocol 255 Vendor Specific Protocol
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type none
wMaxPacketSize 512
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type none
wMaxPacketSize 8
bInterval 10
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 6
bNumEndpoints 2
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 255 Vendor Specific Subclass
bInterfaceProtocol 255 Vendor Specific Protocol
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type none
wMaxPacketSize 768
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type none
wMaxPacketSize 8
bInterval 10
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 7
bNumEndpoints 2
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 255 Vendor Specific Subclass
bInterfaceProtocol 255 Vendor Specific Protocol
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type none
wMaxPacketSize 1023
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type none
wMaxPacketSize 8
bInterval 10
Language IDs: (length=4)
0409 English(US)
[...]