aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mm/mm-armv.c
diff options
context:
space:
mode:
authorRussell King <rmk@dyn-67.arm.linux.org.uk>2005-07-26 19:51:26 +0100
committerRussell King <rmk+kernel@arm.linux.org.uk>2005-07-26 19:51:26 +0100
commit186efd5275bbe7ffb73d939c1ce5690682668200 (patch)
tree2d90ed4547cd15249570747d8790005ec7229c2f /arch/arm/mm/mm-armv.c
parent[PATCH] ARM SMP: Add ARMv6 memory barriers (diff)
downloadlinux-dev-186efd5275bbe7ffb73d939c1ce5690682668200.tar.xz
linux-dev-186efd5275bbe7ffb73d939c1ce5690682668200.zip
[PATCH] ARM SMP: Mark device mappings as "device" in ARMv6 parlance
ARMv6 introduces memory types into the page tables. Mark devices mappings with the "shared device" memory type. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mm/mm-armv.c')
-rw-r--r--arch/arm/mm/mm-armv.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/arm/mm/mm-armv.c b/arch/arm/mm/mm-armv.c
index b19f00e99a21..e33fe4229d05 100644
--- a/arch/arm/mm/mm-armv.c
+++ b/arch/arm/mm/mm-armv.c
@@ -425,6 +425,9 @@ static void __init build_mem_type_table(void)
mem_types[MT_ROM].prot_sect |= PMD_SECT_APX|PMD_SECT_AP_WRITE;
mem_types[MT_MINICLEAN].prot_sect |= PMD_SECT_APX|PMD_SECT_AP_WRITE;
mem_types[MT_CACHECLEAN].prot_sect |= PMD_SECT_APX|PMD_SECT_AP_WRITE;
+
+ mem_types[MT_DEVICE].prot_pte |= L_PTE_BUFFERABLE;
+ mem_types[MT_DEVICE].prot_sect |= PMD_SECT_BUFFERED;
}
cp = &cache_policies[cachepolicy];