Actually there are some extra patches added for PCIe C5 to support endpoint.
If you want to use C7, then you need to make sure similar thing exists.
diff --git a/nv-platform/tegra234-p3737-0000+p3701-xxxx-nv-common.dtsi b/nv-platform/tegra234-p3737-0000+p3701-xxxx-nv-common.dtsi
index 848f943..e190bbd 100644
--- a/nv-platform/tegra234-p3737-0000+p3701-xxxx-nv-common.dtsi
+++ b/nv-platform/tegra234-p3737-0000+p3701-xxxx-nv-common.dtsi
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: GPL-2.0-only
-// SPDX-FileCopyrightText: Copyright (c) 2022-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
+// SPDX-FileCopyrightText: Copyright (c) 2022-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
#include "nv-soc/tegra234-overlay.dtsi"
#include "nv-soc/tegra234-soc-thermal.dtsi"
@@ -306,6 +306,12 @@
gpu@17000000 {
status = "okay";
};
+
+ pcie-ep@141a0000 {
+ nvidia,refclk-select-gpios = <&gpio
+ TEGRA234_MAIN_GPIO(Q, 4)
+ GPIO_ACTIVE_HIGH>;
+ };
};
tegra-hsp@b950000 {
diff --git a/nv-soc/tegra234-soc-overlay.dtsi b/nv-soc/tegra234-soc-overlay.dtsi
index d77f1c8..7ff1bc8 100644
--- a/nv-soc/tegra234-soc-overlay.dtsi
+++ b/nv-soc/tegra234-soc-overlay.dtsi
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: GPL-2.0-only
-// SPDX-FileCopyrightText: Copyright (c) 2022-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
+// SPDX-FileCopyrightText: Copyright (c) 2022-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
//
// This file contains the DT nodes of T234 which are not in base/tegra234.dtsi
@@ -99,7 +99,49 @@
nvidia,lpdr = <TEGRA_PIN_DISABLE>;
};
};
-
+ pex_rst_c5_in_state: pex_rst_c5_in {
+ pex_rst {
+ nvidia,pins = "pex_l5_rst_n_paf1";
+ nvidia,function = "rsvd1";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_ENABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ nvidia,lpdr = <TEGRA_PIN_DISABLE>;
+ };
+ };
+ pex_rst_c6_in_state: pex_rst_c6_in {
+ pex_rst {
+ nvidia,pins = "pex_l6_rst_n_paf3";
+ nvidia,function = "rsvd1";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_ENABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ nvidia,io-high-voltage = <TEGRA_PIN_ENABLE>;
+ nvidia,lpdr = <TEGRA_PIN_DISABLE>;
+ };
+ };
+ pex_rst_c7_in_state: pex_rst_c7_in {
+ pex_rst {
+ nvidia,pins = "pex_l7_rst_n_pag1";
+ nvidia,function = "rsvd1";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_ENABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ nvidia,io-high-voltage = <TEGRA_PIN_ENABLE>;
+ nvidia,lpdr = <TEGRA_PIN_DISABLE>;
+ };
+ };
+ pex_rst_c10_in_state: pex_rst_c10_in {
+ pex_rst {
+ nvidia,pins = "pex_l10_rst_n_pag7";
+ nvidia,function = "rsvd1";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_ENABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ nvidia,io-high-voltage = <TEGRA_PIN_ENABLE>;
+ nvidia,lpdr = <TEGRA_PIN_DISABLE>;
+ };
+ };
eqos_mii_rx_input_state_disable: eqos_rx_disable {
eqos {
nvidia,pins = "eqos_rd0_pe6","eqos_rd1_pe7",
@@ -868,6 +910,38 @@
status = "disabled";
};
+ pcie-ep@141a0000 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pex_rst_c5_in_state>;
+
+ num-ib-windows = <2>;
+ num-ob-windows = <8>;
+ };
+
+ pcie-ep@141c0000 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pex_rst_c6_in_state>;
+
+ num-ib-windows = <2>;
+ num-ob-windows = <8>;
+ };
+
+ pcie-ep@141e0000 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pex_rst_c7_in_state>;
+
+ num-ib-windows = <2>;
+ num-ob-windows = <8>;
+ };
+
+ pcie-ep@140e0000 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pex_rst_c10_in_state>;
+
+ num-ib-windows = <2>;
+ num-ob-windows = <8>;
+ };
+
hsp_top2: hsp@1600000 {
compatible = "nvidia,tegra234-hsp";
reg = <0x0 0x1600000 0x0 0x90000>;
These were for C5.