ar71xx: Ubiquiti Airmax M: add relocate-kernel to invalidate cache
authorMatthias Schiffer <mschiffer@universe-factory.net>
Thu, 26 Apr 2018 18:04:48 +0000 (20:04 +0200)
committerMatthias Schiffer <mschiffer@universe-factory.net>
Thu, 26 Apr 2018 18:40:07 +0000 (20:40 +0200)
Some Ubiquiti U-boot versions, in particular the "U-Boot 1.1.4.2-s956
(Jun 10 2015 - 10:54:50)" found with AirOS 5.6, do not correctly flush the
caches for the whole kernel address range after decompressing the kernel
image, leading to hard to debug boot failures, depending on kernel version
and configuration.

As a workaround, prepend the relocate-kernels loader, which will invalidate
the caches after moving the kernel to the correct load address.

Reported-by: Andreas Ziegler <dev@andreas-ziegler.de>
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
target/linux/ar71xx/image/generic-ubnt.mk

index d5e3aa5860ef8fbf2f5f714b4eb19b83b65491e9..07c02955041b1ca2c6eca3ad9e08dba5da41e455 100644 (file)
@@ -52,6 +52,7 @@ define Device/ubnt-xm
   DEVICE_PACKAGES += kmod-usb-ohci
   UBNT_TYPE := XM
   UBNT_CHIP := ar7240
+  KERNEL := kernel-bin | patch-cmdline | relocate-kernel | lzma | uImage lzma
 endef
 
 define Device/ubnt-xw