Update the DTB again: TEGRA_GPIO(I, 2) set output low,nvidia,num-lanes = <1>.
The USB_SS#2 on Lane3 and PCIe#0_0 can not to work.
lspci
00:02.0 PCI bridge: NVIDIA Corporation Device 0faf (rev a1)
01:00.0 Multimedia video controller: Device 1cd7:0011 (rev 01)
lsusb -t
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci-tegra/4p, 5000M
|__ Port 1: Dev 2, If 0, Class=Vendor Specific Class, Driver=r8152, 5000M
|__ Port 3: Dev 3, If 0, Class=Hub, Driver=hub/4p, 5000M
|__ Port 1: Dev 4, If 0, Class=Hub, Driver=hub/4p, 5000M
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci-tegra/5p, 480M
|__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M
|__ Port 1: Dev 3, If 0, Class=Hub, Driver=hub/4p, 480M
|__ Port 3: Dev 4, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
|__ Port 4: Dev 5, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
|__ Port 4: Dev 5, If 1, Class=Human Interface Device, Driver=usbhid, 1.5M
dmesg
[ 3.579144] xhci-tegra 70090000.xusb: can't get usb3-0 phy (-517)
[ 3.579809] tegra21x-padctl-uphy 7009f000.pinctrl: padctl mmio start 0x000000007009f000 end 0x000000007009ffff
[ 3.579819] tegra21x-padctl-uphy 7009f000.pinctrl: TEGRA_FUSE_SKU_CALIB_0 0xaa4a414
[ 3.579827] tegra21x-padctl-uphy 7009f000.pinctrl: TEGRA_FUSE_USB_CALIB_EXT_0 0x4
[ 3.581154] tegra21x-padctl-uphy 7009f000.pinctrl: UTMI-1 is used by XUSB
[ 3.581172] tegra21x-padctl-uphy 7009f000.pinctrl: uphy_lane = 6, set usb3_lanes = 0x40
[ 3.581188] tegra21x-padctl-uphy 7009f000.pinctrl: USB3 port 0 maps to USB2 port 1
[ 3.581195] tegra21x-padctl-uphy 7009f000.pinctrl: UTMI-0 is used by XUSB
[ 3.581209] tegra21x-padctl-uphy 7009f000.pinctrl: uphy_lane = 3, set usb3_lanes = 0x48
[ 3.581222] tegra21x-padctl-uphy 7009f000.pinctrl: USB3 port 2 maps to USB2 port 0
[ 3.581229] tegra21x-padctl-uphy 7009f000.pinctrl: UTMI-2 is used by XUSB
[ 3.581241] tegra21x-padctl-uphy 7009f000.pinctrl: uphy_lane = 5, set usb3_lanes = 0x68
[ 3.581254] tegra21x-padctl-uphy 7009f000.pinctrl: USB3 port 1 maps to USB2 port 2
[ 3.581260] tegra21x-padctl-uphy 7009f000.pinctrl: UTMI-3 is used by XUSB
[ 3.581277] tegra21x-padctl-uphy 7009f000.pinctrl: uphy_lane = 4, set pcie_lanes = 0x10
[ 3.581295] tegra21x-padctl-uphy 7009f000.pinctrl: uphy_lane = 0, set pcie_lanes = 0x11
[ 3.581315] tegra21x-padctl-uphy 7009f000.pinctrl: uphy_lane = 7, set sata_lanes = 0x80
[ 3.582091] usb-vbus1: supplied by vdd-3v3
[ 3.584685] tegra21x-padctl-uphy 7009f000.pinctrl: Done tegra21x_padctl_uphy_probe
[ 3.587384] tegra-pcie 1003000.pcie-controller: wrong configuration updated in DT, switching to default 4x1, 1x1 configuration
[ 3.587614] tegra-pcie 1003000.pcie-controller: PCIE: Enable power rails
[ 3.588316] clk_cbus_round_rate: no gbus parent
[ 3.588323] tegra_gpu_edp gpu_edp: unable to get max GPU freq
[ 3.588716] tegra-pcie 1003000.pcie-controller: probing port 0, using 4 lanes
[ 3.590551] gk20a 57000000.gpu: GPCPLL initial settings: NA mode, M=1, N=34, P=3
[ 3.590947] tegra-pcie 1003000.pcie-controller: probing port 1, using 1 lanes
dts file fragment
gpio@6000d000 {
wlan-default-output-low {
gpio-hog;
output-low;
gpios = <
TEGRA_GPIO(I, 2) 0
>;
};
};
pcie-controller@1003000 {
nvidia,wake-gpio = <&gpio TEGRA_GPIO(A, 2) 0>;
dvdd-pex-pll-supply = <&max77620_ldo1>;
l0-dvddio-pex-supply = <&max77620_ldo1>;
l1-dvddio-pex-supply = <&max77620_ldo1>;
l2-dvddio-pex-supply = <&max77620_ldo1>;
l3-dvddio-pex-supply = <&max77620_ldo1>;
l4-dvddio-pex-supply = <&max77620_ldo1>;
l5-dvddio-pex-supply = <&max77620_ldo1>;
l6-dvddio-pex-supply = <&max77620_ldo1>;
hvdd-pex-pll-e-supply = <&max77620_sd3>;
l0-hvddio-pex-supply = <&max77620_sd3>;
l1-hvddio-pex-supply = <&max77620_sd3>;
l2-hvddio-pex-supply = <&max77620_sd3>;
l3-hvddio-pex-supply = <&max77620_sd3>;
l4-hvddio-pex-supply = <&max77620_sd3>;
l5-hvddio-pex-supply = <&max77620_sd3>;
l6-hvddio-pex-supply = <&max77620_sd3>;
vddio-pex-ctl-supply = <&max77620_sd3>;
status = "okay";
pci@1,0 {
nvidia,num-lanes = <1>;
status = "okay";
};
pci@2,0 {
nvidia,num-lanes = <1>;
status = "okay";
};
};
pinctrl@7009f000 {
status = "okay";
pinctrl-0 = <&tegra_padctl_uphy_pinmux_default>;
pinctrl-names = "default";
vbus-2-supply = <&battery_reg>;
tegra_padctl_uphy_pinmux_default: pinmux {
usb2-eth {
nvidia,lanes = "otg-1";
nvidia,function = "xusb";
nvidia,port-cap =
<TEGRA_PADCTL_PORT_HOST_ONLY>;
};
usb3-eth {
nvidia,lanes = "uphy-lane-6";
nvidia,function = "usb3";
nvidia,usb3-port = <0>;
nvidia,usb2-map = <1>;
nvidia,port-cap =
<TEGRA_PADCTL_PORT_HOST_ONLY>;
};
usb2-bottom {
nvidia,lanes = "otg-0";
nvidia,function = "xusb";
nvidia,port-cap =
<TEGRA_PADCTL_PORT_HOST_ONLY>;
};
usb3-bottom {
nvidia,lanes = "uphy-lane-3";
nvidia,function = "usb3";
nvidia,usb3-port = <2>;
nvidia,usb2-map = <0>;
nvidia,port-cap =
<TEGRA_PADCTL_PORT_HOST_ONLY>;
};
usb2-top {
nvidia,lanes = "otg-2";
nvidia,function = "xusb";
nvidia,port-cap =
<TEGRA_PADCTL_PORT_HOST_ONLY>;
};
usb3-top {
nvidia,lanes = "uphy-lane-5";
nvidia,function = "usb3";
nvidia,usb3-port = <1>;
nvidia,usb2-map = <2>;
nvidia,port-cap =
<TEGRA_PADCTL_PORT_HOST_ONLY>;
};
usb2-mini-pcie {
nvidia,lanes = "otg-3";
nvidia,function = "xusb";
nvidia,port-cap =
<TEGRA_PADCTL_PORT_HOST_ONLY>;
};
hsic {
nvidia,lanes = "hsic-0";
nvidia,function = "hsic";
};
pcie-eth {
nvidia,lanes = "uphy-lane-4";
nvidia,function = "pcie";
nvidia,pcie-controller = <0>;
nvidia,pcie-lane-select =
<TEGRA_PADCTL_PCIE_LANE_X1>;
};
pcie-mini {
nvidia,lanes = "uphy-lane-0";
nvidia,function = "pcie";
nvidia,pcie-controller = <1>;
nvidia,pcie-lane-select =
<TEGRA_PADCTL_PCIE_LANE_X1>;
};
sata {
nvidia,lanes = "uphy-lane-7";
nvidia,function = "sata";
};
};
};
/* XUSB host mode*/
xusb@70090000 {
status = "okay";
extcon-cables = <&vbus_gpio_extcon 1>;
extcon-cable-names = "id";
#extcon-cells = <1>;
phys =
<&tegra_padctl_uphy TEGRA_PADCTL_UPHY_UTMI_P(1)>,
<&tegra_padctl_uphy TEGRA_PADCTL_UPHY_USB3_P(0)>,
<&tegra_padctl_uphy TEGRA_PADCTL_UPHY_UTMI_P(0)>,
<&tegra_padctl_uphy TEGRA_PADCTL_UPHY_USB3_P(2)>,
<&tegra_padctl_uphy TEGRA_PADCTL_UPHY_UTMI_P(2)>,
<&tegra_padctl_uphy TEGRA_PADCTL_UPHY_USB3_P(1)>,
<&tegra_padctl_uphy TEGRA_PADCTL_UPHY_UTMI_P(3)>;
phy-names = "utmi-1","usb3-0","utmi-0","usb3-2", "utmi-2","usb3-1", "utmi-3";
nvidia,pmc-wakeup =
<&tegra_pmc
PMC_WAKE_TYPE_EVENT 41 PMC_TRIGGER_TYPE_HIGH>,
<&tegra_pmc
PMC_WAKE_TYPE_EVENT 44 PMC_TRIGGER_TYPE_HIGH>;
};