Add driver for XUSB device mode controller available on Tegra Soc Patches 1-3 are phy driver changes to add support for device mode Patches 4-7 are changes related to XUSB device mode controller driver Patch 8 is to enable XUDC driver in defconfig Test Steps(USB 2.0): - Enable "USB Gadget precomposed configurations" in defconfig - Build, flash and boot Jetson TX1 - Connect Jetson TX1 and Ubuntu device using USB A to Micro B cable - After boot on Jetson TX1 terminal usb0 network device should be enumerated - Assign static ip to usb0 on Jetson TX1 and corresponding net device on ubuntu - Run ping test and transfer test(used scp) to check data transfer communication SS mode is verified by enabling Type A port as device Above patches are dependent on https://patchwork.ozlabs.org/patch/976332/ Nagarjuna Kristam (8): phy: tegra: xusb: t210: add XUSB device mode support arm64: tegra: Add nvidia,usb3-port-fake entry to Jetson TX1 padctl dt-bindings: phy: tegra-xusb-padctl: Add nvidia,usb3-port-fake entry arm64: tegra: Add xudc node for Tegra210 arm64: tegra: Enable xudc on Jetson TX1 dt-bindings: usb: Add NVIDIA Tegra XUSB device mode controller binding usb: gadget: Add UDC driver for tegra XUSB device mode controller arm64: defconfig: Enable tegra XUDC driver .../bindings/phy/nvidia,tegra124-xusb-padctl.txt | 3 + .../devicetree/bindings/usb/nvidia,tegra-xudc.txt | 67 + arch/arm64/boot/dts/nvidia/tegra210-p2597.dtsi | 16 + arch/arm64/boot/dts/nvidia/tegra210.dtsi | 17 + arch/arm64/configs/defconfig | 1 + drivers/phy/tegra/xusb-tegra210.c | 297 +- drivers/phy/tegra/xusb.c | 75 +- drivers/phy/tegra/xusb.h | 16 +- drivers/usb/gadget/udc/Kconfig | 11 + drivers/usb/gadget/udc/Makefile | 1 + drivers/usb/gadget/udc/tegra_xudc.c | 3821 ++++++++++++++++++++ include/linux/phy/tegra/xusb.h | 7 +- 12 files changed, 4323 insertions(+), 9 deletions(-) create mode 100644 Documentation/devicetree/bindings/usb/nvidia,tegra-xudc.txt create mode 100644 drivers/usb/gadget/udc/tegra_xudc.c -- 2.7.4