aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mm/proc-arm720.S
diff options
context:
space:
mode:
authorRussell King <rmk@dyn-67.arm.linux.org.uk>2006-06-29 13:24:21 -0400
committerRussell King <rmk+kernel@arm.linux.org.uk>2006-06-29 13:24:21 -0400
commit8799ee9f49f6171fd58f4d64f8c067ca49006a5d (patch)
treeb746b8800bc99633f31505d151624c8ccd75cd47 /arch/arm/mm/proc-arm720.S
parent326764a85b7676388db3ebad6488f312631d7661 (diff)
[ARM] Set bit 4 on section mappings correctly depending on CPU
On some CPUs, bit 4 of section mappings means "update the cache when written to". On others, this bit is required to be one, and others it's required to be zero. Finally, on ARMv6 and above, setting it turns on "no execute" and prevents speculative prefetches. With all these combinations, no one value fits all CPUs, so we have to pick a value depending on the CPU type, and the area we're mapping. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mm/proc-arm720.S')
-rw-r--r--arch/arm/mm/proc-arm720.S8
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/arm/mm/proc-arm720.S b/arch/arm/mm/proc-arm720.S
index 86102467d37f..fb4110a9db6f 100644
--- a/arch/arm/mm/proc-arm720.S
+++ b/arch/arm/mm/proc-arm720.S
@@ -246,6 +246,10 @@ __arm710_proc_info:
246 PMD_BIT4 | \ 246 PMD_BIT4 | \
247 PMD_SECT_AP_WRITE | \ 247 PMD_SECT_AP_WRITE | \
248 PMD_SECT_AP_READ 248 PMD_SECT_AP_READ
249 .long PMD_TYPE_SECT | \
250 PMD_BIT4 | \
251 PMD_SECT_AP_WRITE | \
252 PMD_SECT_AP_READ
249 b __arm710_setup @ cpu_flush 253 b __arm710_setup @ cpu_flush
250 .long cpu_arch_name @ arch_name 254 .long cpu_arch_name @ arch_name
251 .long cpu_elf_name @ elf_name 255 .long cpu_elf_name @ elf_name
@@ -267,6 +271,10 @@ __arm720_proc_info:
267 PMD_BIT4 | \ 271 PMD_BIT4 | \
268 PMD_SECT_AP_WRITE | \ 272 PMD_SECT_AP_WRITE | \
269 PMD_SECT_AP_READ 273 PMD_SECT_AP_READ
274 .long PMD_TYPE_SECT | \
275 PMD_BIT4 | \
276 PMD_SECT_AP_WRITE | \
277 PMD_SECT_AP_READ
270 b __arm720_setup @ cpu_flush 278 b __arm720_setup @ cpu_flush
271 .long cpu_arch_name @ arch_name 279 .long cpu_arch_name @ arch_name
272 .long cpu_elf_name @ elf_name 280 .long cpu_elf_name @ elf_name