summaryrefslogtreecommitdiffstats
path: root/arch/arm/include/asm/arch-fsl-layerscape/config.h
diff options
context:
space:
mode:
authorYork Sun <yorksun@freescale.com>2015-12-04 11:57:08 -0800
committerYork Sun <yorksun@freescale.com>2015-12-15 08:57:33 +0800
commitc107c0c05c988ac6cfba6de60c90f105bbea0e1e (patch)
tree5c3c98cf44b3e8991687875e985ce4d73485a3cf /arch/arm/include/asm/arch-fsl-layerscape/config.h
parente81495224f732f17ae6f379baf23b90cd1d5cb5f (diff)
downloadblackbird-obmc-uboot-c107c0c05c988ac6cfba6de60c90f105bbea0e1e.tar.gz
blackbird-obmc-uboot-c107c0c05c988ac6cfba6de60c90f105bbea0e1e.zip
armv8: fsl-layerscape: Make DDR non secure in MMU tables
DDR has been set as secure in MMU tables. Non-secure master such as SDHC DMA cannot access data correctly. Mixing secure and non- secure MMU entries requirs the MMU tables themselves in secure memory. This patch moves MMU tables into a secure DDR area. Early MMU tables are changed to set DDR as non-secure. A new table is added into final MMU tables so secure memory can have 2MB granuality. gd->secure_ram tracks the location of this secure memory. For ARMv8 SoCs, the RAM base is not zero and RAM is divided into several banks. gd->secure_ram needs to be maintained before using. This maintenance is board-specific, depending on the SoC and memory bank of the secure memory falls into. Signed-off-by: York Sun <yorksun@freescale.com>
Diffstat (limited to 'arch/arm/include/asm/arch-fsl-layerscape/config.h')
-rw-r--r--arch/arm/include/asm/arch-fsl-layerscape/config.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/arm/include/asm/arch-fsl-layerscape/config.h b/arch/arm/include/asm/arch-fsl-layerscape/config.h
index 7217a87502..b39281260d 100644
--- a/arch/arm/include/asm/arch-fsl-layerscape/config.h
+++ b/arch/arm/include/asm/arch-fsl-layerscape/config.h
@@ -17,6 +17,12 @@
#define CONFIG_SYS_FSL_DDR /* Freescale DDR driver */
#define CONFIG_SYS_FSL_DDR_VER FSL_DDR_VER_5_0
+/*
+ * Reserve secure memory
+ * To be aligned with MMU block size
+ */
+#define CONFIG_SYS_MEM_RESERVE_SECURE (2048 * 1024) /* 2MB */
+
#if defined(CONFIG_LS2080A) || defined(CONFIG_LS2085A)
#define CONFIG_MAX_CPUS 16
#define CONFIG_SYS_FSL_IFC_BANK_COUNT 8
OpenPOWER on IntegriCloud