[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <b90c582b8ddf0429058361ff42dc63ad1337bf43.camel@microchip.com>
Date: Tue, 21 Feb 2023 14:59:56 +0100
From: Steen Hegelund <steen.hegelund@...rochip.com>
To: Robert Marko <robert.marko@...tura.hr>, <robh+dt@...nel.org>,
<krzysztof.kozlowski+dt@...aro.org>, <lars.povlsen@...rochip.com>,
<daniel.machon@...rochip.com>, <UNGLinuxDriver@...rochip.com>,
<arnd@...db.de>, <alexandre.belloni@...tlin.com>,
<devicetree@...r.kernel.org>,
<linux-arm-kernel@...ts.infradead.org>,
<linux-kernel@...r.kernel.org>
CC: <luka.perkov@...tura.hr>
Subject: Re: [PATCH v2 1/3] arm64: dts: microchip: sparx5: do not use PSCI
on reference boards
Hi Robert,
I find this very useful since the Sparx5 SoC does not support TFA and therefore
cannot provide PSCI on its own, as you also state below.
Acked-by: Steen Hegelund <Steen.Hegelund@...rochip.com>
On Tue, 2023-02-21 at 11:50 +0100, Robert Marko wrote:
> EXTERNAL EMAIL: Do not click links or open attachments unless you know the
> content is safe
>
> PSCI is not implemented on SparX-5 at all, there is no ATF and U-boot that
> is shipped does not implement it as well.
>
> I have tried flashing the latest BSP 2022.12 U-boot which did not work.
> After contacting Microchip, they confirmed that there is no ATF for the
> SoC nor PSCI implementation which is unfortunate in 2023.
>
> So, disable PSCI as otherwise kernel crashes as soon as it tries probing
> PSCI with, and the crash is only visible if earlycon is used.
>
> Since PSCI is not implemented, switch core bringup to use spin-tables
> which are implemented in the vendor U-boot and actually work.
>
> Tested on PCB134 with eMMC (VSC5640EV).
>
> Fixes: 6694aee00a4b ("arm64: dts: sparx5: Add basic cpu support")
> Signed-off-by: Robert Marko <robert.marko@...tura.hr>
> ---
> Changes in v2:
> * As suggested by Arnd, disable PSCI only on reference boards
> ---
> arch/arm64/boot/dts/microchip/sparx5.dtsi | 2 +-
> arch/arm64/boot/dts/microchip/sparx5_pcb_common.dtsi | 12 ++++++++++++
> 2 files changed, 13 insertions(+), 1 deletion(-)
>
> diff --git a/arch/arm64/boot/dts/microchip/sparx5.dtsi
> b/arch/arm64/boot/dts/microchip/sparx5.dtsi
> index 0367a00a269b3..5eae6e7fd248e 100644
> --- a/arch/arm64/boot/dts/microchip/sparx5.dtsi
> +++ b/arch/arm64/boot/dts/microchip/sparx5.dtsi
> @@ -61,7 +61,7 @@ arm-pmu {
> interrupt-affinity = <&cpu0>, <&cpu1>;
> };
>
> - psci {
> + psci: psci {
> compatible = "arm,psci-0.2";
> method = "smc";
> };
> diff --git a/arch/arm64/boot/dts/microchip/sparx5_pcb_common.dtsi
> b/arch/arm64/boot/dts/microchip/sparx5_pcb_common.dtsi
> index 9d1a082de3e29..32bb76b3202a0 100644
> --- a/arch/arm64/boot/dts/microchip/sparx5_pcb_common.dtsi
> +++ b/arch/arm64/boot/dts/microchip/sparx5_pcb_common.dtsi
> @@ -6,6 +6,18 @@
> /dts-v1/;
> #include "sparx5.dtsi"
>
> +&psci {
> + status = "disabled";
> +};
> +
> +&cpu0 {
> + enable-method = "spin-table";
> +};
> +
> +&cpu1 {
> + enable-method = "spin-table";
> +};
> +
> &uart0 {
> status = "okay";
> };
> --
> 2.39.2
>
BR
Steen
Powered by blists - more mailing lists