[U-Boot] [PATCH v4 00/10] Improvements for the dwc3_generic driver

Loic Devulder ldevulder at suse.de
Thu Dec 6 20:56:59 UTC 2018


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>

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
> 

-- 
Loic Devulder <ldevulder at suse.com> | ldevulder at irc
0x175A963893C85F55 | D220 DEF5 56A3 DE00 9DAA 78BA 175A 9638 93C8 5F55
Senior QA Engineer | Container & Storage Solutions Quality Assurance
team (qa-css)
SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nuernberg, Germany
GF: F. Imendörffer, J. Smithard, J. Guild, D. Upmanyu, G. Norton HRB,
21284 (AG Nuernberg)

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: OpenPGP digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20181206/becb48b3/attachment.sig>


More information about the U-Boot mailing list