public inbox for devicetree@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2] arm64: tegra: Add pinctrl definition for PCIe C4 EP
@ 2025-09-19 12:09 Niklas Cassel
  2025-09-25 15:53 ` Niklas Cassel
  0 siblings, 1 reply; 3+ messages in thread
From: Niklas Cassel @ 2025-09-19 12:09 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Thierry Reding,
	Jonathan Hunter
  Cc: Vidya Sagar, Shin'ichiro Kawasaki, Gautham Srinivasan,
	Niklas Cassel, devicetree, linux-tegra

From: Gautham Srinivasan <gauthams@nvidia.com>

Commit 0580286d0d22 ("arm64: tegra: Add Tegra234 PCIe C4 EP definition")
added the device tree entry "pcie-ep@14160000" for C4 endpoint. However,
it missed pinctrl definition. Without the pinctl definition, the C4
endpoint of Jetson Orin Nano does not work. Add the missing definition.

Signed-off-by: Gautham Srinivasan <gauthams@nvidia.com>
[cassel: Add to the existing nodes instead of creating new ones.
Remove non-existing nvidia,lpdr property. Rename node to match dtschema.]
Signed-off-by: Niklas Cassel <cassel@kernel.org>
---
Changes since v1:
-Remove non-existing nvidia,lpdr pinmux property.
-Rename pex_rst_c4_in to pinmux-pex-rst-c4-in to match dtschema requirement.

 arch/arm64/boot/dts/nvidia/tegra234.dtsi | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/arch/arm64/boot/dts/nvidia/tegra234.dtsi b/arch/arm64/boot/dts/nvidia/tegra234.dtsi
index df034dbb82853..2df89ad9ffdd0 100644
--- a/arch/arm64/boot/dts/nvidia/tegra234.dtsi
+++ b/arch/arm64/boot/dts/nvidia/tegra234.dtsi
@@ -9,6 +9,7 @@
 #include <dt-bindings/power/tegra234-powergate.h>
 #include <dt-bindings/reset/tegra234-reset.h>
 #include <dt-bindings/thermal/tegra234-bpmp-thermal.h>
+#include <dt-bindings/pinctrl/pinctrl-tegra.h>
 
 / {
 	compatible = "nvidia,tegra234";
@@ -127,6 +128,16 @@ gpio: gpio@2200000 {
 		pinmux: pinmux@2430000 {
 			compatible = "nvidia,tegra234-pinmux";
 			reg = <0x0 0x2430000 0x0 0x19100>;
+
+			pex_rst_c4_in_state: pinmux-pex-rst-c4-in {
+				pex_rst {
+					nvidia,pins = "pex_l4_rst_n_pl1";
+					nvidia,function = "rsvd1";
+					nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+					nvidia,tristate = <TEGRA_PIN_ENABLE>;
+					nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+				};
+			};
 		};
 
 		gpcdma: dma-controller@2600000 {
@@ -4881,6 +4892,8 @@ pcie-ep@14160000 {
 			       <&bpmp TEGRA234_RESET_PEX0_CORE_4>;
 			reset-names = "apb", "core";
 
+			pinctrl-names = "default";
+			pinctrl-0 = <&pex_rst_c4_in_state>;
 			interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>;  /* controller interrupt */
 			interrupt-names = "intr";
 			nvidia,bpmp = <&bpmp 4>;
-- 
2.51.0


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH v2] arm64: tegra: Add pinctrl definition for PCIe C4 EP
  2025-09-19 12:09 [PATCH v2] arm64: tegra: Add pinctrl definition for PCIe C4 EP Niklas Cassel
@ 2025-09-25 15:53 ` Niklas Cassel
  2025-09-30 15:13   ` Jon Hunter
  0 siblings, 1 reply; 3+ messages in thread
From: Niklas Cassel @ 2025-09-25 15:53 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Thierry Reding,
	Jonathan Hunter
  Cc: Vidya Sagar, Shin'ichiro Kawasaki, Gautham Srinivasan,
	devicetree, linux-tegra

On Fri, Sep 19, 2025 at 02:09:21PM +0200, Niklas Cassel wrote:
> From: Gautham Srinivasan <gauthams@nvidia.com>
> 
> Commit 0580286d0d22 ("arm64: tegra: Add Tegra234 PCIe C4 EP definition")
> added the device tree entry "pcie-ep@14160000" for C4 endpoint. However,
> it missed pinctrl definition. Without the pinctl definition, the C4
> endpoint of Jetson Orin Nano does not work. Add the missing definition.
> 
> Signed-off-by: Gautham Srinivasan <gauthams@nvidia.com>
> [cassel: Add to the existing nodes instead of creating new ones.
> Remove non-existing nvidia,lpdr property. Rename node to match dtschema.]
> Signed-off-by: Niklas Cassel <cassel@kernel.org>
> ---
> Changes since v1:
> -Remove non-existing nvidia,lpdr pinmux property.
> -Rename pex_rst_c4_in to pinmux-pex-rst-c4-in to match dtschema requirement.
> 
>  arch/arm64/boot/dts/nvidia/tegra234.dtsi | 13 +++++++++++++
>  1 file changed, 13 insertions(+)

Hello Tegra architecture maintainers,

any chance that this could get queued up for 6.18-rc1 ?

The device tree node it modifies pcie-ep@14160000 is marked as disabled
by default, so there should be no risk of regressions.


Kind regards,
Niklas

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH v2] arm64: tegra: Add pinctrl definition for PCIe C4 EP
  2025-09-25 15:53 ` Niklas Cassel
@ 2025-09-30 15:13   ` Jon Hunter
  0 siblings, 0 replies; 3+ messages in thread
From: Jon Hunter @ 2025-09-30 15:13 UTC (permalink / raw)
  To: Niklas Cassel, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Thierry Reding
  Cc: Vidya Sagar, Shin'ichiro Kawasaki, Gautham Srinivasan,
	devicetree, linux-tegra


On 25/09/2025 16:53, Niklas Cassel wrote:
> On Fri, Sep 19, 2025 at 02:09:21PM +0200, Niklas Cassel wrote:
>> From: Gautham Srinivasan <gauthams@nvidia.com>
>>
>> Commit 0580286d0d22 ("arm64: tegra: Add Tegra234 PCIe C4 EP definition")
>> added the device tree entry "pcie-ep@14160000" for C4 endpoint. However,
>> it missed pinctrl definition. Without the pinctl definition, the C4
>> endpoint of Jetson Orin Nano does not work. Add the missing definition.
>>
>> Signed-off-by: Gautham Srinivasan <gauthams@nvidia.com>
>> [cassel: Add to the existing nodes instead of creating new ones.
>> Remove non-existing nvidia,lpdr property. Rename node to match dtschema.]
>> Signed-off-by: Niklas Cassel <cassel@kernel.org>
>> ---
>> Changes since v1:
>> -Remove non-existing nvidia,lpdr pinmux property.
>> -Rename pex_rst_c4_in to pinmux-pex-rst-c4-in to match dtschema requirement.
>>
>>   arch/arm64/boot/dts/nvidia/tegra234.dtsi | 13 +++++++++++++
>>   1 file changed, 13 insertions(+)
> 
> Hello Tegra architecture maintainers,
> 
> any chance that this could get queued up for 6.18-rc1 ?
> 
> The device tree node it modifies pcie-ep@14160000 is marked as disabled
> by default, so there should be no risk of regressions.

Sorry looks like this missed v6.18-rc1. However, looking at this some 
more, I believe that this is applicable to all Tegra234 platforms. In 
fact, I see that we are also missing the pinmux for the other EP devices 
too [0]. It might make sense to add these all at once to the tegra234.dtsi.

Jon

[0] 
https://nv-tegra.nvidia.com/r/plugins/gitiles/device/hardware/nvidia/t23x-public-dts/+/refs/heads/rel-36/nv-soc/tegra234-soc-overlay.dtsi

-- 
nvpublic


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2025-09-30 15:13 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-09-19 12:09 [PATCH v2] arm64: tegra: Add pinctrl definition for PCIe C4 EP Niklas Cassel
2025-09-25 15:53 ` Niklas Cassel
2025-09-30 15:13   ` Jon Hunter

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox