On Tue, 18 Mar 2025 at 19:54, Guenter Roeck <li...@roeck-us.net> wrote:
>
> On 3/18/25 09:59, Peter Maydell wrote:
> > On Sat, 15 Mar 2025 at 14:20, Guenter Roeck <li...@roeck-us.net> wrote:
> >>
> >> Without psci_conduit, the Linux kernel crashes almost immediately.
> >>
> >>      psci: probing for conduit method from DT.
> >>      Internal error: Oops - Undefined instruction: 0000000002000000 [#1] 
> >> PREEMPT SMP
> >>
> >> Fixes: ae0c4d1a1290 ("hw/arm: Add NPCM8XX SoC")
> >> Cc: Hao Wu <wuhao...@google.com>
> >> Cc: Peter Maydell <peter.mayd...@linaro.org>
> >> Signed-off-by: Guenter Roeck <li...@roeck-us.net>
> >> ---
> >>   hw/arm/npcm8xx.c | 1 +
> >>   1 file changed, 1 insertion(+)
> >>
> >> diff --git a/hw/arm/npcm8xx.c b/hw/arm/npcm8xx.c
> >> index f182accc47..e5a1929ed7 100644
> >> --- a/hw/arm/npcm8xx.c
> >> +++ b/hw/arm/npcm8xx.c
> >> @@ -346,6 +346,7 @@ static struct arm_boot_info npcm8xx_binfo = {
> >>       .secure_boot            = false,
> >>       .board_id               = -1,
> >>       .board_setup_addr       = NPCM8XX_BOARD_SETUP_ADDR,
> >> +    .psci_conduit           = QEMU_PSCI_CONDUIT_SMC,
> >>   };
> >
> > Why do we need this for npcm8xx when we don't need it
> > for npcm7xx? Or is it also broken on 7xx?
> >
>
> I don't see a reference to psci in npcm7xx devicetree files
> in the upstream Linux kernel.
>
> $ git grep psci arch/arm64/boot/dts/nuvoton/ arch/arm/boot/dts/nuvoton/
> arch/arm64/boot/dts/nuvoton/ma35d1.dtsi:                        enable-method 
> = "psci";
> arch/arm64/boot/dts/nuvoton/ma35d1.dtsi:                        enable-method 
> = "psci";
> arch/arm64/boot/dts/nuvoton/ma35d1.dtsi:        psci {
> arch/arm64/boot/dts/nuvoton/ma35d1.dtsi:                compatible = 
> "arm,psci-0.2";
> arch/arm64/boot/dts/nuvoton/nuvoton-npcm845.dtsi:                       
> enable-method = "psci";
> arch/arm64/boot/dts/nuvoton/nuvoton-npcm845.dtsi:                       
> enable-method = "psci";
> arch/arm64/boot/dts/nuvoton/nuvoton-npcm845.dtsi:                       
> enable-method = "psci";
> arch/arm64/boot/dts/nuvoton/nuvoton-npcm845.dtsi:                       
> enable-method = "psci";
> arch/arm64/boot/dts/nuvoton/nuvoton-npcm845.dtsi:       psci {
> arch/arm64/boot/dts/nuvoton/nuvoton-npcm845.dtsi:               compatible    
>   = "arm,psci-1.0";

I guess the aarch32 versions of the board don't use psci and
the aarch64 one does.

Would any of the Nuvoton folks like to comment on this patch?
It looks like a correct fix to me.

thanks
-- PMM

Reply via email to