mike lee wrote:
Dear David
    I attach the imx controller driver for 2.6.10, it should be fine to
patch 2.6.11. I have to say sorry to david that giving you the code with
nearly delay for 2 months.
    Also , Please be reminded that it is only tested with file_storage
and serial (w/o ACM). and please forgive my bad coding skill, i will
refine the coding later.

Hi Mike,

I'm using an i.MX controller too and I'm testing your imx_udc driver. The controller is an i.MXL @200MHz.

Patching the kernel (2.6.10-rc2), compiling and loading the driver works fine. I'm also able to attach other gadget drivers like file_storage or serial without problems, too. I've also copied it to 2.6.12 and it's compiling and loading, too.

But I'm not able to enumerate the device driver. The data at the end of the 32-byte-packet is corrupted. The error code from host is -71: Protocol Error. I modified the fifosize of ep0 to 14 or to other values smaller than 32 and it works better, enumeration works for about 50% of tries. But that's no solution.

That behavior lets me think of any problem with the fifo-buffer. Maybe timing problems? Is data in fifo overwritten before sending? Any ideas? I'm also thinking of an hardware error in the i.MX. Please tell me, which controller u are using exactly and with which cpu-frequency.

In 2.6.10-rc2 and 2.6.12 the behavior is the same.

Here is some debug output of imx_udc, followed by debug from the usb host:

UDC:
udc lv2(          handle_ep0) SETUP 80.06 v0100 i0000 l0040
udc lv3(        imx_ep_queue) ep0 queue req c0285de0, len 18 buf c0e2fe80
dump req <12-01-00-02-00-00-00-08-25-05-a5-a4-12-03-01-02-03-01->
udc lv3(                done) complete ep0 req c0285de0 stat 0 len 18/18
udc lv3(        imx_ep_queue) End of enqueue
udc lv2(          handle_ep0) SETUP 80.06 v0100 i0000 l0012
udc lv3(        imx_ep_queue) ep0 queue req c0285de0, len 18 buf c0e2fe80
dump req <12-01-00-02-00-00-00-08-25-05-a5-a4-12-03-01-02-03-01->
udc lv3(                done) complete ep0 req c0285de0 stat 0 len 18/18
udc lv3(        imx_ep_queue) End of enqueue
udc lv2(          handle_ep0) SETUP 80.06 v0200 i0000 l0009
udc lv3(        imx_ep_queue) ep0 queue req c0285de0, len 9 buf c0e2fe80
dump req <09-02-20-00-01-01-00-c0-01->
udc lv3(                done) complete ep0 req c0285de0 stat 0 len 9/9
udc lv3(        imx_ep_queue) End of enqueue
udc lv2(          handle_ep0) SETUP 80.06 v0200 i0000 l0020
udc lv3(        imx_ep_queue) ep0 queue req c0285de0, len 32 buf c0e2fe80
dump req <09-02-20-00-01-01-00-c0-01-09-04-00-00-02-08-06-50-00-07-05-81-02-40-00-00-07-05-02-02-40-00-00->
udc lv3(                done) complete ep0 req c0285de0 stat 0 len 32/32
udc lv3(        imx_ep_queue) End of enqueue

HCD:
/# usb 1-1: new full speed USB device using isp116x-hcd and address 2
CALL 1: size: [18] buf: 12 01 00 02 00 00 00 08 25 05 a5 a4 12 03 01 02 03 01
CALL 2: size: [ 9] buf: 09  02  20  00  01  01  00  c0  01
CALL 3: status_D: -71 (cc: 6)
size: [32] buf: 09 02 20 00 01 01 00 c0 01 09 04 00 00 02 08 06 50 00 07 05 81 02 40 00 00 07 05 02 02 03 35 ad
usb 1-1: unable to read config index 0 descriptor/all
usb 1-1: can't read configurations, error -71


Greetings,
Torsten

--
 synertronixx GmbH
 Torsten Koschorrek
 Vahrenwalder Str. 7
 30165 Hannover
 Tel.    : 0511 / 93 57 - 670
 Fax     : 0511 / 93 57 - 679
 E-mail  : [EMAIL PROTECTED]
 Internet: http://www.synertronixx.de


-------------------------------------------------------
SF.Net email is sponsored by: Discover Easy Linux Migration Strategies
from IBM. Find simple to follow Roadmaps, straightforward articles,
informative Webcasts and more! Get everything you need to get up to
speed, fast. http://ads.osdn.com/?ad_id=7477&alloc_id=16492&op=click
_______________________________________________
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