[PASEMI NEMO] Boot issue with the PowerPC updates 6.4-1

Michael Ellerman mpe at ellerman.id.au
Thu May 4 14:51:31 AEST 2023


Rob Herring <robh at kernel.org> writes:
> On Wed, May 3, 2023 at 12:40 PM Christian Zigotzky
> <chzigotzky at xenosoft.de> wrote:
>>
>> > On 3. May 2023, at 18:51, Rob Herring <robh at kernel.org> wrote:
>> >
>> > On Wed, May 3, 2023 at 11:27 AM Christophe Leroy
>> > <christophe.leroy at csgroup.eu> wrote:
>> >>
>> >> +Rob as he's the commit's Author.
>> >>
>> >>> Le 03/05/2023 à 17:46, Christian Zigotzky a écrit :
>> >>> On 02 May 2023 at 11:28 am, Michael Ellerman wrote:
>> >>>> Christian Zigotzky <chzigotzky at xenosoft.de> writes:
>> >>>>> Hello,
>> >>>>>
>> >>>>> Our PASEMI Nemo board [1] doesn't boot with the PowerPC updates 6.4-1
>> >>>>> [2].
>> >>>>>
>> >>>>> The kernel hangs right after the booting Linux via __start() @
>> >>>>> 0x0000000000000000 ...
>> >>>>>
>> >>>>> I was able to revert the PowerPC updates 6.4-1 [2] with the following
>> >>>>> command: git revert 70cc1b5307e8ee3076fdf2ecbeb89eb973aa0ff7 -m 1
>> >>>>>
>> >>>>> After a re-compiling, the kernel boots without any problems without the
>> >>>>> PowerPC updates 6.4-1 [2].
>> >>>>>
>> >>>>> Could you please explain me, what you have done in the boot area?
>> >>>> There's a few possibilities, but nothing obvious.
>> >>>>
>> >>>> To begin with can you please test the following commits?
>> >>>>
>> >>>> 77e69ee7ce07
>> >>>> e4ab08be5b49
>> >>>> eeac8ede1755
>> >>>>
>> >>>> cheers
>> >>> git revert e4ab08be5b4902e5b350b0e1e1a3c25eb21d76d4
>> >>>
>> >>> [master 0086e2cbbec0] Revert "powerpc/isa-bridge: Remove open coded
>> >>> "ranges" parsing"
>> >>>  1 file changed, 129 insertions(+), 37 deletions(-)
>> >>>
>> >>> After a recompiling it boots without any problems.
>> >>>
>> >>> e4ab08be5b49 -- powerpc/isa-bridge: Remove open coded "ranges" parsing
>> >>> is the bad commit.
>> >
>> > Could I get a DT file for this board?
>> >
>> > In the meantime, just revert this commit. I don't think I'll be able
>> > to fix it before I'm out on sabbatical.
>>
>> FYI:
>>
>> Darren Stevens wrote:
>>
>> The dtb passed by the CFE firmware has a number of issues, which up till
>> now have been fixed by use of patches applied to the mainline kernel.
>> This occasionally causes problems with changes made to mainline.
>
> Changing the firmware is not the only way to modify the DT. Perhaps a
> DT overlay would work better than carrying patches if the patches
> aren't upstreamable. It kind of depends on how early you'd need to
> apply the overlay and whether you'd need external phandles (aka
> __symbols__ node, which the base DTB wouldn't support).

We already have some code that changes various things about the DT on
those boards. See fixup_device_tree_pasemi().

> Looking at the DT, I think this change might fix it. Can you test this change:
>
> diff --git a/drivers/of/address.c b/drivers/of/address.c
> index e692809ff822..475b74413fdd 100644
> --- a/drivers/of/address.c
> +++ b/drivers/of/address.c
> @@ -284,7 +284,7 @@ EXPORT_SYMBOL(of_range_to_resource);
>
>  static int of_bus_isa_match(struct device_node *np)
>  {
> -       return of_node_name_eq(np, "isa");
> +       return of_node_is_type(np, "isa") || of_node_name_eq(np, "isa");
>  }

The fixup code can't change a nodes name though AFAIK, so we may still
need this fix.

cheers


More information about the Linuxppc-dev mailing list