Here is the patch I ended up with for r24.1 code base:
From a87ee8f7ce3c36d2d58f6a35b6a74a67e555d2c8 Mon Sep 17 00:00:00 2001
From: "dmitri.khokhlov" <dmitri.khokhlov@liquidr.com>
Date: Thu, 5 May 2016 10:14:59 -0700
Subject: [PATCH] kernel: usb3: enable second USB3 port
Signed-off-by: dmitri.khokhlov <dmitri.khokhlov@liquidr.com>
---
arch/arm64/boot/dts/tegra210-jetson-cv-base-p2597-2180-a00.dts | 10 +++++-----
drivers/usb/host/xhci-tegra.c | 4 ++++
2 files changed, 9 insertions(+), 5 deletions(-)
diff --git a/arch/arm64/boot/dts/tegra210-jetson-cv-base-p2597-2180-a00.dts b/arch/arm64/boot/dts/tegra210-jetson-cv-base-p2597-2180-a00.dts
index 1f0e05a..4d223b1 100644
--- a/arch/arm64/boot/dts/tegra210-jetson-cv-base-p2597-2180-a00.dts
+++ b/arch/arm64/boot/dts/tegra210-jetson-cv-base-p2597-2180-a00.dts
@@ -194,7 +194,7 @@
pcie-controller {
nvidia,wake-gpio = <&gpio TEGRA_GPIO(A, 2) 0>;
- nvidia,lane-map = <0x14>;
+ nvidia,lane-map = <0x12>;
dvdd-pex-pll-supply = <&max77620_ldo1>;
l0-dvddio-pex-supply = <&max77620_ldo1>;
l1-dvddio-pex-supply = <&max77620_ldo1>;
@@ -430,9 +430,9 @@
};
xusb_pad_ctl: xusb_padctl { /* Put common control config here */
- nvidia,ss_portmap = <0x21>;
- nvidia,lane_owner = <0xff56>; /* Use 0xF to disable lane assign */
- nvidia,lane-map = <0x14>;
+ nvidia,ss_portmap = <0x221>;
+ nvidia,lane_owner = <0xf356>; /* Use 0xF to disable lane assign */
+ nvidia,lane-map = <0x12>;
nvidia,enable-sata-port;
status = "okay";
};
@@ -442,7 +442,7 @@
/* nvidia,gpio_controls_muxed_ss_lanes; */
nvidia,gpio_ss1_sata = <0>;
nvidia,ulpicap = <0>; /* No ulpi support. can we remove */
- nvidia,portmap = <0x0e03>;
+ nvidia,portmap = <0x0e07>;
nvidia,common_padctl = <&xusb_pad_ctl>;
status = "okay";
};
diff --git a/drivers/usb/host/xhci-tegra.c b/drivers/usb/host/xhci-tegra.c
index 52c5144..3ed8c7a 100644
--- a/drivers/usb/host/xhci-tegra.c
+++ b/drivers/usb/host/xhci-tegra.c
@@ -5164,6 +5164,10 @@ static int tegra_xhci_probe(struct platform_device *pdev)
u32 port;
#endif
+ // enable USB_SS2
+ ret = gpio_request(66, "gps_en");
+ gpio_direction_output(66, 0);
+
if (tegra_platform_is_fpga())
xusb_tegra_program_registers();
--
1.9.1