[U-Boot] EHCI hub not powering on port

Hi all,
I am trying to make u-boot work with my EHCI controler and everything goes well up to when it comes to powering on the port:
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 set address 1 usb_control_msg: request: 0x5, requesttype: 0x0, value 0x1 index 0x0 length 0x0 usb_control_msg: request: 0x6, requesttype: 0x80, value 0x100 index 0x0 length 0x12 usb_control_msg: request: 0x6, requesttype: 0x80, value 0x200 index 0x0 length 0x9 usb_control_msg: request: 0x6, requesttype: 0x80, value 0x200 index 0x0 length 0x19 get_conf_no 0 Result 25, wLength 25 if 0, ep 0 ##EP epmaxpacketin[1] = 8 set configuration 1 usb_control_msg: request: 0x9, requesttype: 0x0, value 0x1 index 0x0 length 0x0 new device strings: Mfr=1, Product=2, SerialNumber=0 usb_control_msg: request: 0x6, requesttype: 0x80, value 0x300 index 0x0 length 0xFF USB device number 1 default language ID 0x1 usb_control_msg: request: 0x6, requesttype: 0x80, value 0x301 index 0x1 length 0xFF usb_control_msg: request: 0x6, requesttype: 0x80, value 0x302 index 0x1 length 0xFF Manufacturer u-boot Product EHCI Host Controller SerialNumber USB hub found usb_control_msg: request: 0x6, requesttype: 0xA0, value 0x2900 index 0x0 length 0x4 usb_control_msg: request: 0x6, requesttype: 0xA0, value 0x2900 index 0x0 length 0x8 1 ports detected individual port power switching standalone hub individual port over-current protection power on to power good time: 20ms hub controller current requirement: 0mA port 1 is removable usb_control_msg: request: 0x0, requesttype: 0xA0, value 0x0 index 0x0 length 0x4 get_hub_status returned status 0001, change 0901 local power source is lost (inactive) no over-current condition exists enabling power on all ports usb_control_msg: request: 0x3, requesttype: 0x23, value 0x8 index 0x1 length 0x0 port 1 returns 0 usb_control_msg: request: 0x0, requesttype: 0xA3, value 0x0 index 0x1 length 0x4 Port 1 Status 0502 Change 0000 1 USB Device(s) found scanning bus for storage devices... 0 Storage Device(s) found
According to the USB 2.0 specification paragraph 11.11, this is the correct behavior since both HUB_STATUS_LOCAL_POWER in wHubStatus and HUB_CHANGE_LOCAL_POWER in wHubChange are set. Issuing a port power feature to the port would have no effect.
Has anyone already met similar problems with EHCI hubs integrated to EHCI controllers ?
Thank you very much in advance.

Hi,
On Friday 13 November 2009 17:02:26 Florian Fainelli wrote:
Hi all,
I am trying to make u-boot work with my EHCI controler and everything goes well up to when it comes to powering on the port:
Forgot to mention that the hardware works fine with Linux and does not require any specific quirk.
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 set address 1 usb_control_msg: request: 0x5, requesttype: 0x0, value 0x1 index 0x0 length 0x0 usb_control_msg: request: 0x6, requesttype: 0x80, value 0x100 index 0x0 length 0x12 usb_control_msg: request: 0x6, requesttype: 0x80, value 0x200 index 0x0 length 0x9 usb_control_msg: request: 0x6, requesttype: 0x80, value 0x200 index 0x0 length 0x19 get_conf_no 0 Result 25, wLength 25 if 0, ep 0 ##EP epmaxpacketin[1] = 8 set configuration 1 usb_control_msg: request: 0x9, requesttype: 0x0, value 0x1 index 0x0 length 0x0 new device strings: Mfr=1, Product=2, SerialNumber=0 usb_control_msg: request: 0x6, requesttype: 0x80, value 0x300 index 0x0 length 0xFF USB device number 1 default language ID 0x1 usb_control_msg: request: 0x6, requesttype: 0x80, value 0x301 index 0x1 length 0xFF usb_control_msg: request: 0x6, requesttype: 0x80, value 0x302 index 0x1 length 0xFF Manufacturer u-boot Product EHCI Host Controller SerialNumber USB hub found usb_control_msg: request: 0x6, requesttype: 0xA0, value 0x2900 index 0x0 length 0x4 usb_control_msg: request: 0x6, requesttype: 0xA0, value 0x2900 index 0x0 length 0x8 1 ports detected individual port power switching standalone hub individual port over-current protection power on to power good time: 20ms hub controller current requirement: 0mA port 1 is removable usb_control_msg: request: 0x0, requesttype: 0xA0, value 0x0 index 0x0 length 0x4 get_hub_status returned status 0001, change 0901 local power source is lost (inactive) no over-current condition exists enabling power on all ports usb_control_msg: request: 0x3, requesttype: 0x23, value 0x8 index 0x1 length 0x0 port 1 returns 0 usb_control_msg: request: 0x0, requesttype: 0xA3, value 0x0 index 0x1 length 0x4 Port 1 Status 0502 Change 0000 1 USB Device(s) found scanning bus for storage devices... 0 Storage Device(s) found
According to the USB 2.0 specification paragraph 11.11, this is the correct behavior since both HUB_STATUS_LOCAL_POWER in wHubStatus and HUB_CHANGE_LOCAL_POWER in wHubChange are set. Issuing a port power feature to the port would have no effect.
Has anyone already met similar problems with EHCI hubs integrated to EHCI controllers ?
Thank you very much in advance.
-- Florian

Hi again,
Enabling CONFIG_EHCI_IS_TDI in my board configuration file made it work.
On Monday 16 November 2009 13:54:19 Florian Fainelli wrote:
Hi,
On Friday 13 November 2009 17:02:26 Florian Fainelli wrote:
Hi all,
I am trying to make u-boot work with my EHCI controler and everything goes well up to when it comes to powering on the port:
Forgot to mention that the hardware works fine with Linux and does not require any specific quirk.
-- Florian
participants (1)
-
Florian Fainelli