aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mm
diff options
context:
space:
mode:
authorCatalin Marinas <catalin.marinas@arm.com>2009-05-30 09:00:16 -0400
committerCatalin Marinas <catalin.marinas@arm.com>2009-05-30 09:00:16 -0400
commit23d1c515d8fc6d74bea442a4b687c3b5b8627ec4 (patch)
treed257dedacef94e47006d7daca00e698296e9fa38 /arch/arm/mm
parent213fb2a8ee81ec106b9b370a07ccad575e9d3748 (diff)
ARMv7: Document the PRRR and NMRR registers setting
This patch adds a comment to the proc-v7.S file for the setting of the PRRR and NMRR registers. It also sets the PRRR[13:12] bits to 0 (corresponding to the reserved TEX[0]CB encoding 110) to be consistent with the documentation. Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Diffstat (limited to 'arch/arm/mm')
-rw-r--r--arch/arm/mm/proc-v7.S32
1 files changed, 30 insertions, 2 deletions
diff --git a/arch/arm/mm/proc-v7.S b/arch/arm/mm/proc-v7.S
index 095b69f5a83..0a8ffd3c03f 100644
--- a/arch/arm/mm/proc-v7.S
+++ b/arch/arm/mm/proc-v7.S
@@ -219,8 +219,36 @@ __v7_setup:
219 mov r10, #0x1f @ domains 0, 1 = manager 219 mov r10, #0x1f @ domains 0, 1 = manager
220 mcr p15, 0, r10, c3, c0, 0 @ load domain access register 220 mcr p15, 0, r10, c3, c0, 0 @ load domain access register
221#endif 221#endif
222 ldr r5, =0xff0aa1a8 222 /*
223 ldr r6, =0x40e040e0 223 * Memory region attributes with SCTLR.TRE=1
224 *
225 * n = TEX[0],C,B
226 * TR = PRRR[2n+1:2n] - memory type
227 * IR = NMRR[2n+1:2n] - inner cacheable property
228 * OR = NMRR[2n+17:2n+16] - outer cacheable property
229 *
230 * n TR IR OR
231 * UNCACHED 000 00
232 * BUFFERABLE 001 10 00 00
233 * WRITETHROUGH 010 10 10 10
234 * WRITEBACK 011 10 11 11
235 * reserved 110
236 * WRITEALLOC 111 10 01 01
237 * DEV_SHARED 100 01
238 * DEV_NONSHARED 100 01
239 * DEV_WC 001 10
240 * DEV_CACHED 011 10
241 *
242 * Other attributes:
243 *
244 * DS0 = PRRR[16] = 0 - device shareable property
245 * DS1 = PRRR[17] = 1 - device shareable property
246 * NS0 = PRRR[18] = 0 - normal shareable property
247 * NS1 = PRRR[19] = 1 - normal shareable property
248 * NOS = PRRR[24+n] = 1 - not outer shareable
249 */
250 ldr r5, =0xff0a81a8 @ PRRR
251 ldr r6, =0x40e040e0 @ NMRR
224 mcr p15, 0, r5, c10, c2, 0 @ write PRRR 252 mcr p15, 0, r5, c10, c2, 0 @ write PRRR
225 mcr p15, 0, r6, c10, c2, 1 @ write NMRR 253 mcr p15, 0, r6, c10, c2, 1 @ write NMRR
226 adr r5, v7_crval 254 adr r5, v7_crval