



PRRR & NMRR
/*
* Memory region attributes with SCTLR.TRE=1
*
* n = TEX[0],C,B
* TR = PRRR[2n+1:2n] - memory type
* IR = NMRR[2n+1:2n] - inner cacheable property
* OR = NMRR[2n+17:2n+16] - outer cacheable property
*
* n TR IR OR
* UNCACHED 000 00
* BUFFERABLE 001 10 00 00
* WRITETHROUGH 010 10 10 10
* WRITEBACK 011 10 11 11
* reserved 110
* WRITEALLOC 111 10 01 01
* DEV_SHARED 100 01
* DEV_NONSHARED 100 01
* DEV_WC 001 10
* DEV_CACHED 011 10
*
* Other attributes:
*
* DS0 = PRRR[16] = 0 - device shareable property
* DS1 = PRRR[17] = 1 - device shareable property
* NS0 = PRRR[18] = 0 - normal shareable property
* NS1 = PRRR[19] = 1 - normal shareable property
* NOS = PRRR[24+n] = 1 - not outer shareable
*/
.equ PRRR, 0xff0a81a8
.equ NMRR, 0x40e040e0
- PRRR
- <n>에서 n은 메모리 속성의 TEX[0], C, B에 해당한다.
- NOS<n>: 0=Outer Shareable, 1=Inner Shareable
- NS1: S=1 for Normal Memory. 0=not shareable, 1=shareable
- NS0: S=0 for Normal Memory. 0=not shareable, 1=shareable
- DS1: S=1 for Device Memory. 0=not shareable, 1=shareable
- DS0: S=0 for Device Memory. 0=not shareable, 1=shareable
- TR<n>: 메모리 속성을 위한 주 TEX 매핑
- 00=strongly-ordered, 01=device, 10=normal memory, 11=reserved

TEX[0], C, B Shareable Memory Property
================== =================== ====================
0 0 0 Outer Shareable Strongly-ordered
0 0 1 Outer Shareable Normal Memory
0 1 0 Outer Shareable Normal Memory
0 1 1 Outer Shareable Normal Memory
1 0 0 Outer Shareable Device
1 0 1 Outer Shareable Strongly-ordered
1 1 0 Outer Shareable Strongly-ordered
1 1 1 Outer Shareable Normal Memory
- NMRR
- <n>에서 n은 메모리 속성의 TEX[0], C, B에 해당한다.
- OR<n>: Outer Cacheable 속성
- 00=Non-cacheable, 01=WB, WA, 10=WT, no WA, 11=WB, no WA
- IR<n>: Inner Cacheable 속성
- 00=Non-cacheable, 01=WB, WA, 10=WT, no WA, 11=WB, no WA

TEX[0], C, B Outer Cache Inner Cache
================== =================== ====================
0 0 0 Non-Cacheable Non-Cacheable
0 0 1 Non-Cacheable Non-Cacheable
0 1 0 WT, no WA WT, no WA
0 1 1 WB, no WA WB, no WA
1 0 0 Non-Cacheable Non-Cacheable
1 0 1 Non-Cacheable Non-Cacheable
1 1 0 Non-Cacheable Non-Cacheable
1 1 1 WB, WA WB, WA
참고