intel-ixp42x-welltech-epbx100 no longer boot due to 463dbba4d189 ("ARM: 9104/2: Fix Keystone 2 kernel mapping regression")
Krzysztof Hałasa
khalasa at piap.pl
Tue Sep 28 03:32:13 PDT 2021
Hello Corentin,
Corentin Labbe <clabbe.montjoie at gmail.com> writes:
> I am working on puting my ixp4xx board on kernelCI.
> But it no longer boot since 4.14.
> It only prints "Starting kernelUncompressing Linux... done, booting the kernel." then nothing.
>
> I bisected the break to 463dbba4d189 ("ARM: 9104/2: Fix Keystone 2 kernel mapping regression")
I guess you build your kernel as big-endian.
These parts seem suspicious to me:
- str r8, [r5] @ Save physical start of kernel
+#ifdef CONFIG_CPU_ENDIAN_BE8
+ str r8, [r5, #4] @ Save physical start of kernel (BE)
+#else
+ str r8, [r5] @ Save physical start of kernel (LE)
+#endif
and
- str r3, [r5] @ Save physical end of kernel
+#ifdef CONFIG_CPU_ENDIAN_BE8
+ str r3, [r5, #4] @ Save physical end of kernel (BE)
+#else
+ str r3, [r5] @ Save physical end of kernel (LE)
+#endif
IXP4xx, being ARMv5, uses CONFIG_CPU_ENDIAN_BE32 (when configured as
BE), but it needs the ", #4" as well.
I'd test with: #if defined CONFIG_CPU_ENDIAN_BE8 || defined CONFIG_CPU_ENDIAN_BE32
--
Krzysztof "Chris" Hałasa
Sieć Badawcza Łukasiewicz
Przemysłowy Instytut Automatyki i Pomiarów PIAP
Al. Jerozolimskie 202, 02-486 Warszawa
More information about the linux-arm-kernel
mailing list