Hello there,
I have two SSDs. First one I call it SSD2, the other I call it SSD1
Let’s talk about the SSD2 first. I’m checking if I can have UPHY1(L4 to L7) works with SSD2.
HS_UPHY1_L4_TX_P
HS_UPHY1_L4_TX_N
HS_UPHY1_L5_RX_P
HS_UPHY1_L5_RX_N
HS_UPHY1_L5_TX_P
HS_UPHY1_L5_TX_N
HS_UPHY1_L6_RX_P
HS_UPHY1_L6_RX_N
HS_UPHY1_L6_TX_P
HS_UPHY1_L6_TX_N
HS_UPHY1_L7_RX_P
HS_UPHY1_L7_RX_N
HS_UPHY1_L7_TX_P
HS_UPHY1_L7_TX_N
Hers is my device tree, according to AGX PCIE, The UPHY1 is enabled as default.
pcie@141a0000 {
status = "okay";
vddio-pex-ctl-supply = <&vdd_1v8_ls>;
vpcie3v3-supply = <&vdd_3v3_pcie>;
vpcie12v-supply = <&vdd_12v_pcie>;
phys = <&p2u_nvhs_0>, <&p2u_nvhs_1>, <&p2u_nvhs_2>,
<&p2u_nvhs_3>, <&p2u_nvhs_4>, <&p2u_nvhs_5>,
<&p2u_nvhs_6>, <&p2u_nvhs_7>;
phy-names = "p2u-0", "p2u-1", "p2u-2", "p2u-3", "p2u-4",
"p2u-5", "p2u-6", "p2u-7";
};
And I’m using PCIE7 clkreq and rst below.
pex_l7_clkreq_n_pag0 {
nvidia,pins = "pex_l7_clkreq_n_pag0";
nvidia,function = "pe7";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
nvidia,io-high-voltage = <TEGRA_PIN_ENABLE>;
nvidia,lpdr = <TEGRA_PIN_DISABLE>;
};
pex_l7_rst_n_pag1 {
nvidia,pins = "pex_l7_rst_n_pag1";
nvidia,function = "pe7";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
nvidia,io-high-voltage = <TEGRA_PIN_ENABLE>;
nvidia,lpdr = <TEGRA_PIN_DISABLE>;
};
After booting done, I can’t see the SSD2 is mounted…also the lspci doesn’t show pci information.
However, the SSD1 is able to work with UPHY0(L4 to L7)
HS_UPHY0_L4_RX_P
HS_UPHY0_L4_RX_N
HS_UPHY0_L4_TX_P
HS_UPHY0_L4_TX_N
HS_UPHY0_L5_RX_P
HS_UPHY0_L5_RX_N
HS_UPHY0_L5_TX_P
HS_UPHY0_L5_TX_N
HS_UPHY0_L6_RX_P
HS_UPHY0_L6_RX_N
HS_UPHY0_L6_TX_P
HS_UPHY0_L6_TX_N
HS_UPHY0_L7_RX_P
HS_UPHY0_L7_RX_N
HS_UPHY0_L7_TX_P
HS_UPHY0_L7_TX_N
And SSD1 using PCIE 4 clkreq and rst
pex_l4_clkreq_n_pl0 {
nvidia,pins = "pex_l4_clkreq_n_pl0";
nvidia,function = "pe4";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
nvidia,io-high-voltage = <TEGRA_PIN_ENABLE>;
nvidia,lpdr = <TEGRA_PIN_DISABLE>;
};
pex_l4_rst_n_pl1 {
nvidia,pins = "pex_l4_rst_n_pl1";
nvidia,function = "pe4";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
nvidia,io-high-voltage = <TEGRA_PIN_ENABLE>;
nvidia,lpdr = <TEGRA_PIN_DISABLE>;
};
After booting done, I can see the SSD1 is mounted. lspci also has pci information
ubuntu@tegra-ubuntu:~$ lspci
0004:00:00.0 PCI bridge: NVIDIA Corporation Device 229c (rev a1)
0004:01:00.0 Non-Volatile memory controller: ADATA Technology Co., Ltd. Device 1202 (rev 01)
Here is completed DT :
extracted_proc.txt (393.6 KB)
My ODMDATA=“gbe-uphy-config-22,hsstp-lane-map-3,nvhs-uphy-config-0,hsio-uphy-config-0,gbe0-enable-10g”;
Am I having wrong configuration for UPHY1?