diff options
author | Achin Gupta <achin.gupta@arm.com> | 2014-06-26 08:59:07 +0100 |
---|---|---|
committer | Achin Gupta <achin.gupta@arm.com> | 2014-07-19 23:31:52 +0100 |
commit | afff8cbdd816ca9b0d71ab54882ce70b21ed84e1 (patch) | |
tree | 45cd0afb3cdcc7db4fd42669e0430a57fa396768 /include | |
parent | 754a2b7a092d3cf81767f1b5a6ab61531792e45f (diff) | |
download | trusted-firmware-a-afff8cbdd816ca9b0d71ab54882ce70b21ed84e1.tar.gz |
Make enablement of the MMU more flexible
This patch adds a 'flags' parameter to each exception level specific function
responsible for enabling the MMU. At present only a single flag which indicates
whether the data cache should also be enabled is implemented. Subsequent patches
will use this flag when enabling the MMU in the warm boot paths.
Change-Id: I0eafae1e678c9ecc604e680851093f1680e9cefa
Diffstat (limited to 'include')
-rw-r--r-- | include/lib/aarch64/xlat_tables.h | 13 | ||||
-rw-r--r-- | include/plat/common/platform.h | 4 |
2 files changed, 13 insertions, 4 deletions
diff --git a/include/lib/aarch64/xlat_tables.h b/include/lib/aarch64/xlat_tables.h index 8e0adc7fa6..2d4a211b9c 100644 --- a/include/lib/aarch64/xlat_tables.h +++ b/include/lib/aarch64/xlat_tables.h @@ -31,6 +31,14 @@ #ifndef __XLAT_TABLES_H__ #define __XLAT_TABLES_H__ + +/* + * Flags to override default values used to program system registers while + * enabling the MMU. + */ +#define DISABLE_DCACHE (1 << 0) + +#ifndef __ASSEMBLY__ #include <stdint.h> /* @@ -67,7 +75,8 @@ void mmap_add(const mmap_region_t *mm); void init_xlat_tables(void); -void enable_mmu_el1(void); -void enable_mmu_el3(void); +void enable_mmu_el1(uint32_t flags); +void enable_mmu_el3(uint32_t flags); +#endif /*__ASSEMBLY__*/ #endif /* __XLAT_TABLES_H__ */ diff --git a/include/plat/common/platform.h b/include/plat/common/platform.h index 1eeaac2784..4b73a0971d 100644 --- a/include/plat/common/platform.h +++ b/include/plat/common/platform.h @@ -180,7 +180,7 @@ unsigned int plat_get_aff_state(unsigned int, unsigned long); /******************************************************************************* * Optional BL3-1 functions (may be overridden) ******************************************************************************/ -void bl31_plat_enable_mmu(void); +void bl31_plat_enable_mmu(uint32_t flags); /******************************************************************************* * Mandatory BL3-2 functions (only if platform contains a BL3-2) @@ -190,6 +190,6 @@ void bl32_platform_setup(void); /******************************************************************************* * Optional BL3-2 functions (may be overridden) ******************************************************************************/ -void bl32_plat_enable_mmu(void); +void bl32_plat_enable_mmu(uint32_t flags); #endif /* __PLATFORM_H__ */ |