How to change the lane configuration on Jetson TX2

Could you please teach me how to change the lane configuration on Jetson TX2?
So the configuration menu is shown on OEM product guide Table 15.
The default configuration is Config #2.
I’d like to know how to change the following codes (This is default code).

85   pcie-controller@10003000 {
 86     pci@1,0 {
 87       nvidia,num-lanes = <4>;
 88       nvidia,disable-clock-request;
 89     };
 90     pci@2,0 {
 91       nvidia,num-lanes = <0>;
 92     };
 93     pci@3,0 {
 94       nvidia,num-lanes = <1>;
 95     };
 96   };

I’d like to change the configuration to config #6.

regards,

Please refer to following posts:
https://devtalk.nvidia.com/default/topic/1021886/jetson-tx2/pcie-usb-lane-mapping/post/5203705/#5203705
https://devtalk.nvidia.com/default/topic/1013740/jetson-tx2/tx2-config-3-for-usb-lane-mapping/post/5207826/#5207826
https://devtalk.nvidia.com/default/topic/1023160/jetson-tx2/tx2-using-pcix1-instead-of-usb3-default-config-1-/post/5207785/#5207785
https://elinux.org/Jetson/TX2_USB

Thanks to gave me an advice, i try it from now.

Excuse me, now I’d like to use USB_SS0# and USB_SS1#.
Now I can use USB_SS0#, but USB_SS1 is not activated.
I think the physical port USB_SS0 and PEX_RFU should be connected to connector in the case of the configuration #6.
Is it correct?

And I tried to set the configuration #6 but I may be failed it.
I don’t understand where is wrong point?
I set ODMDATA=0x3090000 and modified tegra186-quill-p3310-1000-c03-00-base.dts as below;
Could you please give me advice?

pcie-controller@10003000 {
                pci@1,0 {
                        nvidia,num-lanes = <2>;
                        nvidia,disable-clock-request;
                };
                pci@2,0 {
                        nvidia,num-lanes = <1>;
                };
                pci@3,0 {
                        nvidia,num-lanes = <1>;
                };
        };

        xhci@3530000 {
                phys = <&tegra_xusb_padctl TEGRA_PADCTL_PHY_UTMI_P(0)>,
                        <&tegra_xusb_padctl TEGRA_PADCTL_PHY_UTMI_P(1)>,
                        <&tegra_xusb_padctl TEGRA_PADCTL_PHY_UTMI_P(2)>,
                        <&tegra_xusb_padctl TEGRA_PADCTL_PHY_USB3_P(0)>,
                        <&tegra_xusb_padctl TEGRA_PADCTL_PHY_USB3_P(1)>;
                phy-names = "utmi-0", "utmi-1", "utmi-2", "usb3-0", "usb3-1";
        };

        pinctrl@3520000 {
                pinmux {

                        usb3-std-A-port1 {
                                nvidia,lanes = "usb3-0";
                                nvidia,port-cap = <TEGRA_PADCTL_PORT_HOST_ONLY>;
                                status = "okay";
                        };
                        usb3-std-A-port2 {
                                nvidia,lanes = "usb3-1";
                                nvidia,port-cap = <TEGRA_PADCTL_PORT_HOST_ONLY>;
                                status = "okay";
                        };
                        e3325-usb3-std-A-HS {
                                status = "okay"; // add usb2.0? to M.2
                        };
                };
        };

regards,

Please use xxd to check the final dtb is correct.

For example,

sudo -s 
xxd /proc/device-tree/xhci@3530000/phy-names
xxd /proc/device-tree/pinctrl@3520000/pinmux/***each usb here***

Hi Wayne,
How is it following result?

nvidia@tegra-ubuntu:~$ sudo -s
[sudo] password for nvidia:
root@tegra-ubuntu:~# xxd /proc/device-tree/xhci@3530000/phy-names
00000000: 7574 6d69 2d30 0075 746d 692d 3100 7574 utmi-0.utmi-1.ut
00000010: 6d69 2d32 0075 7362 332d 3000 7573 6233 mi-2.usb3-0.usb3
00000020: 2d31 00 -1.
root@tegra-ubuntu:~# ls /proc/device-tree/pinctrl@3520000/pinmux/
e3325-usb3-std-A-HS name usb2-std-A-port2
e3325-usb3-std-A-SS phandle usb3-std-A-port1
linux,phandle usb2-micro-AB usb3-std-A-port2
root@tegra-ubuntu:~# xxd /proc/device-tree/pinctrl@3520000/pinmux/usb3-std-A-port1/name
00000000: 7573 6233 2d73 7464 2d41 2d70 6f72 7431 usb3-std-A-port1
00000010: 00 .
root@tegra-ubuntu:~# xxd /proc/device-tree/pinctrl@3520000/pinmux/usb3-std-A-port2/name
00000000: 7573 6233 2d73 7464 2d41 2d70 6f72 7432 usb3-std-A-port2
00000010: 00 .
root@tegra-ubuntu:~#

Could you give out the status of those usb3-std-A-port instead of their name?
Also, please share your dmesg.

Hi, I attach the dmesg and usb3 status.
Could you please check them?
usb3-status.txt (321 Bytes)
dmesg.txt (61.1 KB)

Hi takashi.hayakawa.js,

Does usb driver show any log when you plug device into USB_SS1 port?

This user enabled 2 usb ports at last. Post his thread as reference.

https://devtalk.nvidia.com/default/topic/1029115/

Please also check your hardware design.