arm64: tegra: Fix PCIe regulator for Orin Jetson AGX

Message ID 20230526111727.26058-1-jonathanh@nvidia.com
State New
Headers
Series arm64: tegra: Fix PCIe regulator for Orin Jetson AGX |

Commit Message

Jon Hunter May 26, 2023, 11:17 a.m. UTC
  The PCIe slot on the Jetson Orin AGX is not working and PCIe cards
are not detected. The regulator for the 3.3V regulator for the PCIe is
using the wrong GPIO for turning on the regulator. Fix this by updating
the 3.3V regulator to use the correct GPIO.

Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
---
 arch/arm64/boot/dts/nvidia/tegra234-p3701-0000.dtsi | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
  

Comments

Jon Hunter May 26, 2023, 11:19 a.m. UTC | #1
Adding linux-tegra ...

On 26/05/2023 12:17, Jon Hunter wrote:
> The PCIe slot on the Jetson Orin AGX is not working and PCIe cards
> are not detected. The regulator for the 3.3V regulator for the PCIe is
> using the wrong GPIO for turning on the regulator. Fix this by updating
> the 3.3V regulator to use the correct GPIO.
> 
> Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
> ---
>   arch/arm64/boot/dts/nvidia/tegra234-p3701-0000.dtsi | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/arch/arm64/boot/dts/nvidia/tegra234-p3701-0000.dtsi b/arch/arm64/boot/dts/nvidia/tegra234-p3701-0000.dtsi
> index e161618cfca8..4dce2e214002 100644
> --- a/arch/arm64/boot/dts/nvidia/tegra234-p3701-0000.dtsi
> +++ b/arch/arm64/boot/dts/nvidia/tegra234-p3701-0000.dtsi
> @@ -142,7 +142,7 @@ vdd_3v3_pcie: regulator-vdd-3v3-pcie {
>   		regulator-name = "VDD_3V3_PCIE";
>   		regulator-min-microvolt = <3300000>;
>   		regulator-max-microvolt = <3300000>;
> -		gpio = <&gpio TEGRA234_MAIN_GPIO(Z, 2) GPIO_ACTIVE_HIGH>;
> +		gpio = <&gpio TEGRA234_MAIN_GPIO(H, 4) GPIO_ACTIVE_HIGH>;
>   		regulator-boot-on;
>   		enable-active-high;
>   	};
  
Thierry Reding May 26, 2023, 3:07 p.m. UTC | #2
On Fri, May 26, 2023 at 12:17:27PM +0100, Jon Hunter wrote:
> The PCIe slot on the Jetson Orin AGX is not working and PCIe cards
> are not detected. The regulator for the 3.3V regulator for the PCIe is
> using the wrong GPIO for turning on the regulator. Fix this by updating
> the 3.3V regulator to use the correct GPIO.
> 
> Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
> ---
>  arch/arm64/boot/dts/nvidia/tegra234-p3701-0000.dtsi | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)

Applied, thanks.

Vidya, any ideas on why this ended up being wrong? Was the original
based on an early version of the hardware, or is this something that we
need to parameterized per SKU?

Thierry
  
Jon Hunter May 30, 2023, 11:22 a.m. UTC | #3
On 26/05/2023 12:19, Jon Hunter wrote:
> Adding linux-tegra ...
> 
> On 26/05/2023 12:17, Jon Hunter wrote:
>> The PCIe slot on the Jetson Orin AGX is not working and PCIe cards
>> are not detected. The regulator for the 3.3V regulator for the PCIe is
>> using the wrong GPIO for turning on the regulator. Fix this by updating
>> the 3.3V regulator to use the correct GPIO.
>>
>> Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
>> ---
>>   arch/arm64/boot/dts/nvidia/tegra234-p3701-0000.dtsi | 2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/arch/arm64/boot/dts/nvidia/tegra234-p3701-0000.dtsi 
>> b/arch/arm64/boot/dts/nvidia/tegra234-p3701-0000.dtsi
>> index e161618cfca8..4dce2e214002 100644
>> --- a/arch/arm64/boot/dts/nvidia/tegra234-p3701-0000.dtsi
>> +++ b/arch/arm64/boot/dts/nvidia/tegra234-p3701-0000.dtsi
>> @@ -142,7 +142,7 @@ vdd_3v3_pcie: regulator-vdd-3v3-pcie {
>>           regulator-name = "VDD_3V3_PCIE";
>>           regulator-min-microvolt = <3300000>;
>>           regulator-max-microvolt = <3300000>;
>> -        gpio = <&gpio TEGRA234_MAIN_GPIO(Z, 2) GPIO_ACTIVE_HIGH>;
>> +        gpio = <&gpio TEGRA234_MAIN_GPIO(H, 4) GPIO_ACTIVE_HIGH>;


Apparently the original GPIO we had was for pre-production boards and 
hence the mistake was made. Let me know if you want me to add that 
detail to the commit message.

Jon
  

Patch

diff --git a/arch/arm64/boot/dts/nvidia/tegra234-p3701-0000.dtsi b/arch/arm64/boot/dts/nvidia/tegra234-p3701-0000.dtsi
index e161618cfca8..4dce2e214002 100644
--- a/arch/arm64/boot/dts/nvidia/tegra234-p3701-0000.dtsi
+++ b/arch/arm64/boot/dts/nvidia/tegra234-p3701-0000.dtsi
@@ -142,7 +142,7 @@  vdd_3v3_pcie: regulator-vdd-3v3-pcie {
 		regulator-name = "VDD_3V3_PCIE";
 		regulator-min-microvolt = <3300000>;
 		regulator-max-microvolt = <3300000>;
-		gpio = <&gpio TEGRA234_MAIN_GPIO(Z, 2) GPIO_ACTIVE_HIGH>;
+		gpio = <&gpio TEGRA234_MAIN_GPIO(H, 4) GPIO_ACTIVE_HIGH>;
 		regulator-boot-on;
 		enable-active-high;
 	};