[U-Boot] [PATCH v1 1/2] odroid: Update README with USB host information
Przemyslaw Marczak
p.marczak at samsung.com
Wed Nov 19 19:40:43 CET 2014
Hi,
On 11/19/2014 07:29 PM, Suriyan Ramasami wrote:
> Hello Przemyslaw,
>
> On Wed, Nov 19, 2014 at 9:39 AM, Przemyslaw Marczak
> <p.marczak at samsung.com> wrote:
>> 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 <suriyan.r at 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.
>>
>
> Ah! I see. You are right, I totally misunderstood you. I shall get rid
> of the hardware part of things, and add the sections that you have
> mentioned, viz:
> - How to boot Odroid over Ethernet
> - How to boot Odroid over USB storage etc
Yes, this will be full enough, but I'm not sure if those both cases will
not require additional environment variables, like setting special bootargs?
>
> Thanks
> - Suriyan
>
>> Best regards,
>> --
>> Przemyslaw Marczak
>> Samsung R&D Institute Poland
>> Samsung Electronics
>> p.marczak at samsung.com
>
Thank you,
--
Przemyslaw Marczak
Samsung R&D Institute Poland
Samsung Electronics
p.marczak at samsung.com
More information about the U-Boot
mailing list