Some time ago Thierry Reding sent out patches that enabled UDC on NVIDIA
Tegra, unfortunately they haven't got enough traction to get into the
kernel. I've rebased those patches and added a fix for the Ethernet USB
Gadget on Tegra20, Marc Dietrich tested UDC driver on AC100 (Tegra20),
Nicolas Chauvet on TK1 (Tegra124) and Michał Mirosław on TF300T (Tegra30).
Like an original patchset, this series adds support for the peripheral
mode only.


1) Move of_device_get_match_data() above clock enabling to not leave clock
   enabled in case of error. The SoC data matching function shouldn't ever
   fail, but let's assume that it could for consistency.

1) Use of_device_get_match_data() instead of of_match_node() to cleanup
   code a tad.

1) Specified platform flags directly in the SoC info as per Michał's

1) Added comments to each of patched USB Ethernet gadget models.

2) Added explanatory comment about why usb_phy_set_suspend() invocation
   is necessary in tegra_udc_probe().

3) Dropped TrimSlice from patchset because it turned out that it uses USB1
   controller for USB-to-SATA.

4) Moved tegra_defconfig patch before DT patches as per Stephen's suggestion.

5) Changed dr_mode to "peripheral" in DT patches since we don't support role
   mode switching for now.

Dmitry Osipenko (4):
  usb: gadget: f_ecm/f_eem/f_rndis: Setup quirk_avoids_skb_reserve
  usb: chipidea: udc: Support SKB alignment quirk
  ARM: defconfig: tegra: Enable ChipIdea UDC driver
  ARM: tegra: Enable UDC on AC100

Thierry Reding (4):
  usb: chipidea: Add support for Tegra20/30/114/124
  ARM: tegra: Enable UDC on Beaver
  ARM: tegra: Enable UDC on Dalmore
  ARM: tegra: Enable UDC on Jetson TK1

 arch/arm/boot/dts/tegra114-dalmore.dts    |  10 ++
 arch/arm/boot/dts/tegra124-jetson-tk1.dts |  12 ++-
 arch/arm/boot/dts/tegra20-paz00.dts       |   2 +
 arch/arm/boot/dts/tegra30-beaver.dts      |  10 ++
 arch/arm/configs/tegra_defconfig          |  10 +-
 drivers/usb/chipidea/Makefile             |   1 +
 drivers/usb/chipidea/ci_hdrc_tegra.c      | 155 ++++++++++++++++++++++++++++++
 drivers/usb/chipidea/udc.c                |   3 +
 drivers/usb/gadget/function/f_ecm.c       |   7 ++
 drivers/usb/gadget/function/f_eem.c       |   5 +
 drivers/usb/gadget/function/f_rndis.c     |   4 +
 include/linux/usb/chipidea.h              |   1 +
 12 files changed, 214 insertions(+), 6 deletions(-)
 create mode 100644 drivers/usb/chipidea/ci_hdrc_tegra.c


To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to
More majordomo info at

Reply via email to