2021-09-29 21:00:42

by Corentin Labbe

[permalink] [raw]
Subject: [PATCH] ARM: handle CONFIG_CPU_ENDIAN_BE32 in arch/arm/kernel/head.S

My intel-ixp42x-welltech-epbx100 no longer boot since 4.14.
This is due to commit 463dbba4d189 ("ARM: 9104/2: Fix Keystone 2 kernel
mapping regression")
which forgot to handle CONFIG_CPU_ENDIAN_BE32 as possible BE config.

Suggested-by: Krzysztof Hałasa <[email protected]>
Fixes: 463dbba4d189 ("ARM: 9104/2: Fix Keystone 2 kernel mapping regression")
Signed-off-by: Corentin Labbe <[email protected]>
---
arch/arm/kernel/head.S | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/arm/kernel/head.S b/arch/arm/kernel/head.S
index 29070eb8df7d..3fc7f9750ce4 100644
--- a/arch/arm/kernel/head.S
+++ b/arch/arm/kernel/head.S
@@ -253,7 +253,7 @@ __create_page_tables:
add r0, r4, #KERNEL_OFFSET >> (SECTION_SHIFT - PMD_ORDER)
ldr r6, =(_end - 1)
adr_l r5, kernel_sec_start @ _pa(kernel_sec_start)
-#ifdef CONFIG_CPU_ENDIAN_BE8
+#if defined CONFIG_CPU_ENDIAN_BE8 || defined CONFIG_CPU_ENDIAN_BE32
str r8, [r5, #4] @ Save physical start of kernel (BE)
#else
str r8, [r5] @ Save physical start of kernel (LE)
@@ -266,7 +266,7 @@ __create_page_tables:
bls 1b
eor r3, r3, r7 @ Remove the MMU flags
adr_l r5, kernel_sec_end @ _pa(kernel_sec_end)
-#ifdef CONFIG_CPU_ENDIAN_BE8
+#if defined CONFIG_CPU_ENDIAN_BE8 || defined CONFIG_CPU_ENDIAN_BE32
str r3, [r5, #4] @ Save physical end of kernel (BE)
#else
str r3, [r5] @ Save physical end of kernel (LE)
--
2.32.0


2021-09-29 21:20:20

by Linus Walleij

[permalink] [raw]
Subject: Re: [PATCH] ARM: handle CONFIG_CPU_ENDIAN_BE32 in arch/arm/kernel/head.S

On Wed, Sep 29, 2021 at 8:19 PM Corentin Labbe
<[email protected]> wrote:

> My intel-ixp42x-welltech-epbx100 no longer boot since 4.14.
> This is due to commit 463dbba4d189 ("ARM: 9104/2: Fix Keystone 2 kernel
> mapping regression")
> which forgot to handle CONFIG_CPU_ENDIAN_BE32 as possible BE config.
>
> Suggested-by: Krzysztof Hałasa <[email protected]>
> Fixes: 463dbba4d189 ("ARM: 9104/2: Fix Keystone 2 kernel mapping regression")
> Signed-off-by: Corentin Labbe <[email protected]>

Good catch!
Reviewed-by: Linus Walleij <[email protected]>

Please put this into Russell's patch tracker.

Yours,
Linus Walleij

2021-10-12 12:34:34

by Corentin Labbe

[permalink] [raw]
Subject: Re: [PATCH] ARM: handle CONFIG_CPU_ENDIAN_BE32 in arch/arm/kernel/head.S

Le Wed, Sep 29, 2021 at 09:08:38PM +0200, Linus Walleij a écrit :
> On Wed, Sep 29, 2021 at 8:19 PM Corentin Labbe
> <[email protected]> wrote:
>
> > My intel-ixp42x-welltech-epbx100 no longer boot since 4.14.
> > This is due to commit 463dbba4d189 ("ARM: 9104/2: Fix Keystone 2 kernel
> > mapping regression")
> > which forgot to handle CONFIG_CPU_ENDIAN_BE32 as possible BE config.
> >
> > Suggested-by: Krzysztof Hałasa <[email protected]>
> > Fixes: 463dbba4d189 ("ARM: 9104/2: Fix Keystone 2 kernel mapping regression")
> > Signed-off-by: Corentin Labbe <[email protected]>
>
> Good catch!
> Reviewed-by: Linus Walleij <[email protected]>
>
> Please put this into Russell's patch tracker.

hello

How to achieve that ?
Do you mean https://www.arm.linux.org.uk/developer/patches/add.php ?

Regards

2021-10-13 23:32:13

by Linus Walleij

[permalink] [raw]
Subject: Re: [PATCH] ARM: handle CONFIG_CPU_ENDIAN_BE32 in arch/arm/kernel/head.S

On Tue, Oct 12, 2021 at 2:31 PM Corentin Labbe
<[email protected]> wrote:
> Le Wed, Sep 29, 2021 at 09:08:38PM +0200, Linus Walleij a écrit :
> > On Wed, Sep 29, 2021 at 8:19 PM Corentin Labbe
> > <[email protected]> wrote:
> >
> > > My intel-ixp42x-welltech-epbx100 no longer boot since 4.14.
> > > This is due to commit 463dbba4d189 ("ARM: 9104/2: Fix Keystone 2 kernel
> > > mapping regression")
> > > which forgot to handle CONFIG_CPU_ENDIAN_BE32 as possible BE config.
> > >
> > > Suggested-by: Krzysztof Hałasa <[email protected]>
> > > Fixes: 463dbba4d189 ("ARM: 9104/2: Fix Keystone 2 kernel mapping regression")
> > > Signed-off-by: Corentin Labbe <[email protected]>
> >
> > Good catch!
> > Reviewed-by: Linus Walleij <[email protected]>
> >
> > Please put this into Russell's patch tracker.
>
> hello
>
> How to achieve that ?
> Do you mean https://www.arm.linux.org.uk/developer/patches/add.php ?

Yes you need an account and the submit the patches using mail
or the web interface.

If it seems troublesome for you, tell me and I can sign it off and put it into
the system.

Yours,
Linus Walleij