From mboxrd@z Thu Jan 1 00:00:00 1970 From: Przemyslaw Marczak Date: Wed, 19 Nov 2014 18:39:50 +0100 Subject: [U-Boot] [PATCH v1 1/2] odroid: Update README with USB host information In-Reply-To: <1416414090-4058-1-git-send-email-suriyan.r@gmail.com> References: <1416414090-4058-1-git-send-email-suriyan.r@gmail.com> Message-ID: <546CD5E6.5010605@samsung.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de 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 > --- > > 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.marczak at samsung.com