]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - arch/arm/plat-omap/sram.c
ARM: OMAP4: Fix errata i688 with MPU interconnect barriers.
[karo-tx-linux.git] / arch / arm / plat-omap / sram.c
index 8b28664d1c62634b0d8ec68e62f1a23a5d06a27a..ad6a71a00cefaa8f54dd5c228cdba22f85333b01 100644 (file)
 #define OMAP1_SRAM_PA          0x20000000
 #define OMAP2_SRAM_PUB_PA      (OMAP2_SRAM_PA + 0xf800)
 #define OMAP3_SRAM_PUB_PA       (OMAP3_SRAM_PA + 0x8000)
+#ifdef CONFIG_OMAP4_ERRATA_I688
+#define OMAP4_SRAM_PUB_PA      OMAP4_SRAM_PA
+#else
 #define OMAP4_SRAM_PUB_PA      (OMAP4_SRAM_PA + 0x4000)
+#endif
 
 #if defined(CONFIG_ARCH_OMAP2PLUS)
 #define SRAM_BOOTLOADER_SZ     0x00
@@ -163,6 +167,10 @@ static void __init omap_map_sram(void)
        if (omap_sram_size == 0)
                return;
 
+#ifdef CONFIG_OMAP4_ERRATA_I688
+               omap_sram_start += PAGE_SIZE;
+               omap_sram_size -= SZ_16K;
+#endif
        if (cpu_is_omap34xx()) {
                /*
                 * SRAM must be marked as non-cached on OMAP3 since the