diff mbox

[U-Boot] A20-OLinuXino-Lime2: Enable USB gadget support

Message ID 1474293812-28644-1-git-send-email-trini@konsulko.com
State Accepted
Commit 00709f56975e0fb08374c03aad21ac7d7e61acd0
Delegated to: Tom Rini
Headers show

Commit Message

Tom Rini Sept. 19, 2016, 2:03 p.m. UTC
Based on A13-OLinuXino, enable DFU and UMS support.

Signed-off-by: Tom Rini <trini@konsulko.com>
---
With this change I've added DFU to my tests on this board, and assuming a
follow up test with the SD image that kicks the board into FEL works, I'll
then enable the UMS tests on this board (and add DFU to SD, not just DFU to
RAM).

 configs/A20-OLinuXino-Lime2_defconfig | 8 ++++++++
 1 file changed, 8 insertions(+)

Comments

Hans de Goede Sept. 19, 2016, 2:53 p.m. UTC | #1
Hi,

On 19-09-16 16:03, Tom Rini wrote:
> Based on A13-OLinuXino, enable DFU and UMS support.
>
> Signed-off-by: Tom Rini <trini@konsulko.com>
> ---
> With this change I've added DFU to my tests on this board, and assuming a
> follow up test with the SD image that kicks the board into FEL works, I'll
> then enable the UMS tests on this board (and add DFU to SD, not just DFU to
> RAM).
>
>  configs/A20-OLinuXino-Lime2_defconfig | 8 ++++++++
>  1 file changed, 8 insertions(+)
>
> diff --git a/configs/A20-OLinuXino-Lime2_defconfig b/configs/A20-OLinuXino-Lime2_defconfig
> index 23db07380624..54343de7f351 100644
> --- a/configs/A20-OLinuXino-Lime2_defconfig
> +++ b/configs/A20-OLinuXino-Lime2_defconfig
> @@ -12,9 +12,17 @@ CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,RGMII,AHCI,SATAPWR=SUNXI_GPC(3)"
>  CONFIG_SPL=y
>  # CONFIG_CMD_IMLS is not set
>  # CONFIG_CMD_FLASH is not set
> +CONFIG_CMD_DFU=y
> +CONFIG_CMD_USB_MASS_STORAGE=y

Do you need CMD_USB_MASS_STORAGE for your tests ? Enabling
CMD_USB_MASS_STORAGE really seems orthogonal to enabling GADGET
mode to me, esp. since it is only useful in host mode AFAICT.

Chen-Yu did something similar in a patch enabling host mode for a
different sunxi board and here is what I replied:

"
If we want to enable CONFIG_CMD_USB_MASS_STORAGE on sunxi, we really
should do so on all boards (feel free to submit a patch for this).

e.g. add something like this to board/sunxi/Kconfig:

config CMD_USB_MASS_STORAGE
     default y

So that we can still disable it in case there are space constraints,
but normally we enable it on all sunxi boards offering a
consistent set of available commands.
"

The same goes for this patch, otherwise this patch is:

Reviewed-by: Hans de Goede <hdegoede@redhat.com>

Ig you want to feel free to apply this directly
(given that I've send out a sunxi pull-req recently).

Regards,

Hans



>  # CONFIG_CMD_FPGA is not set
>  CONFIG_RTL8211X_PHY_FORCE_MASTER=y
>  CONFIG_ETH_DESIGNWARE=y
>  CONFIG_AXP_ALDO3_VOLT=2800
>  CONFIG_AXP_ALDO4_VOLT=2800
>  CONFIG_USB_EHCI_HCD=y
> +CONFIG_USB_MUSB_GADGET=y
> +CONFIG_USB_GADGET=y
> +CONFIG_USB_GADGET_DOWNLOAD=y
> +CONFIG_G_DNL_MANUFACTURER="Allwinner Technology"
> +CONFIG_G_DNL_VENDOR_NUM=0x1f3a
> +CONFIG_G_DNL_PRODUCT_NUM=0x1010
>
Tom Rini Sept. 19, 2016, 3 p.m. UTC | #2
On Mon, Sep 19, 2016 at 04:53:04PM +0200, Hans de Goede wrote:
> Hi,
> 
> On 19-09-16 16:03, Tom Rini wrote:
> >Based on A13-OLinuXino, enable DFU and UMS support.
> >
> >Signed-off-by: Tom Rini <trini@konsulko.com>
> >---
> >With this change I've added DFU to my tests on this board, and assuming a
> >follow up test with the SD image that kicks the board into FEL works, I'll
> >then enable the UMS tests on this board (and add DFU to SD, not just DFU to
> >RAM).
> >
> > configs/A20-OLinuXino-Lime2_defconfig | 8 ++++++++
> > 1 file changed, 8 insertions(+)
> >
> >diff --git a/configs/A20-OLinuXino-Lime2_defconfig b/configs/A20-OLinuXino-Lime2_defconfig
> >index 23db07380624..54343de7f351 100644
> >--- a/configs/A20-OLinuXino-Lime2_defconfig
> >+++ b/configs/A20-OLinuXino-Lime2_defconfig
> >@@ -12,9 +12,17 @@ CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,RGMII,AHCI,SATAPWR=SUNXI_GPC(3)"
> > CONFIG_SPL=y
> > # CONFIG_CMD_IMLS is not set
> > # CONFIG_CMD_FLASH is not set
> >+CONFIG_CMD_DFU=y
> >+CONFIG_CMD_USB_MASS_STORAGE=y
> 
> Do you need CMD_USB_MASS_STORAGE for your tests ? Enabling
> CMD_USB_MASS_STORAGE really seems orthogonal to enabling GADGET
> mode to me, esp. since it is only useful in host mode AFAICT.

Ah, no, things have bad names perhaps.  CMD_USB_MASS_STORAGE enables
"ums" as a command which is what in turn will export MMC (or something
else) as a USB mass storage gadget over to the host.

> Chen-Yu did something similar in a patch enabling host mode for a
> different sunxi board and here is what I replied:
> 
> "
> If we want to enable CONFIG_CMD_USB_MASS_STORAGE on sunxi, we really
> should do so on all boards (feel free to submit a patch for this).
> 
> e.g. add something like this to board/sunxi/Kconfig:
> 
> config CMD_USB_MASS_STORAGE
>     default y
> 
> So that we can still disable it in case there are space constraints,
> but normally we enable it on all sunxi boards offering a
> consistent set of available commands.
> "

I think it's a useful command that should be more widely exposed, yes.
IIRC, it's how the Tegra platforms support flashing their dev boards
with official images, and can be a handy "rescue" type option too.

> 
> The same goes for this patch, otherwise this patch is:
> 
> Reviewed-by: Hans de Goede <hdegoede@redhat.com>
> 
> Ig you want to feel free to apply this directly
> (given that I've send out a sunxi pull-req recently).

OK, thanks.  I just might since I really want to move on to grabbing
some fs patches and before I do that I really want to have as much
testing of them as possible.
Hans de Goede Sept. 19, 2016, 3:44 p.m. UTC | #3
Hi,

On 19-09-16 17:00, Tom Rini wrote:
> On Mon, Sep 19, 2016 at 04:53:04PM +0200, Hans de Goede wrote:
>> Hi,
>>
>> On 19-09-16 16:03, Tom Rini wrote:
>>> Based on A13-OLinuXino, enable DFU and UMS support.
>>>
>>> Signed-off-by: Tom Rini <trini@konsulko.com>
>>> ---
>>> With this change I've added DFU to my tests on this board, and assuming a
>>> follow up test with the SD image that kicks the board into FEL works, I'll
>>> then enable the UMS tests on this board (and add DFU to SD, not just DFU to
>>> RAM).
>>>
>>> configs/A20-OLinuXino-Lime2_defconfig | 8 ++++++++
>>> 1 file changed, 8 insertions(+)
>>>
>>> diff --git a/configs/A20-OLinuXino-Lime2_defconfig b/configs/A20-OLinuXino-Lime2_defconfig
>>> index 23db07380624..54343de7f351 100644
>>> --- a/configs/A20-OLinuXino-Lime2_defconfig
>>> +++ b/configs/A20-OLinuXino-Lime2_defconfig
>>> @@ -12,9 +12,17 @@ CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,RGMII,AHCI,SATAPWR=SUNXI_GPC(3)"
>>> CONFIG_SPL=y
>>> # CONFIG_CMD_IMLS is not set
>>> # CONFIG_CMD_FLASH is not set
>>> +CONFIG_CMD_DFU=y
>>> +CONFIG_CMD_USB_MASS_STORAGE=y
>>
>> Do you need CMD_USB_MASS_STORAGE for your tests ? Enabling
>> CMD_USB_MASS_STORAGE really seems orthogonal to enabling GADGET
>> mode to me, esp. since it is only useful in host mode AFAICT.
>
> Ah, no, things have bad names perhaps.  CMD_USB_MASS_STORAGE enables
> "ums" as a command which is what in turn will export MMC (or something
> else) as a USB mass storage gadget over to the host.

Ah, I thought this enabled the (destructive) low level usb mass storage
block read/write test commands, but I guess I'm wrong.

I wonder why Chen-Yu put it in the usb host enabling patch for
an A33 board then...


>> Chen-Yu did something similar in a patch enabling host mode for a
>> different sunxi board and here is what I replied:
>>
>> "
>> If we want to enable CONFIG_CMD_USB_MASS_STORAGE on sunxi, we really
>> should do so on all boards (feel free to submit a patch for this).
>>
>> e.g. add something like this to board/sunxi/Kconfig:
>>
>> config CMD_USB_MASS_STORAGE
>>     default y

Given the above, that should probably be:

config CMD_USB_MASS_STORAGE
        default y if USB_GADGET


Hmm, I guess we may want to have a bunch of those, so that
simply adding:

CONFIG_USB_MUSB_GADGET=y

To a defconfig enables the relevant related options...

Regards,

Hans



>>
>> So that we can still disable it in case there are space constraints,
>> but normally we enable it on all sunxi boards offering a
>> consistent set of available commands.
>> "
>
> I think it's a useful command that should be more widely exposed, yes.
> IIRC, it's how the Tegra platforms support flashing their dev boards
> with official images, and can be a handy "rescue" type option too.
>
>>
>> The same goes for this patch, otherwise this patch is:
>>
>> Reviewed-by: Hans de Goede <hdegoede@redhat.com>
>>
>> Ig you want to feel free to apply this directly
>> (given that I've send out a sunxi pull-req recently).
>
> OK, thanks.  I just might since I really want to move on to grabbing
> some fs patches and before I do that I really want to have as much
> testing of them as possible.
>
Tom Rini Sept. 19, 2016, 4:36 p.m. UTC | #4
On Mon, Sep 19, 2016 at 05:44:09PM +0200, Hans de Goede wrote:
> Hi,
> 
> On 19-09-16 17:00, Tom Rini wrote:
> >On Mon, Sep 19, 2016 at 04:53:04PM +0200, Hans de Goede wrote:
> >>Hi,
> >>
> >>On 19-09-16 16:03, Tom Rini wrote:
> >>>Based on A13-OLinuXino, enable DFU and UMS support.
> >>>
> >>>Signed-off-by: Tom Rini <trini@konsulko.com>
> >>>---
> >>>With this change I've added DFU to my tests on this board, and assuming a
> >>>follow up test with the SD image that kicks the board into FEL works, I'll
> >>>then enable the UMS tests on this board (and add DFU to SD, not just DFU to
> >>>RAM).
> >>>
> >>>configs/A20-OLinuXino-Lime2_defconfig | 8 ++++++++
> >>>1 file changed, 8 insertions(+)
> >>>
> >>>diff --git a/configs/A20-OLinuXino-Lime2_defconfig b/configs/A20-OLinuXino-Lime2_defconfig
> >>>index 23db07380624..54343de7f351 100644
> >>>--- a/configs/A20-OLinuXino-Lime2_defconfig
> >>>+++ b/configs/A20-OLinuXino-Lime2_defconfig
> >>>@@ -12,9 +12,17 @@ CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,RGMII,AHCI,SATAPWR=SUNXI_GPC(3)"
> >>>CONFIG_SPL=y
> >>># CONFIG_CMD_IMLS is not set
> >>># CONFIG_CMD_FLASH is not set
> >>>+CONFIG_CMD_DFU=y
> >>>+CONFIG_CMD_USB_MASS_STORAGE=y
> >>
> >>Do you need CMD_USB_MASS_STORAGE for your tests ? Enabling
> >>CMD_USB_MASS_STORAGE really seems orthogonal to enabling GADGET
> >>mode to me, esp. since it is only useful in host mode AFAICT.
> >
> >Ah, no, things have bad names perhaps.  CMD_USB_MASS_STORAGE enables
> >"ums" as a command which is what in turn will export MMC (or something
> >else) as a USB mass storage gadget over to the host.
> 
> Ah, I thought this enabled the (destructive) low level usb mass storage
> block read/write test commands, but I guess I'm wrong.
> 
> I wonder why Chen-Yu put it in the usb host enabling patch for
> an A33 board then...
> 
> 
> >>Chen-Yu did something similar in a patch enabling host mode for a
> >>different sunxi board and here is what I replied:
> >>
> >>"
> >>If we want to enable CONFIG_CMD_USB_MASS_STORAGE on sunxi, we really
> >>should do so on all boards (feel free to submit a patch for this).
> >>
> >>e.g. add something like this to board/sunxi/Kconfig:
> >>
> >>config CMD_USB_MASS_STORAGE
> >>    default y
> 
> Given the above, that should probably be:
> 
> config CMD_USB_MASS_STORAGE
>        default y if USB_GADGET
> 
> 
> Hmm, I guess we may want to have a bunch of those, so that
> simply adding:
> 
> CONFIG_USB_MUSB_GADGET=y
> 
> To a defconfig enables the relevant related options...

Yes.  I think that something that should be done, and sooner rather than
later, is changing more options from 'default n' (the default when not
spelled out) to 'default y' as with the change from board.h to Kconfig
there is much less pain in turning off default values.  Things like
'ums' are really handy and unlike DFU/fastboot don't require additional
configuration.  So, I should go and fire off a patch for this one
quickly at least.
Tom Rini Sept. 19, 2016, 4:54 p.m. UTC | #5
On Mon, Sep 19, 2016 at 10:03:32AM -0400, Tom Rini wrote:

> Based on A13-OLinuXino, enable DFU and UMS support.
> 
> Signed-off-by: Tom Rini <trini@konsulko.com>
> Reviewed-by: Hans de Goede <hdegoede@redhat.com>

Applied to u-boot/master, thanks!
Chen-Yu Tsai Sept. 19, 2016, 11:26 p.m. UTC | #6
On Mon, Sep 19, 2016 at 11:44 PM, Hans de Goede <hdegoede@redhat.com> wrote:
> Hi,
>
>
> On 19-09-16 17:00, Tom Rini wrote:
>>
>> On Mon, Sep 19, 2016 at 04:53:04PM +0200, Hans de Goede wrote:
>>>
>>> Hi,
>>>
>>> On 19-09-16 16:03, Tom Rini wrote:
>>>>
>>>> Based on A13-OLinuXino, enable DFU and UMS support.
>>>>
>>>> Signed-off-by: Tom Rini <trini@konsulko.com>
>>>> ---
>>>> With this change I've added DFU to my tests on this board, and assuming
>>>> a
>>>> follow up test with the SD image that kicks the board into FEL works,
>>>> I'll
>>>> then enable the UMS tests on this board (and add DFU to SD, not just DFU
>>>> to
>>>> RAM).
>>>>
>>>> configs/A20-OLinuXino-Lime2_defconfig | 8 ++++++++
>>>> 1 file changed, 8 insertions(+)
>>>>
>>>> diff --git a/configs/A20-OLinuXino-Lime2_defconfig
>>>> b/configs/A20-OLinuXino-Lime2_defconfig
>>>> index 23db07380624..54343de7f351 100644
>>>> --- a/configs/A20-OLinuXino-Lime2_defconfig
>>>> +++ b/configs/A20-OLinuXino-Lime2_defconfig
>>>> @@ -12,9 +12,17 @@
>>>> CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,RGMII,AHCI,SATAPWR=SUNXI_GPC(3)"
>>>> CONFIG_SPL=y
>>>> # CONFIG_CMD_IMLS is not set
>>>> # CONFIG_CMD_FLASH is not set
>>>> +CONFIG_CMD_DFU=y
>>>> +CONFIG_CMD_USB_MASS_STORAGE=y
>>>
>>>
>>> Do you need CMD_USB_MASS_STORAGE for your tests ? Enabling
>>> CMD_USB_MASS_STORAGE really seems orthogonal to enabling GADGET
>>> mode to me, esp. since it is only useful in host mode AFAICT.
>>
>>
>> Ah, no, things have bad names perhaps.  CMD_USB_MASS_STORAGE enables
>> "ums" as a command which is what in turn will export MMC (or something
>> else) as a USB mass storage gadget over to the host.
>
>
> Ah, I thought this enabled the (destructive) low level usb mass storage
> block read/write test commands, but I guess I'm wrong.
>
> I wonder why Chen-Yu put it in the usb host enabling patch for
> an A33 board then...
>

It was copy pasted from some other defconfig. Like you, I thought it was
for host mode supporting USB sticks...

ChenYu

>>> Chen-Yu did something similar in a patch enabling host mode for a
>>> different sunxi board and here is what I replied:
>>>
>>> "
>>> If we want to enable CONFIG_CMD_USB_MASS_STORAGE on sunxi, we really
>>> should do so on all boards (feel free to submit a patch for this).
>>>
>>> e.g. add something like this to board/sunxi/Kconfig:
>>>
>>> config CMD_USB_MASS_STORAGE
>>>     default y
>
>
> Given the above, that should probably be:
>
> config CMD_USB_MASS_STORAGE
>        default y if USB_GADGET
>
>
> Hmm, I guess we may want to have a bunch of those, so that
> simply adding:
>
> CONFIG_USB_MUSB_GADGET=y
>
> To a defconfig enables the relevant related options...
>
> Regards,
>
> Hans
>
>
>
>>>
>>> So that we can still disable it in case there are space constraints,
>>> but normally we enable it on all sunxi boards offering a
>>> consistent set of available commands.
>>> "
>>
>>
>> I think it's a useful command that should be more widely exposed, yes.
>> IIRC, it's how the Tegra platforms support flashing their dev boards
>> with official images, and can be a handy "rescue" type option too.
>>
>>>
>>> The same goes for this patch, otherwise this patch is:
>>>
>>> Reviewed-by: Hans de Goede <hdegoede@redhat.com>
>>>
>>> Ig you want to feel free to apply this directly
>>> (given that I've send out a sunxi pull-req recently).
>>
>>
>> OK, thanks.  I just might since I really want to move on to grabbing
>> some fs patches and before I do that I really want to have as much
>> testing of them as possible.
>>
> _______________________________________________
> U-Boot mailing list
> U-Boot@lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot
diff mbox

Patch

diff --git a/configs/A20-OLinuXino-Lime2_defconfig b/configs/A20-OLinuXino-Lime2_defconfig
index 23db07380624..54343de7f351 100644
--- a/configs/A20-OLinuXino-Lime2_defconfig
+++ b/configs/A20-OLinuXino-Lime2_defconfig
@@ -12,9 +12,17 @@  CONFIG_SYS_EXTRA_OPTIONS="SUNXI_GMAC,RGMII,AHCI,SATAPWR=SUNXI_GPC(3)"
 CONFIG_SPL=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
+CONFIG_CMD_DFU=y
+CONFIG_CMD_USB_MASS_STORAGE=y
 # CONFIG_CMD_FPGA is not set
 CONFIG_RTL8211X_PHY_FORCE_MASTER=y
 CONFIG_ETH_DESIGNWARE=y
 CONFIG_AXP_ALDO3_VOLT=2800
 CONFIG_AXP_ALDO4_VOLT=2800
 CONFIG_USB_EHCI_HCD=y
+CONFIG_USB_MUSB_GADGET=y
+CONFIG_USB_GADGET=y
+CONFIG_USB_GADGET_DOWNLOAD=y
+CONFIG_G_DNL_MANUFACTURER="Allwinner Technology"
+CONFIG_G_DNL_VENDOR_NUM=0x1f3a
+CONFIG_G_DNL_PRODUCT_NUM=0x1010