Hello,
On 11/19/2014 05:21 PM, Suriyan Ramasami wrote:
Add information wrt the USB host side of things for the Odroid-U2/U3 and the
Odroid-X/X2

Signed-off-by: Suriyan Ramasami <suriya...@gmail.com>
---

Changes in v1:
- Add USB host notes for the Odroid

  doc/README.odroid | 48 ++++++++++++++++++++++++++++++++++++++++++++++++
  1 file changed, 48 insertions(+)

diff --git a/doc/README.odroid b/doc/README.odroid
index 528bb95..0eaf3ff 100644
--- a/doc/README.odroid
+++ b/doc/README.odroid
@@ -141,3 +141,51 @@ And the boot sequence is:
  - boot_fit - if "Image.itb" exists
  - boot_zimg - if "zImage" exists
  - boot_uimg - if "uImage" exists
+
+11. USB host support
+====================
+The Odroid-X/X2 have the below schematics wrt USB:
+
+Exynos USB_HOST1 -> USB3503 HUB ----> LAN9514 USB HUB -----> LAN9514 Ethernet
+                       |               |
+                       |               +-------Host1---------> USB port
+                       |               |
+                       |               +-------Host2---------> USB port
+                       |               |
+                       |               +-------Host3---------> USB port
+                       |               |
+                       |               +-------Host4---------> USB port
+                       |
+                       +-------------------------------------> USB port
+                       |
+                       +-------------------------------------> USB port
+
+The Odroid-U2/U3 have the below schematics wrt USB:
+
+Exynos HSIC1 -----------------------------------------------> LAN9514 Ethernet
+
+Exynos HSIC2 -----> USB3503A HUB ---------------Host1---------> USB port
+                       |
+                       +-----------------------Host2---------> USB port
+                       |
+                       +-----------------------HOst3---------> USB port (U3)
+
+The HSICs are used in the case of the Odroid-Us and the USB Host in the SoC
+is used in the case of the Odroid-Xs.
+
+In drivers/usb/host/ehci-exynos.c, function names starting with exysno4412*
+have been added to initialize the HSICs and the PHYs.
+
+In board/samsung/odroid/odroid.c, function board_usb_init() adds code to
+initialize the USB3503 hub.
+The initializing of the USB3503 hub is as defined in the USB3503A spec sheet.
+Please refer to Figure 4.1 in the Datasheet.
+a) Set the INT_N (X30) low (Odroid-Us) or high (Odroid-Xs). This is so that the
+correct REFCLK frequency is selected. 24MHz for Odroid Us and 26MHz for Odroid
+Xs.
+b) Disconnect the HUB (Set HUB_CONNECT (X34) to 0)
+c) Reset the HUB (Set RESET_N (X35) to 0 and then to 1)
+d) HUB waits for REF_CLK (which we have set appropriately)
+e) Timeout waiting for HUB configuration stage
+f) Connect the HUB (Set HUB_CONNECT (X34) to 1)
+g) Power recycle the LAN9730 which is connected to BUCK8 (Odroid Us)


Suriyan, you quite misunderstand my intention. You added really useful part of code - now user can read/write data to USB mass storage or boot over the Ethernet. Probably you are using this feature. And this is a usage of the USB for the user.

For the user - it's not important how it works in the hardware - I would like to get some simple instructions, e.g. How to boot Odroid over the Ethernet, or how to write data to USB stick. I believe that users read this documentation when they starting use of Odroid with the mainline U-Boot, and a description of another boot option is welcome here. It should be "How to start with this board", rather than how to develop USB hub driver on it.

Best regards,
--
Przemyslaw Marczak
Samsung R&D Institute Poland
Samsung Electronics
p.marc...@samsung.com
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to