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@xxxxxxxxxxxxx> 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@xxxxxxxxxx> > --- > 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