Hi,

I have a problem with my sn9c102 webcam. After some debugging with Luca
Ricolia (see below),

Luca recognized that the problem comes from usb_submit_urb function, and
probably was introduced recently

in 2.6.20 kernel, maybe in ubuntu only. Can anyone help us with this ?


Best regards

Marek



lsusb:

Bus 002 Device 010: ID 0c45:608f Microdia
Bus 002 Device 005: ID 1131:1001 Integrated System Solution Corp.
KY-BT100 Bluetooth Adapter
Bus 002 Device 002: ID 045e:006a Microsoft Corp.


uname -a

Linux wiejca97c 2.6.20-15-generic #2 SMP Sun Apr 15 06:17:24 UTC 2007
x86_64 GNU/Linux


lspci:

00:00.0 RAM memory: nVidia Corporation C51 Host Bridge (rev a2)
00:00.1 RAM memory: nVidia Corporation C51 Memory Controller 0 (rev a2)
00:00.2 RAM memory: nVidia Corporation C51 Memory Controller 1 (rev a2)
00:00.3 RAM memory: nVidia Corporation C51 Memory Controller 5 (rev a2)
00:00.4 RAM memory: nVidia Corporation C51 Memory Controller 4 (rev a2)
00:00.5 RAM memory: nVidia Corporation C51 Host Bridge (rev a2)
00:00.6 RAM memory: nVidia Corporation C51 Memory Controller 3 (rev a2)
00:00.7 RAM memory: nVidia Corporation C51 Memory Controller 2 (rev a2)
00:02.0 PCI bridge: nVidia Corporation C51 PCI Express Bridge (rev a1)
00:03.0 PCI bridge: nVidia Corporation C51 PCI Express Bridge (rev a1)
00:04.0 PCI bridge: nVidia Corporation C51 PCI Express Bridge (rev a1)
00:05.0 VGA compatible controller: nVidia Corporation C51PV [GeForce
6150] (rev a2)
00:09.0 RAM memory: nVidia Corporation MCP51 Host Bridge (rev a2)
00:0a.0 ISA bridge: nVidia Corporation MCP51 LPC Bridge (rev a3)
00:0a.1 SMBus: nVidia Corporation MCP51 SMBus (rev a3)
00:0a.2 RAM memory: nVidia Corporation MCP51 Memory Controller 0 (rev a3)
00:0b.0 USB Controller: nVidia Corporation MCP51 USB Controller (rev a3)
00:0b.1 USB Controller: nVidia Corporation MCP51 USB Controller (rev a3)
00:0d.0 IDE interface: nVidia Corporation MCP51 IDE (rev a1)
00:0e.0 IDE interface: nVidia Corporation MCP51 Serial ATA Controller
(rev a1)
00:0f.0 IDE interface: nVidia Corporation MCP51 Serial ATA Controller
(rev a1)
00:10.0 PCI bridge: nVidia Corporation MCP51 PCI Bridge (rev a2)
00:10.1 Audio device: nVidia Corporation MCP51 High Definition Audio
(rev a2)
00:14.0 Bridge: nVidia Corporation MCP51 Ethernet Controller (rev a3)
00:18.0 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron]
HyperTransport Technology Configuration
00:18.1 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron]
Address Map
00:18.2 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron]
DRAM Controller
00:18.3 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron]
Miscellaneous Control
04:05.0 FireWire (IEEE 1394): Texas Instruments TSB43AB22/A
IEEE-1394a-2000 Controller (PHY/Link)
04:08.0 Network controller: RaLink RT2561/RT61 rev B 802.11g


CHAT:

Hi
17:51:48
l_r  17:51:52
i miswrote in my previous email: i didn't not test the driver on
ubuntu-feisty yet, although i have it
mbrudka1  17:52:16
its not only feisty but also smd64 architecture :)
well, amd64
l_r  17:52:35
ok, videoview does not work definitly
mbrudka1  17:52:44
it doesn't
l_r  17:53:07
i know, it's compiled for 32-bit 
mbrudka1  17:53:27
I see
l_r  17:53:28
however do a simple cat
mbrudka1  17:53:41
however it seems vv finds all necessary libraries
l_r  17:54:07
do a simple cat on the video device and tell me the kernel messages
load the driver with debug=3 first
mbrudka1  17:56:31
May 13 17:55:49 wiejca97c kernel: [ 4322.911221] sn9c102: V4L2 driver
for                                                       SN9C1xx PC
Camera Controllers v1:1.44
May 13 17:55:49 wiejca97c kernel: [ 4322.911935] usbcore: registered
new                                                       interface
driver sn9c102
May 13 17:56:11 wiejca97c kernel: [ 4342.238572] usb 2-5: new full speed
USB device using ohci_hcd and address 7
May 13 17:56:11 wiejca97c kernel: [ 4342.427369] usb 2-5: configuration
#1 chosen from 1 choice
May 13 17:56:11 wiejca97c kernel: [ 4342.432668] usb 2-5: SN9C103 PC
Camera Controller detected (vid:pid 0x0C45:0x608F)
May 13 17:56:11 wiejca97c kernel: [ 4342.456929] usb 2-5:
[sn9c102_i2c_try_raw_read:404] I2C read failed for HV7131D image sensor
May 13 17:56:11 wiejca97c kernel: [ 4342.473116] usb 2-5:
[sn9c102_i2c_try_raw_read:404] I2C read failed for HV7131D image sensor
May 13 17:56:11 wiejca97c kernel: [ 4342.505470] usb 2-5:
[sn9c102_i2c_try_raw_read:404] I2C read failed for HV7131R image sensor
May 13 17:56:11 wiejca97c kernel: [ 4342.529751] usb 2-5:
[sn9c102_i2c_try_raw_read:404] I2C read failed for MI-0343 image sensor
May 13 17:56:11 wiejca97c kernel: [ 4342.554012] usb 2-5:
[sn9c102_i2c_try_raw_read:404] I2C read failed for MI-0360 image sensor
May 13 17:56:11 wiejca97c kernel: [ 4342.578290] usb 2-5:
[sn9c102_i2c_try_raw_read:404] I2C read failed for PAS106B image sensor
May 13 17:56:11 wiejca97c kernel: [ 4342.594468] usb 2-5:
[sn9c102_i2c_try_raw_read:404] I2C read failed for PAS106B image sensor
May 13 17:56:11 wiejca97c kernel: [ 4342.621428] usb 2-5:
[sn9c102_i2c_try_raw_read:404] I2C read failed for PAS202BCB image sensor
May 13 17:56:11 wiejca97c kernel: [ 4342.637609] usb 2-5:
[sn9c102_i2c_try_raw_read:404] I2C read failed for PAS202BCB image sensor
May 13 17:56:11 wiejca97c kernel: [ 4342.664579] usb 2-5:
[sn9c102_i2c_try_raw_read:404] I2C read failed for OV7630 image sensor
May 13 17:56:11 wiejca97c kernel: [ 4342.702337] usb 2-5: OV7630 image
sensor detected
May 13 17:56:11 wiejca97c kernel: [ 4342.702344] usb 2-5:
[sn9c102_usb_probe:3258] Support for OV7630 maintained by Luca Risolia
<[EMAIL PROTECTED]>
May 13 17:56:11 wiejca97c kernel: [ 4342.998962] usb 2-5:
[sn9c102_init:1666] Compressed video format is active, quality 1
May 13 17:56:11 wiejca97c kernel: [ 4343.012434] usb 2-5:
[sn9c102_init:1689] Image sensor supports 'global gain' control
May 13 17:56:12 wiejca97c kernel: [ 4343.020523] usb 2-5:
[sn9c102_init:1689] Image sensor supports 'exposure' control
May 13 17:56:12 wiejca97c kernel: [ 4343.028627] usb 2-5:
[sn9c102_init:1689] Image sensor supports 'white balance background:
red' control
May 13 17:56:12 wiejca97c kernel: [ 4343.036714] usb 2-5:
[sn9c102_init:1689] Image sensor supports 'white balance background:
blue' control
May 13 17:56:12 wiejca97c kernel: [ 4343.039412] usb 2-5:
[sn9c102_init:1689] Image sensor supports 'red balance' control
May 13 17:56:12 wiejca97c kernel: [ 4343.042120] usb 2-5:
[sn9c102_init:1689] Image sensor supports 'blue balance' control
May 13 17:56:12 wiejca97c kernel: [ 4343.050192] usb 2-5:
[sn9c102_init:1689] Image sensor supports 'auto adjust' control
May 13 17:56:12 wiejca97c kernel: [ 4343.058291] usb 2-5:
[sn9c102_init:1689] Image sensor supports 'vertical flip' control
May 13 17:56:12 wiejca97c kernel: [ 4343.060984] usb 2-5:
[sn9c102_init:1689] Image sensor supports 'green balance' control
May 13 17:56:12 wiejca97c kernel: [ 4343.069076] usb 2-5:
[sn9c102_init:1689] Image sensor supports 'band filter' control
May 13 17:56:12 wiejca97c kernel: [ 4343.077159] usb 2-5:
[sn9c102_init:1689] Image sensor supports 'rgb gamma' control
May 13 17:56:12 wiejca97c kernel: [ 4343.077168] usb 2-5: Initialization
succeeded
May 13 17:56:12 wiejca97c kernel: [ 4343.077202] usb 2-5: V4L2 device
registered as /dev/video0
May 13 17:56:12 wiejca97c kernel: [ 4343.077209] usb 2-5: Optional
device control through 'sysfs' interface ready
after plug in
l_r  17:57:04
ok
mbrudka1  17:57:07
[EMAIL PROTECTED]:~# cat < /dev/video0
-su: /dev/video0: No space left on device
and nothing in dmesg
l_r  17:57:26
it looks like a kernel bug
mbrudka1  17:57:49
related with usb hub bandwidth ?
l_r  17:57:56
yes
you are not the only person reporting this problem
mbrudka1  17:58:25
I'm afraid I have only one usb hub
l_r  17:58:36
other switched back to 2.6.20 and the drivers worked ok
mbrudka1  17:58:56
I saw a patch for this for spca5xx
l_r  17:59:22
wait a moment , i'll boot in kubuntu feisty
and try there
mbrudka1  17:59:27
My kernel is also 2.6.20
l_r  17:59:36
brb
mbrudka1  17:59:38
[EMAIL PROTECTED]:~# uname -a
Linux wiejca97c 2.6.20-15-generic #2 SMP Sun Apr 15 06:17:24 UTC 2007
x86_64 GNU/Linux
ok
l_r  17:59:48
ok, i have the same kernel
l_r opuścił(a) rozmowę (Zakończ: "Remote host closed the connection" ).
17:59:54
Użytkownik l_r wszedł na kanał #linux-projects
18:04:25
l_r  18:04:30
ok here i am
mbrudka1  18:04:32
welcom back
l_r  18:04:37
everything is working fine..
mbrudka1  18:04:53
[EMAIL PROTECTED]:~# lsusb
Bus 002 Device 007: ID 0c45:608f Microdia
l_r  18:04:56
Linux luca-laptop 2.6.20-15-generic #2 SMP Sun Apr 15 07:36:31 UTC 2007
i686 GNU/Linux
it sounds like a bug in the kernel
mbrudka1  18:05:43
What can I do then ?
l_r  18:05:58
report it to the kernel mailing list
i suggest that you try with official kernels first
as i know kubuntu uses a patched kernel
mbrudka1  18:06:31
I see. 
Then I suppose I shall report the bug vie ubuntu support.
l_r  18:07:26
basically open() fails
yes
mbrudka1  18:07:34
Right
I've installed your debugger for sn9c102. May it help somehow ?
l_r  18:09:25
well yes, run it, set debug to 3 , start capturing , try to use
videoview again and save the output
then send me the log by email
mbrudka1  18:12:25
debugger show nothing, butkernel  after videoview reported:
May 13 18:10:27 wiejca97c kernel: [ 5113.581786] usb 2-5: Moved SN9C1XX
register index to 0x00
May 13 18:10:27 wiejca97c kernel: [ 5113.581791] usb 2-5:
[sn9c102_store_reg:1078] Written bytes: 1
May 13 18:10:27 wiejca97c kernel: [ 5113.582239] usb 2-5:
[sn9c102_show_val:1109] Read bytes: 3, value: 16
May 13 18:10:27 wiejca97c kernel: [ 5113.582427] usb 2-5: Moved sensor
register index to 0x00
May 13 18:10:27 wiejca97c kernel: [ 5113.582432] usb 2-5:
[sn9c102_store_i2c_reg:1208] Written bytes: 1
May 13 18:10:27 wiejca97c kernel: [ 5113.598427] usb 2-5:
[sn9c102_show_i2c_val:1244] Read bytes: 3, value: 20
l_r  18:13:20
do you have a text editor?
mbrudka1  18:13:22
well, not after videoview, but after debugger
yes
l_r  18:13:27
open sn9c102_core.c
goto to the sn9c102_start_transfer() function
mbrudka1  18:14:05
ok
and ?
l_r  18:14:39
    for (i = 0; i < SN9C102_URBS; i++) {
        err = usb_submit_urb(cam->urb[i], GFP_KERNEL);
        if (err) {
            for (j = i-1; j >= 0; j--)
                usb_kill_urb(cam->urb[j]);
            DBG(1, "usb_submit_urb() failed, error %d", err);
            goto free_urbs;
        }
    }
i think usb_submit_urb fails there
wait a moment
    s8 i, j;
    int err = 0;
    PDBG("Packet size: %d", psz);
see that PDBG and add it at the beginning of the function..
then compile the driver, unload the one in memory, load the new module
again and report the number
do not forget to open() again, a simple cat will suffice
mbrudka1  18:20:25
May 13 18:20:16 wiejca97c kernel: [ 5642.952034] usb 2-5:
[/var/install/sn9c1xx-1.44/sn9c102_core.c:sn9c102_start_transfer:873]
Packet size: 1003
l_r  18:20:55
correct
or (i = 0; i < SN9C102_URBS; i++) {
        err = usb_submit_urb(cam->urb[i], GFP_KERNEL);
that func  fails for some reason . you can make sure of this by adding a
debug line like PDBG("err %d", err) after the line above
mbrudka1  18:26:32
May 13 18:26:22 wiejca97c kernel: [ 5973.046745] usb 2-5:
[/var/install/sn9c1xx-1.44/sn9c102_core.c:sn9c102_start_transfer:873]
Packet size: 1003
May 13 18:26:23 wiejca97c kernel: [ 5973.053209] usb 2-5:
[/var/install/sn9c1xx-1.44/sn9c102_core.c:sn9c102_start_transfer:929]
err -28
You're right
l_r  18:27:34
PDBG("err %d , i %d", err , i) is even better
ok, it's a bug in the usb core
report it to the usb-mailing-list. you can cc me. make clear that the
problem does not happen to the author, who has the same system
it's hardware related in my opinion
mention that you have detached all the usb devices from the hub, as the
error means "not enough bandwith"
it's worth trying some previous kernel and see if this still happens.  i
think this bug has been introduced in a very recent version of the kernel



-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
linux-usb-devel@lists.sourceforge.net
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to