]> git.sur5r.net Git - u-boot/blobdiff - arch/arm/mach-socfpga/board.c
arm: socfpga: Fix: Compile MCR instruction on ARM 32-bit only
[u-boot] / arch / arm / mach-socfpga / board.c
index 189e12a668398c02de8380dbad7558b63e05d18e..26d84be6e963d9b3085a6f27d13d3b70585d7b45 100644 (file)
 
 DECLARE_GLOBAL_DATA_PTR;
 
-void s_init(void) {}
+void s_init(void) {
+#ifndef CONFIG_ARM64
+       /*
+        * Preconfigure ACTLR, make sure Write Full Line of Zeroes is disabled.
+        * This is optional on CycloneV / ArriaV.
+        * This is mandatory on Arria10, otherwise Linux refuses to boot.
+        */
+       asm volatile(
+               "mcr p15, 0, %0, c1, c0, 1\n"
+               "isb\n"
+               "dsb\n"
+       ::"r"(0x0));
+#endif
+}
 
 /*
  * Miscellaneous platform dependent initialisations