Hello Lukasz, Aleksandr,
I have not managed to build it for Rpi4-64. I followed the same approach as Aleksandr but it does not work for 64bit system.
Doing exactly the same changes as Aleksandr if I build for MACHINE = "raspberrypi4-64" in local.conf, the .config file has following configs:
CONFIG_HAVE_PREEMPT_LAZY=y
CONFIG_PREEMPT_NONE=y
# CONFIG_PREEMPT_VOLUNTARY is not set
# CONFIG_PREEMPT is not set
If in the local.conf I replace the machine to MACHINE = "raspberrypi4" and I bitbake again, the .config file looks as follow:
CONFIG_HAVE_PREEMPT_LAZY=y
CONFIG_PREEMPT_LAZY=y
# CONFIG_PREEMPT_NONE is not set
# CONFIG_PREEMPT_VOLUNTARY is not set
# CONFIG_PREEMPT is not set
CONFIG_PREEMPT_RT=y
CONFIG_PREEMPT_COUNT=y
CONFIG_PREEMPTION=y
So for raspberrypi4 the RT kernel is built whereas for raspberrypi4-64 a non preemptive kernel is built (without adding rt.cfg or the patch a PREEMPTIVE kernel will be built, i.e. CONFIG_PREEMPT=y is set in the .config file).
Once I figure out why this happens I will post it here. Any further hints are appreciated.
Best Regards,
Carles