usb: dwc2_udc_otg: support 8-bit interface
authorSteve Rae <srae@broadcom.com>
Tue, 7 Jun 2016 22:35:21 +0000 (15:35 -0700)
committerMarek Vasut <marex@denx.de>
Mon, 13 Jun 2016 13:16:34 +0000 (15:16 +0200)
Define CONFIG_USB_GADGET_DWC2_OTG_PHY_BUS_WIDTH_8 to allow the
physical interface to be 8-bit (rather than 16-bit).

Signed-off-by: Steve Rae <srae@broadcom.com>
drivers/usb/gadget/Kconfig
drivers/usb/gadget/dwc2_udc_otg.c

index a35a1c7..ae62476 100644 (file)
@@ -52,6 +52,16 @@ config USB_GADGET_DWC2_OTG
          driver to operate in Peripheral mode. This option requires
          USB_GADGET to be enabled.
 
+if USB_GADGET_DWC2_OTG
+
+config USB_GADGET_DWC2_OTG_PHY_BUS_WIDTH_8
+       bool "DesignWare USB2.0 HS OTG controller 8-bit PHY bus width"
+       help
+         Set the Designware USB2.0 high-speed OTG controller
+         PHY interface width to 8 bits, rather than the default (16 bits).
+
+endif # USB_GADGET_DWC2_OTG
+
 config CI_UDC
        bool "ChipIdea device controller"
        select USB_GADGET_DUALSPEED
index cb20b00..a23278d 100644 (file)
@@ -415,7 +415,11 @@ static void reconfig_usbd(struct dwc2_udc *dev)
                |0<<7           /* Ulpi DDR sel*/
                |0<<6           /* 0: high speed utmi+, 1: full speed serial*/
                |0<<4           /* 0: utmi+, 1:ulpi*/
+#ifdef CONFIG_USB_GADGET_DWC2_OTG_PHY_BUS_WIDTH_8
+               |0<<3           /* phy i/f  0:8bit, 1:16bit*/
+#else
                |1<<3           /* phy i/f  0:8bit, 1:16bit*/
+#endif
                |0x7<<0;        /* HS/FS Timeout**/
 
        if (dev->pdata->usb_gusbcfg)