|
USB Host controller on Firefly
Posted at 6/12/2015 10:49:16
View:7552
|
Replies:2
Print
Only Author
[Copy Link]
1#
Hi,
I am testing the Firefly for our next project, where we have need to use the multiple USB peripheral like USB Keyboard, USB mouse, USB Camera, USB touch digitizer etc to Firefly over USB HUB(10 port). I am observing the sticky keys while typing from keyboard and leggy touch response. The same issue is observed on USB HOST1, HOST2 and OTG port on the Firefly. I have confirmed that the issue is not with the USB HUB any of the USB devices as the same setup works on my laptop, nexus 7 tablet.
Note that the Firefly always detects USB HOST1 and USB HOST2 on USB BUS3, OTG port on USB BUS2. In the linux kernel it always detected as a "DWC OTG Controller" as shown below.
OTG PORT on BUS2:
----------------------------
<6>[ 3.897975] usb20_otg ff580000.usb: DWC OTG Controller
<6>[ 3.903109] usb20_otg ff580000.usb: new USB bus registered, assigned bus number 2
<6>[ 3.910600] usb20_otg ff580000.usb: irq 55, io mem 0x00000000
HOST1 and HOST2 port on BUS3:
-------------------------------------------
<6>[ 3.996373] usb20_host ff540000.usb: DWC OTG Controller
<6>[ 4.001585] usb20_host ff540000.usb: new USB bus registered, assigned bus number 3
<6>[ 4.009167] usb20_host ff540000.usb: irq 57, io mem 0x00000000
This indicates that both USB HOST's port and USB OTG port is handled by the DWC OTG controller.
I suspect that the issue is with the DWC OTG controller, because when I connect the same HUB(with two USB keyboard, USB mouse) to other device like my laptop, nexus 7 tablet, it works without any issue and the devices are detected as EHCI controller.
Further investigating the Firefly, I found that there is a EHCI controller on SoC which is mapped to USB BUS1. Looks like EHCI is not mapped to any physical port like HOST1, HOST2 ot OTG.
In Linux kernel I see a EHCI controller detected on BUS1 as shown below:
---------------------------------------------------------------------------------------------------------------------------
<6>[ 3.602100] rockchip_ehci_host ff500000.usb: Rockchip On-Chip EHCI Host Controller
<6>[ 3.609657] rockchip_ehci_host ff500000.usb: new USB bus registered, assigned bus number 1
<6>[ 3.618856] rockchip_ehci_host ff500000.usb: irq 56, io mem 0xff500000
----------------------------------------------------------------------------------------------------------------------------
My question are:
1. How the EHCI controller is mapped on Firefly? On which USB port?
2. Is there any way to access the EHCI controller on Firefly which is mapped to USB bus1?
3 . Can you confirm if this is a DWC OTG Controller issue ?
Let me know if you need any setup details, logs or any question to reproduce/root cause this problem.
Looking forward for quick response as this is blocker issue for further development using Firefly.
Thanks in Advance.
Regards,
Niraj |
|