5.6.3.  Page table descriptors when using remapping

Table 5.3 shows the existing V6 TEX with CB encodings. This can be re-arranged to provide a mechanism to change the functions of the encodings TEX[0], C and B provide, using remap registers. TEX[2:1] are then freed up for software usage. This behavior is only enabled when CP15 register 1, bit [28] is set, so providing backward compatibility with ARMv6.

The result is that if CP15 Register 1, bit [28] is set, the effect is as shown in Table 5.6.

Table 5.6. New V6 TEX, CB encodings

Page table encodingsMemory typeInner cache attributes when mapped as NormalOuter cache attributes when mapped as Normal
TEXCB
XX000PRRR[1:0]NMRR[1:0]NMRR[17:16]
XX001PRRR[3:2]NMRR[3:2]NMRR[19:18]
XX010PRRR[5:4]NMRR[5:4]NMRR[21:20]
XX011PRRR[7:6]NMRR[7:6]NMRR[23:22]
XX100PRRR[9:8]NMRR[9:8]NMRR[25:24]
XX101PRRR[11:10]NMRR[11:10]NMRR[27:26]
XX110RESERVEDRESERVEDRESERVED
XX111PRRR[15:14]NMRR[15:14]NMRR[31:30]

Primary Memory Region Remap Registers (PRRR) and Normal Memory Region Remap Registers (NMRR) are defined in c10, Memory Region Remap Registers.

Table 5.7. Page attributes and memory types

Memory typeShareable attribute when S = 0Shareable attribute when S = 1
Strongly OrderedShareableShareable
DevicePRRR[16]PRRR[17]
NormalPRRR[18]PRRR[19]

To provide different encodings of the Outer cache attributes from the Inner cache attributes, the MMU remap register permits the cachable attributes to be remapped to different values.It is Unpredictable whether the TLB caches the effect of the TEX Remap on page tables. As a result, the TLB must be invalidated between changing the TEX Remap bit and relying on the effect of those changes taking place.

Copyright © 2005, 2006, 2008. All rights reserved.ARM DDI 0360F
Non-Confidential