armv6 kernel support for Raspberry Pi 3 in default aarch32 mode

Sylvain Garrigues sylvain at sylvaingarrigues.com
Wed Aug 9 19:14:49 UTC 2017


Hello,

I have a kernel.bin (compiled with TARGET_ARCH=armv6) which boots perfectly
on my Raspberry Pi 2 v1.1, and I don't understand why the same kernel.bin
does't boot on my Raspberry Pi 3. I have same DTB and config.txt, with
enable_uart=1.

I can see in the kernel source code that the cortex-a53 is a listed
supported processor, and the raspberry pi 3 boots by default in aarch32
mode which is compatible with code compiled for armv6.

So what's wrong and what shall be done to make our armv6 kernel boot on a
raspberry pi 3?

Also for some time now the new raspberry pi 2 available (starting from v1.2
board revision) also have a cortex-a53 and the same soc than raspberry pi 3
so it would be great to have a working FreeBSD/armv6 image for these recent
famous boards.

I am interested in getting directions to make this happen (modifications
needed in locore-v6.S?)

Sylvain
PS: If you ask why I don't use the arm64 kernel, it's because the vchiq
driver does not work yet in 64 bit mode.


More information about the freebsd-arm mailing list