* [PATCH] arm64: tegra: Add CPU and PSCI nodes for NVIDIA Tegra210 platforms
@ 2017-03-28 11:48 Jon Hunter
2017-03-28 14:55 ` Sudeep Holla
` (2 more replies)
0 siblings, 3 replies; 8+ messages in thread
From: Jon Hunter @ 2017-03-28 11:48 UTC (permalink / raw)
To: Thierry Reding, Stephen Warren
Cc: devicetree, Vagrant Cascadian, Jon Hunter, linux-tegra,
Martin Michlmayr, linux-arm-kernel
Add the CPU and PSCI nodes for the NVIDIA Tegra210 platforms so that
all CPUs can be enabled on boot. This assumes that the PSCI firmware
has been loaded during the initial bootstrap on the device before the
kernel starts (which is typically the case for these platforms). The
PSCI firmware version is set to v0.2 which aligns with the current
shipping version for Tegra.
Reported-by: Martin Michlmayr <tbm@cyrius.com>
Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
---
arch/arm64/boot/dts/nvidia/tegra210-p2180.dtsi | 23 +++++++++++++++++++++++
arch/arm64/boot/dts/nvidia/tegra210-p2530.dtsi | 24 ++++++++++++++++++++++++
2 files changed, 47 insertions(+)
diff --git a/arch/arm64/boot/dts/nvidia/tegra210-p2180.dtsi b/arch/arm64/boot/dts/nvidia/tegra210-p2180.dtsi
index 906fb836d241..de1696c28140 100644
--- a/arch/arm64/boot/dts/nvidia/tegra210-p2180.dtsi
+++ b/arch/arm64/boot/dts/nvidia/tegra210-p2180.dtsi
@@ -296,6 +296,29 @@
};
};
+ cpus {
+ cpu@0 {
+ enable-method = "psci";
+ };
+
+ cpu@1 {
+ enable-method = "psci";
+ };
+
+ cpu@2 {
+ enable-method = "psci";
+ };
+
+ cpu@3 {
+ enable-method = "psci";
+ };
+ };
+
+ psci {
+ compatible = "arm,psci-0.2";
+ method = "smc";
+ };
+
regulators {
vdd_gpu: regulator@100 {
compatible = "pwm-regulator";
diff --git a/arch/arm64/boot/dts/nvidia/tegra210-p2530.dtsi b/arch/arm64/boot/dts/nvidia/tegra210-p2530.dtsi
index 0ec92578cacb..67cb039965fd 100644
--- a/arch/arm64/boot/dts/nvidia/tegra210-p2530.dtsi
+++ b/arch/arm64/boot/dts/nvidia/tegra210-p2530.dtsi
@@ -51,4 +51,28 @@
clock-frequency = <32768>;
};
};
+
+ cpus {
+ cpu@0 {
+ enable-method = "psci";
+ };
+
+ cpu@1 {
+ enable-method = "psci";
+ };
+
+ cpu@2 {
+ enable-method = "psci";
+ };
+
+ cpu@3 {
+ enable-method = "psci";
+ };
+ };
+
+ psci {
+ compatible = "arm,psci-0.2";
+ method = "smc";
+ };
+
};
--
2.7.4
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH] arm64: tegra: Add CPU and PSCI nodes for NVIDIA Tegra210 platforms
2017-03-28 11:48 [PATCH] arm64: tegra: Add CPU and PSCI nodes for NVIDIA Tegra210 platforms Jon Hunter
@ 2017-03-28 14:55 ` Sudeep Holla
[not found] ` <bf527c4b-f17c-bfcf-e7fa-dab64b131996-5wv7dgnIgG8@public.gmane.org>
2017-03-28 16:23 ` Stephen Warren
2017-04-09 2:22 ` Vagrant Cascadian
2 siblings, 1 reply; 8+ messages in thread
From: Sudeep Holla @ 2017-03-28 14:55 UTC (permalink / raw)
To: Jon Hunter, Thierry Reding, Stephen Warren
Cc: devicetree, Vagrant Cascadian, Sudeep Holla, linux-tegra,
Martin Michlmayr, linux-arm-kernel
On 28/03/17 12:48, Jon Hunter wrote:
> Add the CPU and PSCI nodes for the NVIDIA Tegra210 platforms so that
> all CPUs can be enabled on boot. This assumes that the PSCI firmware
> has been loaded during the initial bootstrap on the device before the
> kernel starts (which is typically the case for these platforms). The
> PSCI firmware version is set to v0.2 which aligns with the current
> shipping version for Tegra.
>
> Reported-by: Martin Michlmayr <tbm@cyrius.com>
> Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
> ---
> arch/arm64/boot/dts/nvidia/tegra210-p2180.dtsi | 23 +++++++++++++++++++++++
> arch/arm64/boot/dts/nvidia/tegra210-p2530.dtsi | 24 ++++++++++++++++++++++++
> 2 files changed, 47 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/nvidia/tegra210-p2180.dtsi b/arch/arm64/boot/dts/nvidia/tegra210-p2180.dtsi
> index 906fb836d241..de1696c28140 100644
> --- a/arch/arm64/boot/dts/nvidia/tegra210-p2180.dtsi
> +++ b/arch/arm64/boot/dts/nvidia/tegra210-p2180.dtsi
> @@ -296,6 +296,29 @@
> };
> };
>
> + cpus {
> + cpu@0 {
> + enable-method = "psci";
Is some firmware expected to populate other required properties ?
If yes, why not populate everything in the firmware ?
If no, how does it even boot secondaries without the "reg" property
that usually contains MPIDR.
--
Regards,
Sudeep
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] arm64: tegra: Add CPU and PSCI nodes for NVIDIA Tegra210 platforms
[not found] ` <bf527c4b-f17c-bfcf-e7fa-dab64b131996-5wv7dgnIgG8@public.gmane.org>
@ 2017-03-28 15:32 ` Jon Hunter
[not found] ` <e3ab2e09-ee32-96e2-b0c8-f7def668bf31-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
0 siblings, 1 reply; 8+ messages in thread
From: Jon Hunter @ 2017-03-28 15:32 UTC (permalink / raw)
To: Sudeep Holla, Thierry Reding, Stephen Warren
Cc: devicetree-u79uwXL29TY76Z2rM5mHXA,
linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
linux-tegra-u79uwXL29TY76Z2rM5mHXA, Martin Michlmayr,
Vagrant Cascadian
On 28/03/17 15:55, Sudeep Holla wrote:
> On 28/03/17 12:48, Jon Hunter wrote:
>> Add the CPU and PSCI nodes for the NVIDIA Tegra210 platforms so that
>> all CPUs can be enabled on boot. This assumes that the PSCI firmware
>> has been loaded during the initial bootstrap on the device before the
>> kernel starts (which is typically the case for these platforms). The
>> PSCI firmware version is set to v0.2 which aligns with the current
>> shipping version for Tegra.
>>
>> Reported-by: Martin Michlmayr <tbm-R+vWnYXSFMfQT0dZR+AlfA@public.gmane.org>
>> Signed-off-by: Jon Hunter <jonathanh-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
>> ---
>> arch/arm64/boot/dts/nvidia/tegra210-p2180.dtsi | 23 +++++++++++++++++++++++
>> arch/arm64/boot/dts/nvidia/tegra210-p2530.dtsi | 24 ++++++++++++++++++++++++
>> 2 files changed, 47 insertions(+)
>>
>> diff --git a/arch/arm64/boot/dts/nvidia/tegra210-p2180.dtsi b/arch/arm64/boot/dts/nvidia/tegra210-p2180.dtsi
>> index 906fb836d241..de1696c28140 100644
>> --- a/arch/arm64/boot/dts/nvidia/tegra210-p2180.dtsi
>> +++ b/arch/arm64/boot/dts/nvidia/tegra210-p2180.dtsi
>> @@ -296,6 +296,29 @@
>> };
>> };
>>
>> + cpus {
>> + cpu@0 {
>> + enable-method = "psci";
>
> Is some firmware expected to populate other required properties ?
>
> If yes, why not populate everything in the firmware ?
>
> If no, how does it even boot secondaries without the "reg" property
> that usually contains MPIDR.
Please see 'arch/arm64/boot/dts/nvidia/tegra210.dtsi' which has these
fields. So far we have been populating the psci information at the board
level and so I have kept with that here and so the above is just the
delta. Maybe the $subject could be a little clearer!
Jon
--
nvpublic
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] arm64: tegra: Add CPU and PSCI nodes for NVIDIA Tegra210 platforms
[not found] ` <e3ab2e09-ee32-96e2-b0c8-f7def668bf31-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
@ 2017-03-28 15:37 ` Sudeep Holla
0 siblings, 0 replies; 8+ messages in thread
From: Sudeep Holla @ 2017-03-28 15:37 UTC (permalink / raw)
To: Jon Hunter, Thierry Reding, Stephen Warren
Cc: Sudeep Holla, devicetree-u79uwXL29TY76Z2rM5mHXA,
linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
linux-tegra-u79uwXL29TY76Z2rM5mHXA, Martin Michlmayr,
Vagrant Cascadian
On 28/03/17 16:32, Jon Hunter wrote:
>
> On 28/03/17 15:55, Sudeep Holla wrote:
>> On 28/03/17 12:48, Jon Hunter wrote:
>>> Add the CPU and PSCI nodes for the NVIDIA Tegra210 platforms so that
>>> all CPUs can be enabled on boot. This assumes that the PSCI firmware
>>> has been loaded during the initial bootstrap on the device before the
>>> kernel starts (which is typically the case for these platforms). The
>>> PSCI firmware version is set to v0.2 which aligns with the current
>>> shipping version for Tegra.
>>>
>>> Reported-by: Martin Michlmayr <tbm-R+vWnYXSFMfQT0dZR+AlfA@public.gmane.org>
>>> Signed-off-by: Jon Hunter <jonathanh-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
>>> ---
>>> arch/arm64/boot/dts/nvidia/tegra210-p2180.dtsi | 23 +++++++++++++++++++++++
>>> arch/arm64/boot/dts/nvidia/tegra210-p2530.dtsi | 24 ++++++++++++++++++++++++
>>> 2 files changed, 47 insertions(+)
>>>
>>> diff --git a/arch/arm64/boot/dts/nvidia/tegra210-p2180.dtsi b/arch/arm64/boot/dts/nvidia/tegra210-p2180.dtsi
>>> index 906fb836d241..de1696c28140 100644
>>> --- a/arch/arm64/boot/dts/nvidia/tegra210-p2180.dtsi
>>> +++ b/arch/arm64/boot/dts/nvidia/tegra210-p2180.dtsi
>>> @@ -296,6 +296,29 @@
>>> };
>>> };
>>>
>>> + cpus {
>>> + cpu@0 {
>>> + enable-method = "psci";
>>
>> Is some firmware expected to populate other required properties ?
>>
>> If yes, why not populate everything in the firmware ?
>>
>> If no, how does it even boot secondaries without the "reg" property
>> that usually contains MPIDR.
>
> Please see 'arch/arm64/boot/dts/nvidia/tegra210.dtsi' which has these
> fields. So far we have been populating the psci information at the board
> level and so I have kept with that here and so the above is just the
> delta. Maybe the $subject could be a little clearer!
Sorry for the noise, I traversed files/headers upwards and missed
the innermost tegra210.dtsi :(
--
Regards,
Sudeep
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] arm64: tegra: Add CPU and PSCI nodes for NVIDIA Tegra210 platforms
2017-03-28 11:48 [PATCH] arm64: tegra: Add CPU and PSCI nodes for NVIDIA Tegra210 platforms Jon Hunter
2017-03-28 14:55 ` Sudeep Holla
@ 2017-03-28 16:23 ` Stephen Warren
[not found] ` <9069e2fd-bf7b-b1df-3d1b-071ee21642ef-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2017-04-09 2:22 ` Vagrant Cascadian
2 siblings, 1 reply; 8+ messages in thread
From: Stephen Warren @ 2017-03-28 16:23 UTC (permalink / raw)
To: Jon Hunter
Cc: devicetree, Stephen Warren, Vagrant Cascadian, Thierry Reding,
linux-tegra, Martin Michlmayr, linux-arm-kernel
On 03/28/2017 05:48 AM, Jon Hunter wrote:
> Add the CPU and PSCI nodes for the NVIDIA Tegra210 platforms so that
> all CPUs can be enabled on boot. This assumes that the PSCI firmware
> has been loaded during the initial bootstrap on the device before the
> kernel starts (which is typically the case for these platforms). The
> PSCI firmware version is set to v0.2 which aligns with the current
> shipping version for Tegra.
This seems fine, although I'd expect PSCI to be used everywhere on
Tegra, so putting this in tegra210.dtsi would make more sense.
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] arm64: tegra: Add CPU and PSCI nodes for NVIDIA Tegra210 platforms
[not found] ` <9069e2fd-bf7b-b1df-3d1b-071ee21642ef-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
@ 2017-03-28 16:49 ` Jon Hunter
[not found] ` <f9c59c65-de48-108d-73df-c659cc3300e6-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
0 siblings, 1 reply; 8+ messages in thread
From: Jon Hunter @ 2017-03-28 16:49 UTC (permalink / raw)
To: Stephen Warren
Cc: devicetree-u79uwXL29TY76Z2rM5mHXA, Stephen Warren,
Vagrant Cascadian, Thierry Reding,
linux-tegra-u79uwXL29TY76Z2rM5mHXA, Martin Michlmayr,
linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r
On 28/03/17 17:23, Stephen Warren wrote:
> On 03/28/2017 05:48 AM, Jon Hunter wrote:
>> Add the CPU and PSCI nodes for the NVIDIA Tegra210 platforms so that
>> all CPUs can be enabled on boot. This assumes that the PSCI firmware
>> has been loaded during the initial bootstrap on the device before the
>> kernel starts (which is typically the case for these platforms). The
>> PSCI firmware version is set to v0.2 which aligns with the current
>> shipping version for Tegra.
>
> This seems fine, although I'd expect PSCI to be used everywhere on
> Tegra, so putting this in tegra210.dtsi would make more sense.
It's fine with me. Although technically, tegra210-smaug ships with
psci-v1.0 and tegra210-jetson-tx1 currently have psci-v0.2. However, I
did test both with the psci version set to v1.0 and the jetson-tx1, did
detect the version automatically and reverted to v0.2 (which is a
feature of psci >= v0.2). For Tegra186 we also have the psci node in the
tegra186-p3310.dtsi.
Jon
--
nvpublic
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] arm64: tegra: Add CPU and PSCI nodes for NVIDIA Tegra210 platforms
[not found] ` <f9c59c65-de48-108d-73df-c659cc3300e6-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
@ 2017-03-28 18:54 ` Mark Rutland
0 siblings, 0 replies; 8+ messages in thread
From: Mark Rutland @ 2017-03-28 18:54 UTC (permalink / raw)
To: Jon Hunter
Cc: Stephen Warren, devicetree-u79uwXL29TY76Z2rM5mHXA, Stephen Warren,
Vagrant Cascadian, Thierry Reding,
linux-tegra-u79uwXL29TY76Z2rM5mHXA, Martin Michlmayr,
linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r
On Tue, Mar 28, 2017 at 05:49:41PM +0100, Jon Hunter wrote:
>
> On 28/03/17 17:23, Stephen Warren wrote:
> > On 03/28/2017 05:48 AM, Jon Hunter wrote:
> >> Add the CPU and PSCI nodes for the NVIDIA Tegra210 platforms so that
> >> all CPUs can be enabled on boot. This assumes that the PSCI firmware
> >> has been loaded during the initial bootstrap on the device before the
> >> kernel starts (which is typically the case for these platforms). The
> >> PSCI firmware version is set to v0.2 which aligns with the current
> >> shipping version for Tegra.
> >
> > This seems fine, although I'd expect PSCI to be used everywhere on
> > Tegra, so putting this in tegra210.dtsi would make more sense.
>
> It's fine with me. Although technically, tegra210-smaug ships with
> psci-v1.0 and tegra210-jetson-tx1 currently have psci-v0.2. However, I
> did test both with the psci version set to v1.0 and the jetson-tx1, did
> detect the version automatically and reverted to v0.2 (which is a
> feature of psci >= v0.2).
Please don't rely upon that.
If the DT lists 0.2 and the FW reports 1.0 we deliberately upgrade and
treat it as 1.0, but the other way around was not a deliberate decision.
If the FW is not necessarily 1.0, please do not list 1.0 in the DT.
Thanks,
Mark.
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] arm64: tegra: Add CPU and PSCI nodes for NVIDIA Tegra210 platforms
2017-03-28 11:48 [PATCH] arm64: tegra: Add CPU and PSCI nodes for NVIDIA Tegra210 platforms Jon Hunter
2017-03-28 14:55 ` Sudeep Holla
2017-03-28 16:23 ` Stephen Warren
@ 2017-04-09 2:22 ` Vagrant Cascadian
2 siblings, 0 replies; 8+ messages in thread
From: Vagrant Cascadian @ 2017-04-09 2:22 UTC (permalink / raw)
To: Thierry Reding, Stephen Warren
Cc: linux-tegra, devicetree, Martin Michlmayr, linux-arm-kernel,
Jon Hunter
[-- Attachment #1.1: Type: text/plain, Size: 2289 bytes --]
On 2017-03-28, Jon Hunter wrote:
> Add the CPU and PSCI nodes for the NVIDIA Tegra210 platforms so that
> all CPUs can be enabled on boot. This assumes that the PSCI firmware
> has been loaded during the initial bootstrap on the device before the
> kernel starts (which is typically the case for these platforms). The
> PSCI firmware version is set to v0.2 which aligns with the current
> shipping version for Tegra.
>
> Reported-by: Martin Michlmayr <tbm@cyrius.com>
> Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Tested on a jetson-tx1; all CPUs were recognized.
Tested-By: Vagrant Cascadian <vagrant@debian.org>
> ---
> arch/arm64/boot/dts/nvidia/tegra210-p2180.dtsi | 23 +++++++++++++++++++++++
> arch/arm64/boot/dts/nvidia/tegra210-p2530.dtsi | 24 ++++++++++++++++++++++++
> 2 files changed, 47 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/nvidia/tegra210-p2180.dtsi b/arch/arm64/boot/dts/nvidia/tegra210-p2180.dtsi
> index 906fb836d241..de1696c28140 100644
> --- a/arch/arm64/boot/dts/nvidia/tegra210-p2180.dtsi
> +++ b/arch/arm64/boot/dts/nvidia/tegra210-p2180.dtsi
> @@ -296,6 +296,29 @@
> };
> };
>
> + cpus {
> + cpu@0 {
> + enable-method = "psci";
> + };
> +
> + cpu@1 {
> + enable-method = "psci";
> + };
> +
> + cpu@2 {
> + enable-method = "psci";
> + };
> +
> + cpu@3 {
> + enable-method = "psci";
> + };
> + };
> +
> + psci {
> + compatible = "arm,psci-0.2";
> + method = "smc";
> + };
> +
> regulators {
> vdd_gpu: regulator@100 {
> compatible = "pwm-regulator";
> diff --git a/arch/arm64/boot/dts/nvidia/tegra210-p2530.dtsi b/arch/arm64/boot/dts/nvidia/tegra210-p2530.dtsi
> index 0ec92578cacb..67cb039965fd 100644
> --- a/arch/arm64/boot/dts/nvidia/tegra210-p2530.dtsi
> +++ b/arch/arm64/boot/dts/nvidia/tegra210-p2530.dtsi
> @@ -51,4 +51,28 @@
> clock-frequency = <32768>;
> };
> };
> +
> + cpus {
> + cpu@0 {
> + enable-method = "psci";
> + };
> +
> + cpu@1 {
> + enable-method = "psci";
> + };
> +
> + cpu@2 {
> + enable-method = "psci";
> + };
> +
> + cpu@3 {
> + enable-method = "psci";
> + };
> + };
> +
> + psci {
> + compatible = "arm,psci-0.2";
> + method = "smc";
> + };
> +
> };
> --
> 2.7.4
[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]
[-- Attachment #2: Type: text/plain, Size: 176 bytes --]
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2017-04-09 2:22 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-03-28 11:48 [PATCH] arm64: tegra: Add CPU and PSCI nodes for NVIDIA Tegra210 platforms Jon Hunter
2017-03-28 14:55 ` Sudeep Holla
[not found] ` <bf527c4b-f17c-bfcf-e7fa-dab64b131996-5wv7dgnIgG8@public.gmane.org>
2017-03-28 15:32 ` Jon Hunter
[not found] ` <e3ab2e09-ee32-96e2-b0c8-f7def668bf31-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2017-03-28 15:37 ` Sudeep Holla
2017-03-28 16:23 ` Stephen Warren
[not found] ` <9069e2fd-bf7b-b1df-3d1b-071ee21642ef-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2017-03-28 16:49 ` Jon Hunter
[not found] ` <f9c59c65-de48-108d-73df-c659cc3300e6-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2017-03-28 18:54 ` Mark Rutland
2017-04-09 2:22 ` Vagrant Cascadian
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).