[U-Boot] [PATCH 12/13] sunxi: A13-Olinuxino: Enable the USB OTG controller

Maxime Ripard
2015-09-13T17:13:57Z

On Thu, Sep 10, 2015 at 08:47:03PM +0200, Hans de Goede wrote:
> Hi,
>
> On 03-09-15 23:41, Maxime Ripard wrote:
> >Hi Hans,
> >
> >On Tue, Sep 01, 2015 at 11:01:06AM +0200, Hans de Goede wrote:
> >>Hi,
> >>
> >>On 31-08-15 16:46, Maxime Ripard wrote:
> >>>The A13-Olinuxino has a mini-USB connector that can be used to power up
> >>>the board and as an OTG connector.
> >>>
> >>>Since we have already some USB host-only ports right beside this one,
> >>>enable it in gadget mode
> >>>
> >>>Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
> >>>---
> >>> configs/A13-OLinuXino_defconfig | 2 ++
> >>> 1 file changed, 2 insertions(+)
> >>>
> >>>diff --git a/configs/A13-OLinuXino_defconfig b/configs/A13-OLinuXino_defconfig
> >>>index 4b4337223ca5..70aa194b91c4 100644
> >>>--- a/configs/A13-OLinuXino_defconfig
> >>>+++ b/configs/A13-OLinuXino_defconfig
> >>>@@ -3,6 +3,7 @@ CONFIG_ARCH_SUNXI=y
> >>> CONFIG_MACH_SUN5I=y
> >>> CONFIG_DRAM_CLK=408
> >>> CONFIG_DRAM_EMR1=0
> >>>+CONFIG_USB0_VBUS_DET="PG1"
> >>> CONFIG_USB1_VBUS_PIN="PG11"
> >>> CONFIG_AXP_GPIO=y
> >>> # CONFIG_VIDEO_HDMI is not set
> >>>@@ -11,6 +12,7 @@ CONFIG_VIDEO_VGA_VIA_LCD_FORCE_SYNC_ACTIVE_HIGH=y
> >>> CONFIG_VIDEO_LCD_MODE="x:800,y:480,depth:18,pclk_khz:33000,le:16,ri:209,up:22,lo:22,hs:30,vs:1,sync:3,vmode:0"
> >>> CONFIG_VIDEO_LCD_POWER="AXP0-0"
> >>> CONFIG_VIDEO_LCD_BL_PWM="PB2"
> >>>+CONFIG_USB_MUSB_SUNXI=y
> >>> CONFIG_DEFAULT_DEVICE_TREE="sun5i-a13-olinuxino"
> >>> # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
> >>> CONFIG_SPL=y
> >>
> >>The CONFIG_xxx defines for using MUSB in either host or gadget mode have
> >>changed in v2015.10, looks like you need to rebase this series and fix
> >>this.
> >
> >This was based on 2015.10-rc2.
>
> Are you sure?
>
> drivers/usb/musb-new/Kconfig has:
>
> config USB_MUSB_HOST
> bool "MUSB host mode support"
> help
> Enables the MUSB USB dual-role controller in host mode.
>
> config USB_MUSB_GADGET
> bool "MUSB gadget mode support"
> help
> Enables the MUSB USB dual-role controller in gadget mode.
>
> if USB_MUSB_HOST || USB_MUSB_GADGET
>
> config USB_MUSB_SUNXI
> bool "Enable sunxi OTG / DRC USB controller"
> depends on ARCH_SUNXI
> default y
> ---help---
> Say y here to enable support for the sunxi OTG / DRC USB controller
> used on almost all sunxi boards.
>
> endif
>
> And you are not setting USB_MUSB_HOST nor USB_MUSB_GADGET so you should
> never get a chance to set USB_MUSB_SUNXI. Also note that USB_MUSB_SUNXI
> gets selected automatically as soon as you select either USB_MUSB_HOST
> or USB_MUSB_GADGET...

Hmmm, there's something fishy then. I maybe used menuconfig and forgot
to fix the defconfig or something. I don't see any other
explanation. Anyway, I'll update and fix it in v2, obviously :)

> > I enabled it as a gadget through menuconfig. What is the policy on
> >using gadget vs host? I guess it would make more sense to enable
> >all the OTG connectors to gadget, but maybe that's just me.
>
> The policy I'm thinking of (and which we are currently sorta following
> wrt enabling USB_MUSB_HOST) is that on devices with no normal usb
> ports we use USB_MUSB_HOST, so that people can interact with u-boot
> without needing a serial console (which often requires soldering).
>
> On boards which do have a normal usb port I fully agree that
> USB_MUSB_GADGET is a good default.
>
> In practice this will likely boil down to use USB_MUSB_HOST on tablets
> and USB_MUSB_GADGET everywhere else.

Sounds good!

If there's a UART gadget, we could also always select USB_MUSB_GADGET,
and export a UART there for the tablets, but I haven't seen such a
gadget in the code, so I guess your idea makes more sense :)

Maxime

--
Maxime Ripard, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20150913/d622c906/attachment.sig>