[U-Boot] USB EHCI driver

FrancescoVT francesco.rendine at valueteam.com
Thu Mar 19 18:26:57 CET 2009


I have integrated last USB u-boot code (2009.03rc) into my code and now I get
this:

=> usb start
(Re)start USB...
USB:   
USB Init....Completed!

USB Init....Completed!
Register 10011 NbrPorts 1
USB EHCI 1.00
scanning bus for devices... New Device 0
usb_control_msg: request: 0x6, requesttype: 0x80, value 0x100 index 0x0
length 0x40
req=6 (0x6), type=128 (0x80), value=256, index=0
USB_DT_DEVICE request
set address 1
usb_control_msg: request: 0x5, requesttype: 0x0, value 0x1 index 0x0 length
0x0
req=5 (0x5), type=0 (0x0), value=1, index=0
USB_REQ_SET_ADDRESS
Len is 0
usb_control_msg: request: 0x6, requesttype: 0x80, value 0x100 index 0x0
length 0x12
req=6 (0x6), type=128 (0x80), value=256, index=0
USB_DT_DEVICE request
usb_control_msg: request: 0x6, requesttype: 0x80, value 0x200 index 0x0
length 0x9
req=6 (0x6), type=128 (0x80), value=512, index=0
USB_DT_CONFIG config
usb_control_msg: request: 0x6, requesttype: 0x80, value 0x200 index 0x0
length 0x19
req=6 (0x6), type=128 (0x80), value=512, index=0
USB_DT_CONFIG config
get_conf_no 0 Result 25, wLength 25
if 0, ep 0
##EP epmaxpacketin[1] = 2048
set configuration 1
usb_control_msg: request: 0x9, requesttype: 0x0, value 0x1 index 0x0 length
0x0
req=9 (0x9), type=0 (0x0), value=1, index=0
USB_REQ_SET_CONFIGURATION
Len is 0
new device strings: Mfr=1, Product=2, SerialNumber=0
usb_control_msg: request: 0x6, requesttype: 0x80, value 0x300 index 0x0
length 0xFF
req=6 (0x6), type=128 (0x80), value=768, index=0
USB_DT_STRING config
USB device number 1 default language ID 0x1
usb_control_msg: request: 0x6, requesttype: 0x80, value 0x301 index 0x1
length 0xFF
req=6 (0x6), type=128 (0x80), value=769, index=1
USB_DT_STRING config
usb_control_msg: request: 0x6, requesttype: 0x80, value 0x302 index 0x1
length 0xFF
req=6 (0x6), type=128 (0x80), value=770, index=1
USB_DT_STRING config
Manufacturer u-boot
Product      EHCI Host Controller
SerialNumber 
usb_control_msg: request: 0x6, requesttype: 0xA0, value 0x2900 index 0x0
length 0x4
req=6 (0x6), type=160 (0xa0), value=10496, index=0
USB_DT_HUB config
usb_control_msg: request: 0x6, requesttype: 0xA0, value 0x2900 index 0x0
length 0x8
req=6 (0x6), type=160 (0xa0), value=10496, index=0
USB_DT_HUB config
usb_control_msg: request: 0x0, requesttype: 0xA0, value 0x0 index 0x0 length
0x4
req=0 (0x0), type=160 (0xa0), value=0, index=0
usb_control_msg: request: 0x3, requesttype: 0x23, value 0x8 index 0x1 length
0x0
req=3 (0x3), type=35 (0x23), value=8, index=1
Len is 0
usb_control_msg: request: 0x0, requesttype: 0xA3, value 0x0 index 0x1 length
0x4
req=0 (0x0), type=163 (0xa3), value=0, index=1
usb_control_msg: request: 0x0, requesttype: 0xA3, value 0x0 index 0x1 length
0x4
req=0 (0x0), type=163 (0xa3), value=0, index=1
usb_control_msg: request: 0x1, requesttype: 0x23, value 0x10 index 0x1
length 0x0
req=1 (0x1), type=35 (0x23), value=16, index=1
Len is 0
usb_control_msg: request: 0x3, requesttype: 0x23, value 0x4 index 0x1 length
0x0
req=3 (0x3), type=35 (0x23), value=4, index=1
Len is 0
usb_control_msg: request: 0x0, requesttype: 0xA3, value 0x0 index 0x1 length
0x4
req=0 (0x0), type=163 (0xa3), value=0, index=1
usb_control_msg: request: 0x1, requesttype: 0x23, value 0x14 index 0x1
length 0x0
req=1 (0x1), type=35 (0x23), value=20, index=1
Len is 0
New Device 1
usb_control_msg: request: 0x6, requesttype: 0x80, value 0x100 index 0x0
length 0x40
dev=1ffebb08, pipe=88000083, buffer=1f9a671a, length=64, req=1ffea214
req=6 (0x6), type=128 (0x80), value=256 (0x100), index=0
EHCI fail timeout STD_ASS reset
usb_new_device: usb_get_descriptor() failed
usb_control_msg: request: 0x1, requesttype: 0x23, value 0x1 index 0x1 length
0x0
req=1 (0x1), type=35 (0x23), value=1, index=1
Len is 0
2 USB Device(s) found
       scanning bus for storage devices... 0 Storage Device(s) found
=> 

Seem to fail usb_get_descriptor..


FrancescoVT wrote:
> 
> No.
> I didn't touch the EHCI core layer. I expected that it work.
> What do you think about?
> 
> THANKS.
> 
> Regars
> Francesco
> 
> 
> Gupta Maneesh-B18878 wrote:
>> 
>> Have you faced any issues w.r.t accessing the root hub Device
>> Descriptors?
>> 
>> Regards
>> Maneesh 
>> 
>>> -----Original Message-----
>>> From: u-boot-bounces at lists.denx.de 
>>> [mailto:u-boot-bounces at lists.denx.de] On Behalf Of FrancescoVT
>>> Sent: Thursday, March 19, 2009 7:20 PM
>>> To: u-boot at lists.denx.de
>>> Subject: Re: [U-Boot] USB EHCI driver
>>> 
>>> 
>>> I have written an initialization sequence for Freescale 
>>> MPC5121e. This CPU contain an OTG and DR module with UTMI+ 
>>> phy. I tested Linux USB driver for this controller and it 
>>> works. Infact I analyzed what Linux driver code did and I 
>>> applied it to my code in u-boot.
>>> 
>>> 
>>> Gupta Maneesh-B18878 wrote:
>>> > 
>>> > Which SOC you are trying to use? I had faced some more issues while 
>>> > porting the USB core layer related to descriptors also.
>>> > 
>>> > Regards
>>> > Maneesh
>>> >  
>>> > 
>>> >> -----Original Message-----
>>> >> From: u-boot-bounces at lists.denx.de
>>> >> [mailto:u-boot-bounces at lists.denx.de] On Behalf Of FrancescoVT
>>> >> Sent: Thursday, March 19, 2009 6:27 PM
>>> >> To: u-boot at lists.denx.de
>>> >> Subject: Re: [U-Boot] USB EHCI driver
>>> >> 
>>> >> 
>>> >> Hi,
>>> >> 
>>> >> this is the report of my problem.
>>> >> I have initialized the SOC FSL EHCI controller, and  I typed usb 
>>> >> start from u-boot console.
>>> >> I can see controller and mass storage, but mass storage 
>>> doesn't seem 
>>> >> to be correctly configurated.
>>> >> Can you explain to me what I must expect?
>>> >> 
>>> >> Thank you very much,
>>> >> Francesco.
>>> >>  
>>> >> EHCI SOC FSL: USB Init....Completed!
>>> >> Register 10011 NbrPorts 1
>>> >> USB EHCI 1.00
>>> >> scanning bus for devices... New Device 0
>>> >> usb_control_msg: request: 0x6, requesttype: 0x80, value 
>>> 0x100 index 
>>> >> 0x0 length 0x8
>>> >> req=6 (0x6), type=128 (0x80), value=256, index=0 USB_DT_DEVICE 
>>> >> request set address 1
>>> >> usb_control_msg: request: 0x5, requesttype: 0x0, value 0x1 
>>> index 0x0 
>>> >> length 0x0
>>> >> req=5 (0x5), type=0 (0x0), value=1, index=0 
>>> USB_REQ_SET_ADDRESS Len 
>>> >> is 0
>>> >> usb_control_msg: request: 0x6, requesttype: 0x80, value 
>>> 0x100 index 
>>> >> 0x0 length 0x12
>>> >> req=6 (0x6), type=128 (0x80), value=256, index=0 USB_DT_DEVICE 
>>> >> request
>>> >> usb_control_msg: request: 0x6, requesttype: 0x80, value 
>>> 0x200 index 
>>> >> 0x0 length 0x8
>>> >> req=6 (0x6), type=128 (0x80), value=512, index=0 
>>> USB_DT_CONFIG config
>>> >> usb_control_msg: request: 0x6, requesttype: 0x80, value 
>>> 0x200 index 
>>> >> 0x0 length 0x19
>>> >> req=6 (0x6), type=128 (0x80), value=512, index=0 
>>> USB_DT_CONFIG config 
>>> >> get_conf_no 0 Result 25, wLength 25 if 0, ep 0 ##EP 
>>> epmaxpacketin[1] 
>>> >> = 2048 set configuration 1
>>> >> usb_control_msg: request: 0x9, requesttype: 0x0, value 0x1 
>>> index 0x0 
>>> >> length 0x0
>>> >> req=9 (0x9), type=0 (0x0), value=1, index=0 
>>> USB_REQ_SET_CONFIGURATION 
>>> >> Len is 0 new device strings: Mfr=1, Product=2, SerialNumber=0
>>> >> usb_control_msg: request: 0x6, requesttype: 0x80, value 
>>> 0x300 index 
>>> >> 0x0 length 0xFF
>>> >> req=6 (0x6), type=128 (0x80), value=768, index=0 
>>> USB_DT_STRING config 
>>> >> USB device number 1 default language ID 0x1
>>> >> usb_control_msg: request: 0x6, requesttype: 0x80, value 
>>> 0x301 index 
>>> >> 0x1 length 0xFF
>>> >> req=6 (0x6), type=128 (0x80), value=769, index=1 
>>> USB_DT_STRING config
>>> >> usb_control_msg: request: 0x6, requesttype: 0x80, value 
>>> 0x302 index 
>>> >> 0x1 length 0xFF
>>> >> req=6 (0x6), type=128 (0x80), value=770, index=1 
>>> USB_DT_STRING config 
>>> >> Manufacturer u-boot
>>> >> Product      EHCI Host Controller
>>> >> SerialNumber
>>> >> usb_control_msg: request: 0x6, requesttype: 0xA0, value 
>>> 0x2900 index 
>>> >> 0x0 length 0x4
>>> >> req=6 (0x6), type=160 (0xa0), value=10496, index=0 
>>> USB_DT_HUB config
>>> >> usb_control_msg: request: 0x6, requesttype: 0xA0, value 
>>> 0x2900 index 
>>> >> 0x0 length 0x8
>>> >> req=6 (0x6), type=160 (0xa0), value=10496, index=0 
>>> USB_DT_HUB config
>>> >> usb_control_msg: request: 0x0, requesttype: 0xA0, value 
>>> 0x0 index 0x0 
>>> >> length
>>> >> 0x4
>>> >> req=0 (0x0), type=160 (0xa0), value=0, index=0
>>> >> usb_control_msg: request: 0x3, requesttype: 0x23, value 
>>> 0x8 index 0x1 
>>> >> length 0x0
>>> >> req=3 (0x3), type=35 (0x23), value=8, index=1 Len is 0
>>> >> usb_control_msg: request: 0x0, requesttype: 0xA3, value 
>>> 0x0 index 0x1 
>>> >> length
>>> >> 0x4
>>> >> req=0 (0x0), type=163 (0xa3), value=0, index=1
>>> >> usb_control_msg: request: 0x0, requesttype: 0xA3, value 
>>> 0x0 index 0x1 
>>> >> length
>>> >> 0x4
>>> >> req=0 (0x0), type=163 (0xa3), value=0, index=1
>>> >> usb_control_msg: request: 0x1, requesttype: 0x23, value 0x10 index 
>>> >> 0x1 length 0x0
>>> >> req=1 (0x1), type=35 (0x23), value=16, index=1 Len is 0
>>> >> usb_control_msg: request: 0x3, requesttype: 0x23, value 
>>> 0x4 index 0x1 
>>> >> length 0x0
>>> >> req=3 (0x3), type=35 (0x23), value=4, index=1 Len is 0
>>> >> usb_control_msg: request: 0x0, requesttype: 0xA3, value 
>>> 0x0 index 0x1 
>>> >> length
>>> >> 0x4
>>> >> req=0 (0x0), type=163 (0xa3), value=0, index=1
>>> >> usb_control_msg: request: 0x1, requesttype: 0x23, value 0x14 index 
>>> >> 0x1 length 0x0
>>> >> req=1 (0x1), type=35 (0x23), value=20, index=1 unknown feature 14 
>>> >> requesttype=23, request=1, value=14, index=1, length=0 New Device 1
>>> >> usb_control_msg: request: 0x6, requesttype: 0x80, value 
>>> 0x100 index 
>>> >> 0x0 length 0x8 dev=1ffecc58, pipe=80000080, buffer=1ffecd5c, 
>>> >> length=8, req=1ffeb1fc
>>> >> req=6 (0x6), type=128 (0x80), value=256 (0x100), index=0 EHCI fail 
>>> >> timeout STD_ASS reset
>>> >> 
>>> >>       USB device not responding, giving up (status=80000000)
>>> >> usb_control_msg: request: 0x1, requesttype: 0x23, value 
>>> 0x1 index 0x1 
>>> >> length 0x0
>>> >> req=1 (0x1), type=35 (0x23), value=1, index=1 Len is 0
>>> >> 2 USB Device(s) found
>>> >>        scanning bus for storage devices... 0 Storage 
>>> Device(s) found
>>> >> 
>>> >> 
>>> >> 
>>> >> Michael Trimarchi-2 wrote:
>>> >> > 
>>> >> > Hi,
>>> >> > 
>>> >> > FrancescoVT wrote:
>>> >> >> Hi,
>>> >> >>
>>> >> >> I'm developing an USB EHCI driver for ADS5121e. Now , I 
>>> completed 
>>> >> >> initialization sequence for my SOC EHCI Controller. My 
>>> scope is to 
>>> >> >> use with mass storage, but I think that ehci core layer 
>>> don't work 
>>> >> >> correctly. Do somebody use EHCI CORE layer for Mass 
>>> storage and it 
>>> >> >> was ok?
>>> >> >>   
>>> >> > Can you report exactly your problem? What happen?
>>> >> >> Thank you.
>>> >> >>   
>>> >> > Michael
>>> >> > _______________________________________________
>>> >> > U-Boot mailing list
>>> >> > U-Boot at lists.denx.de
>>> >> > http://lists.denx.de/mailman/listinfo/u-boot
>>> >> > 
>>> >> > 
>>> >> 
>>> >> --
>>> >> View this message in context: 
>>> >> http://www.nabble.com/USB-EHCI-driver-tp22598488p22599570.html
>>> >> Sent from the Uboot - Users mailing list archive at Nabble.com.
>>> >> 
>>> >> _______________________________________________
>>> >> U-Boot mailing list
>>> >> U-Boot at lists.denx.de
>>> >> http://lists.denx.de/mailman/listinfo/u-boot
>>> >> 
>>> >> 
>>> > _______________________________________________
>>> > U-Boot mailing list
>>> > U-Boot at lists.denx.de
>>> > http://lists.denx.de/mailman/listinfo/u-boot
>>> > 
>>> > 
>>> 
>>> --
>>> View this message in context: 
>>> http://www.nabble.com/USB-EHCI-driver-tp22598488p22600620.html
>>> Sent from the Uboot - Users mailing list archive at Nabble.com.
>>> 
>>> _______________________________________________
>>> U-Boot mailing list
>>> U-Boot at lists.denx.de
>>> http://lists.denx.de/mailman/listinfo/u-boot
>>> 
>>> 
>> _______________________________________________
>> U-Boot mailing list
>> U-Boot at lists.denx.de
>> http://lists.denx.de/mailman/listinfo/u-boot
>> 
>> 
> 
> 

-- 
View this message in context: http://www.nabble.com/USB-EHCI-driver-tp22598488p22605375.html
Sent from the Uboot - Users mailing list archive at Nabble.com.



More information about the U-Boot mailing list