* [PATCH 1/3] arm64: tegra: Fix AGIC register range
2019-06-20 8:16 [PATCH 0/3] arm64: tegra: A few device-tree fixes Jon Hunter
@ 2019-06-20 8:17 ` Jon Hunter
2019-06-20 9:13 ` Thierry Reding
2019-06-20 8:17 ` [PATCH 2/3] arm64: tegra: Update Jetson TX1 GPU regulator timings Jon Hunter
2019-06-20 8:17 ` [PATCH 3/3] arm64: tegra: Fix Jetson Nano GPU regulator Jon Hunter
2 siblings, 1 reply; 7+ messages in thread
From: Jon Hunter @ 2019-06-20 8:17 UTC (permalink / raw)
To: Thierry Reding, Rob Herring, Mark Rutland
Cc: devicetree, linux-tegra, Jon Hunter, stable
The Tegra AGIC interrupt controller is an ARM GIC400 interrupt
controller. Per the ARM GIC device-tree binding, the first address
region is for the GIC distributor registers and the second address
region is for the GIC CPU interface registers. The address space for
the distributor registers is 4kB, but currently this is incorrectly
defined as 8kB for the Tegra AGIC and overlaps with the CPU interface
registers. Correct the address space for the distributor to be 4kB.
Cc: stable@vger.kernel.org
Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
---
arch/arm64/boot/dts/nvidia/tegra210.dtsi | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm64/boot/dts/nvidia/tegra210.dtsi b/arch/arm64/boot/dts/nvidia/tegra210.dtsi
index edf27fe2f10e..ec762b3455b4 100644
--- a/arch/arm64/boot/dts/nvidia/tegra210.dtsi
+++ b/arch/arm64/boot/dts/nvidia/tegra210.dtsi
@@ -1258,7 +1258,7 @@
compatible = "nvidia,tegra210-agic";
#interrupt-cells = <3>;
interrupt-controller;
- reg = <0x702f9000 0x2000>,
+ reg = <0x702f9000 0x1000>,
<0x702fa000 0x2000>;
interrupts = <GIC_SPI 102 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
clocks = <&tegra_car TEGRA210_CLK_APE>;
--
2.17.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH 1/3] arm64: tegra: Fix AGIC register range
2019-06-20 8:17 ` [PATCH 1/3] arm64: tegra: Fix AGIC register range Jon Hunter
@ 2019-06-20 9:13 ` Thierry Reding
0 siblings, 0 replies; 7+ messages in thread
From: Thierry Reding @ 2019-06-20 9:13 UTC (permalink / raw)
To: Jon Hunter; +Cc: Rob Herring, Mark Rutland, devicetree, linux-tegra, stable
[-- Attachment #1: Type: text/plain, Size: 917 bytes --]
On Thu, Jun 20, 2019 at 09:17:00AM +0100, Jon Hunter wrote:
> The Tegra AGIC interrupt controller is an ARM GIC400 interrupt
> controller. Per the ARM GIC device-tree binding, the first address
> region is for the GIC distributor registers and the second address
> region is for the GIC CPU interface registers. The address space for
> the distributor registers is 4kB, but currently this is incorrectly
> defined as 8kB for the Tegra AGIC and overlaps with the CPU interface
> registers. Correct the address space for the distributor to be 4kB.
>
> Cc: stable@vger.kernel.org
> Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
> ---
> arch/arm64/boot/dts/nvidia/tegra210.dtsi | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
Applied to for-5.3/arm64/dt, though I also added the following Fixes:
line:
Fixes: bcdbde433542 ("arm64: tegra: Add AGIC node for Tegra210")
Thanks,
Thierry
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH 2/3] arm64: tegra: Update Jetson TX1 GPU regulator timings
2019-06-20 8:16 [PATCH 0/3] arm64: tegra: A few device-tree fixes Jon Hunter
2019-06-20 8:17 ` [PATCH 1/3] arm64: tegra: Fix AGIC register range Jon Hunter
@ 2019-06-20 8:17 ` Jon Hunter
2019-06-20 9:18 ` Thierry Reding
2019-06-20 8:17 ` [PATCH 3/3] arm64: tegra: Fix Jetson Nano GPU regulator Jon Hunter
2 siblings, 1 reply; 7+ messages in thread
From: Jon Hunter @ 2019-06-20 8:17 UTC (permalink / raw)
To: Thierry Reding, Rob Herring, Mark Rutland
Cc: devicetree, linux-tegra, Jon Hunter, stable
The GPU regulator enable ramp delay for Jetson TX1 is set to 1ms which
not sufficient because the enable ramp delay has been measured to be
greater than 1ms. Furthermore, the downstream kernels released by NVIDIA
for Jetson TX1 are using a enable ramp delay 2ms and a settling delay of
160us. Update the GPU regulator enable ramp delay for Jetson TX1 to be
2ms and add a settling delay of 160us.
Cc: stable@vger.kernel.org
Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
---
arch/arm64/boot/dts/nvidia/tegra210-p2180.dtsi | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/arch/arm64/boot/dts/nvidia/tegra210-p2180.dtsi b/arch/arm64/boot/dts/nvidia/tegra210-p2180.dtsi
index e8654061ce03..27723829d033 100644
--- a/arch/arm64/boot/dts/nvidia/tegra210-p2180.dtsi
+++ b/arch/arm64/boot/dts/nvidia/tegra210-p2180.dtsi
@@ -341,7 +341,8 @@
regulator-max-microvolt = <1320000>;
enable-gpios = <&pmic 6 GPIO_ACTIVE_HIGH>;
regulator-ramp-delay = <80>;
- regulator-enable-ramp-delay = <1000>;
+ regulator-enable-ramp-delay = <2000>;
+ regulator-settling-time-us = <160>;
};
};
};
--
2.17.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH 2/3] arm64: tegra: Update Jetson TX1 GPU regulator timings
2019-06-20 8:17 ` [PATCH 2/3] arm64: tegra: Update Jetson TX1 GPU regulator timings Jon Hunter
@ 2019-06-20 9:18 ` Thierry Reding
0 siblings, 0 replies; 7+ messages in thread
From: Thierry Reding @ 2019-06-20 9:18 UTC (permalink / raw)
To: Jon Hunter; +Cc: Rob Herring, Mark Rutland, devicetree, linux-tegra, stable
[-- Attachment #1: Type: text/plain, Size: 837 bytes --]
On Thu, Jun 20, 2019 at 09:17:01AM +0100, Jon Hunter wrote:
> The GPU regulator enable ramp delay for Jetson TX1 is set to 1ms which
> not sufficient because the enable ramp delay has been measured to be
> greater than 1ms. Furthermore, the downstream kernels released by NVIDIA
> for Jetson TX1 are using a enable ramp delay 2ms and a settling delay of
> 160us. Update the GPU regulator enable ramp delay for Jetson TX1 to be
> 2ms and add a settling delay of 160us.
>
> Cc: stable@vger.kernel.org
> Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
> ---
> arch/arm64/boot/dts/nvidia/tegra210-p2180.dtsi | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
Applied to for-5.3/arm64/dt, and I added this Fixes: line:
Fixes: 5e6b9a89afce ("arm64: tegra: Add VDD_GPU regulator to Jetson TX1")
Thanks,
Thierry
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH 3/3] arm64: tegra: Fix Jetson Nano GPU regulator
2019-06-20 8:16 [PATCH 0/3] arm64: tegra: A few device-tree fixes Jon Hunter
2019-06-20 8:17 ` [PATCH 1/3] arm64: tegra: Fix AGIC register range Jon Hunter
2019-06-20 8:17 ` [PATCH 2/3] arm64: tegra: Update Jetson TX1 GPU regulator timings Jon Hunter
@ 2019-06-20 8:17 ` Jon Hunter
2019-06-20 9:19 ` Thierry Reding
2 siblings, 1 reply; 7+ messages in thread
From: Jon Hunter @ 2019-06-20 8:17 UTC (permalink / raw)
To: Thierry Reding, Rob Herring, Mark Rutland
Cc: devicetree, linux-tegra, Jon Hunter, stable
There are a few issues with the GPU regulator defined for Jetson Nano
which are:
1. The GPU regulator is a PWM based regulator and not a fixed voltage
regulator.
2. The output voltages for the GPU regulator are not correct.
3. The regulator enable ramp delay is too short for the regulator and
needs to be increased. 2ms should be sufficient.
4. This is the same regulator used on Jetson TX1 and so make the ramp
delay and settling time the same as Jetson TX1.
Cc: stable@vger.kernel.org
Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
---
.../boot/dts/nvidia/tegra210-p3450-0000.dts | 21 +++++++++++--------
1 file changed, 12 insertions(+), 9 deletions(-)
diff --git a/arch/arm64/boot/dts/nvidia/tegra210-p3450-0000.dts b/arch/arm64/boot/dts/nvidia/tegra210-p3450-0000.dts
index 63df72eecf21..9d17ec707bce 100644
--- a/arch/arm64/boot/dts/nvidia/tegra210-p3450-0000.dts
+++ b/arch/arm64/boot/dts/nvidia/tegra210-p3450-0000.dts
@@ -88,6 +88,10 @@
status = "okay";
};
+ pwm@7000a000 {
+ status = "okay";
+ };
+
i2c@7000c500 {
status = "okay";
clock-frequency = <100000>;
@@ -664,17 +668,16 @@
};
vdd_gpu: regulator@6 {
- compatible = "regulator-fixed";
+ compatible = "pwm-regulator";
reg = <6>;
-
+ pwms = <&pwm 1 4880>;
regulator-name = "VDD_GPU";
- regulator-min-microvolt = <5000000>;
- regulator-max-microvolt = <5000000>;
- regulator-enable-ramp-delay = <250>;
-
- gpio = <&pmic 6 GPIO_ACTIVE_HIGH>;
- enable-active-high;
-
+ regulator-min-microvolt = <710000>;
+ regulator-max-microvolt = <1320000>;
+ regulator-ramp-delay = <80>;
+ regulator-enable-ramp-delay = <2000>;
+ regulator-settling-time-us = <160>;
+ enable-gpios = <&pmic 6 GPIO_ACTIVE_HIGH>;
vin-supply = <&vdd_5v0_sys>;
};
};
--
2.17.1
^ permalink raw reply related [flat|nested] 7+ messages in thread* Re: [PATCH 3/3] arm64: tegra: Fix Jetson Nano GPU regulator
2019-06-20 8:17 ` [PATCH 3/3] arm64: tegra: Fix Jetson Nano GPU regulator Jon Hunter
@ 2019-06-20 9:19 ` Thierry Reding
0 siblings, 0 replies; 7+ messages in thread
From: Thierry Reding @ 2019-06-20 9:19 UTC (permalink / raw)
To: Jon Hunter; +Cc: Rob Herring, Mark Rutland, devicetree, linux-tegra, stable
[-- Attachment #1: Type: text/plain, Size: 957 bytes --]
On Thu, Jun 20, 2019 at 09:17:02AM +0100, Jon Hunter wrote:
> There are a few issues with the GPU regulator defined for Jetson Nano
> which are:
>
> 1. The GPU regulator is a PWM based regulator and not a fixed voltage
> regulator.
> 2. The output voltages for the GPU regulator are not correct.
> 3. The regulator enable ramp delay is too short for the regulator and
> needs to be increased. 2ms should be sufficient.
> 4. This is the same regulator used on Jetson TX1 and so make the ramp
> delay and settling time the same as Jetson TX1.
>
> Cc: stable@vger.kernel.org
> Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
> ---
> .../boot/dts/nvidia/tegra210-p3450-0000.dts | 21 +++++++++++--------
> 1 file changed, 12 insertions(+), 9 deletions(-)
Applied to for-5.3/arm64/dt and added the following Fixes: line:
Fixes: 6772cd0eacc8 ("arm64: tegra: Add NVIDIA Jetson Nano Developer Kit support")
Thanks,
Thierry
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread