[U-Boot] [PATCH v4 00/10] Improvements for the dwc3_generic driver
Jean-Jacques Hiblot
jjhiblot at ti.com
Fri Dec 7 07:46:14 UTC 2018
On 06/12/2018 21:56, Loic Devulder wrote:
> Hi,
>
> I re-tested this series on Khadas VIM1 and it still fix the USB issue I
> had with 'usb reset' (I already tested v2 patches).
>
> I just have a message and I'm not sure that I had it last time:
> "Error disabling PHY supply
> Can't shutdown USB PHY1 for dwc3 at c9000000"
>
> But USB stack looks ok, I can plug/unplug USB key and do the reset, all
> works as expected.
>
> Since my last test lot of changes has been done in Amlogic SoCs, maybe
> it's because of this?
>
> So if you want you can add my tested-by flag.
> Tested-by: Loic Devulder <ldevulder at suse.de>
Thank you for testing
>
> On 11/29/18 10:52 AM, Jean-Jacques Hiblot wrote:
>> This series aims at bringing improvements to the dwc3_generic driver so
>> that it can be used by most of the platforms using the dwc3 controller.
>>
>> I tested this on with DRA7 and AM57x platforms for both Peripheral and Host
>> operations. The code to enable DM USB host & dev support for those
>> platforms will be submitted in a separate series.
>>
>> Michal Simek has tested this series:
>> " I have tested it on zcu100 with usb stick, usb to ethernet converter and
>> also dfu.
>> Tested-by: Michal Simek <michal.simek at xilinx.com>"
>>
>> Enhancements:
>> - use separate Kconfig option for DM USB Periphal and DM USB Host. This
>> allow platforms to keep their non-DM USB peripheral code and use the DM
>> USB host.
>> - fixes the bind/probe confusion in dwc3_generic. The probe is done when
>> the USB device is first needed.
>> - handles PHYs when in the peripheral mode. The code to handle the PHYs is
>> shared with the host side
>> - handles clock and reset
>> - bind host controller to the more generic driver 'xhci-dwc3'
>>
>>
>> Changes in v4:
>> - rebased on latest U-Boot
>> - renamed DM_USB_DEV as DM_USB_GADGET
>> - Add a new commit to create a new UCLASS for USB gadget drivers
>>
>> Changes in v3:
>> - fixes bug dwc3_setup_phy(): the phy arrays wasn't returned. This was
>> visible only when the device is removed.
>> - Stub the DWC3 PHY operations if CONFIG_IS_ENABLED(PHY) is false.
>> This fixes all build issues but one (evb-rk3328).
>> - Fix build issue with evb-rk3328 by enabling CONFIG_USB_DWC3. This has
>> little impact on the footprint and should not break the runtime as the
>> xhci-rockchip driver has its own probe function.
>> Nevertheless this was !!! NOT TESTED !!! by lack of hw
>>
>> Changes in v2:
>> - Updated commit log
>> - Fixed typo in thordown.c
>> - select DM_USB_DEV by default for zynqmp platforms
>>
>> Jean-Jacques Hiblot (10):
>> usb: gadget: Do not call board_usb_xxx() directly in USB gadget
>> drivers
>> usb: introduce a separate config option for DM USB device
>> usb: udc: implement DM versions of
>> usb_gadget_initialize()/_release()/_handle_interrupt()
>> dwc3_generic: do not probe the USB device driver when it's bound
>> dwc3: move phy operation to core.c
>> dm: usb: create a new UCLASS ID for USB gadget devices
>> configs: evb-rk3328: Enable CONFIG_USB_DWC3
>> dwc3-generic: Handle the PHYs, the clocks and the reset lines
>> dwc3-generic: Add select_dr_mode operation
>> usb: dwc3: Fix a compilation error with the edison defconfig
>>
>> arch/arm/Kconfig | 2 +
>> board/sunxi/board.c | 2 +-
>> cmd/fastboot.c | 4 +-
>> cmd/rockusb.c | 4 +-
>> cmd/thordown.c | 4 +-
>> cmd/usb_gadget_sdp.c | 4 +-
>> cmd/usb_mass_storage.c | 4 +-
>> common/dfu.c | 6 +-
>> configs/evb-rk3328_defconfig | 1 +
>> drivers/usb/Kconfig | 14 +++
>> drivers/usb/dwc3/Kconfig | 7 +-
>> drivers/usb/dwc3/core.c | 89 ++++++++++++++-
>> drivers/usb/dwc3/dwc3-generic.c | 208 ++++++++++++++++++++++++++++--------
>> drivers/usb/dwc3/ep0.c | 2 +-
>> drivers/usb/gadget/ether.c | 40 ++-----
>> drivers/usb/gadget/udc/Makefile | 4 +
>> drivers/usb/gadget/udc/udc-core.c | 3 +-
>> drivers/usb/gadget/udc/udc-uclass.c | 58 ++++++++++
>> drivers/usb/host/xhci-dwc3.c | 95 ++--------------
>> drivers/usb/musb-new/omap2430.c | 2 +-
>> drivers/usb/musb-new/sunxi.c | 2 +-
>> include/dm/uclass-id.h | 1 +
>> include/dwc3-uboot.h | 19 ++++
>> include/linux/usb/gadget.h | 18 ++++
>> 24 files changed, 401 insertions(+), 192 deletions(-)
>> create mode 100644 drivers/usb/gadget/udc/udc-uclass.c
>>
More information about the U-Boot
mailing list