ERRDEVAFF, Device Affinity Register
The ERRDEVAFF characteristics are:
Purpose
For a group of error records that has affinity with a single PE or a group of PEs, ERRDEVAFF is a copy of MPIDR_EL1 or part of MPIDR_EL1:
- If the group of error records has affinity with a single PE, the affinity level is 0, ERRDEVAFF reads the same value as MPIDR_EL1, and ERRDEVAFF.F0V reads-as-one to indicate affinity level 0.
- If the group of error records has affinity with a group of PEs, the affinity level is 1, 2, or 3, parts of ERRDEVAFF reads the same value as parts of MPIDR_EL1, and the rest of ERRDEVAFF indicates the level.
For example, if the group of PEs is a subset of the PEs at affinity level 1 then all of the following are true:
- All the PEs in the group have the same values in MPIDR_EL1.{Aff3,Aff2}, and these values are equal to ERRDEVAFF.{Aff3,Aff2}.
- ERRDEVAFF.Aff1 is nonzero and not 0x80, and ERRDEVAFF.{Aff0,F0V} read-as-zero, to indicate at least affinity level 1. The subset of PEs at level 1 that the group of error records has affinity with is indicated by the least-significant set bit in ERRDEVAFF.Aff1. In this example, if ERRDEVAFF.Aff1[2:0] is 0b100, then the group of error records has affinity with the up-to 8 PEs that have MPIDR_EL1.Aff1[7:3] == ERRDEVAFF.Aff1[7:3].
If RAS System Architecture v1.1 is not implemented, ERRDEVAFF can only describe a group of error records that is affine with a single PE or all the PEs at an affinity level.
Configuration
This register is present only when the group of error records has affinity with a PE or cluster of PEs. Otherwise, direct accesses to ERRDEVAFF are RES0.
ERRDEVAFF is implemented only as part of a memory-mapped group of error records.
Attributes
ERRDEVAFF is a 64-bit register.
Field descriptions
The ERRDEVAFF bit assignments are:
63 | 62 | 61 | 60 | 59 | 58 | 57 | 56 | 55 | 54 | 53 | 52 | 51 | 50 | 49 | 48 | 47 | 46 | 45 | 44 | 43 | 42 | 41 | 40 | 39 | 38 | 37 | 36 | 35 | 34 | 33 | 32 |
RES0 | Aff3 | ||||||||||||||||||||||||||||||
F0V | U | RES0 | MT | Aff2 | Aff1 | Aff0 | |||||||||||||||||||||||||
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Bits [63:40]
Reserved, RES0.
Aff3, bits [39:32]
PE affinity level 3. The MPIDR_EL1.Aff3 field, viewed from the highest Exception level of the associated PE or PEs.
F0V, bit [31]
Indicates that the ERRDEVAFF.Aff0 field is valid.
F0V | Meaning |
---|---|
0b0 |
ERRDEVAFF.Aff0 is not valid, and the PE affinity is above level 0 or a subset of level 0. |
0b1 |
ERRDEVAFF.Aff0 is valid, and the PE affinity is at level 0. |
U, bit [30]
When ERRDEVAFF.F0V == 1:
When ERRDEVAFF.F0V == 1:
Uniprocessor. The MPIDR_EL1.U bit, viewed from the highest Exception level of the associated PE.
Otherwise:
Otherwise:
Reserved, UNKNOWN.
Bits [29:25]
Reserved, RES0.
MT, bit [24]
When ERRDEVAFF.F0V == 1:
When ERRDEVAFF.F0V == 1:
Multithreaded. The MPIDR_EL1.MT bit, viewed from the highest Exception level of the associated PE.
Otherwise:
Otherwise:
Reserved, UNKNOWN.
Aff2, bits [23:16]
When affine with a PE or PEs at affinity level 2 or below:
When affine with a PE or PEs at affinity level 2 or below:
PE affinity level 2. The MPIDR_EL1.Aff2 field, viewed from the highest Exception level of the associated PE or PEs.
When affine with a sub-set of PEs at affinity level 2:
When affine with a sub-set of PEs at affinity level 2:
PE affinity level 2. Defines part of the MPIDR_EL1.Aff2 field, viewed from the highest Exception level of the associated PEs.
Aff2 | Meaning |
---|---|
0bxxxxxxx1 |
ERRDEVAFF.Aff2[7:1] is the value of MPIDR_EL1.Aff2[7:1], viewed from the highest Exception level of the associated PEs. |
0bxxxxxx10 |
ERRDEVAFF.Aff2[7:2] is the value of MPIDR_EL1.Aff2[7:2], viewed from the highest Exception level of the associated PEs. |
0bxxxxx100 |
ERRDEVAFF.Aff2[7:3] is the value of MPIDR_EL1.Aff2[7:3], viewed from the highest Exception level of the associated PEs. |
0bxxxx1000 |
ERRDEVAFF.Aff2[7:4] is the value of MPIDR_EL1.Aff2[7:4], viewed from the highest Exception level of the associated PEs. |
0bxxx10000 |
ERRDEVAFF.Aff2[7:5] is the value of MPIDR_EL1.Aff2[7:5], viewed from the highest Exception level of the associated PEs. |
0bxx100000 |
ERRDEVAFF.Aff2[7:6] is the value of MPIDR_EL1.Aff2[7:6], viewed from the highest Exception level of the associated PEs. |
0bx1000000 |
ERRDEVAFF.Aff2[7] is the value of MPIDR_EL1.Aff2[7], viewed from the highest Exception level of the associated PEs. |
Otherwise:
Otherwise:
PE affinity level 2. Indicates whether the PE affinity is at level 3.
Aff2 | Meaning |
---|---|
0x80 |
PE affinity is at level 3. |
All other values are reserved.
Aff1, bits [15:8]
When affine with a PE or PEs at affinity level 1 or below:
When affine with a PE or PEs at affinity level 1 or below:
PE affinity level 1. The MPIDR_EL1.Aff1 field, viewed from the highest Exception level of the associated PE or PEs.
When affine with a sub-set of PEs at affinity level 1:
When affine with a sub-set of PEs at affinity level 1:
PE affinity level 1. Defines part of the MPIDR_EL1.Aff1 field, viewed from the highest Exception level of the associated PEs.
Aff1 | Meaning |
---|---|
0bxxxxxxx1 |
ERRDEVAFF.Aff1[7:1] is the value of MPIDR_EL1.Aff1[7:1], viewed from the highest Exception level of the associated PEs. |
0bxxxxxx10 |
ERRDEVAFF.Aff1[7:2] is the value of MPIDR_EL1.Aff1[7:2], viewed from the highest Exception level of the associated PEs. |
0bxxxxx100 |
ERRDEVAFF.Aff1[7:3] is the value of MPIDR_EL1.Aff1[7:3], viewed from the highest Exception level of the associated PEs. |
0bxxxx1000 |
ERRDEVAFF.Aff1[7:4] is the value of MPIDR_EL1.Aff1[7:4], viewed from the highest Exception level of the associated PEs. |
0bxxx10000 |
ERRDEVAFF.Aff1[7:5] is the value of MPIDR_EL1.Aff1[7:5], viewed from the highest Exception level of the associated PEs. |
0bxx100000 |
ERRDEVAFF.Aff1[7:6] is the value of MPIDR_EL1.Aff1[7:6], viewed from the highest Exception level of the associated PEs. |
0bx1000000 |
ERRDEVAFF.Aff1[7] is the value of MPIDR_EL1.Aff1[7], viewed from the highest Exception level of the associated PEs. |
Otherwise:
Otherwise:
PE affinity level 1. Indicates whether the PE affinity is at level 2.
Aff1 | Meaning |
---|---|
0x00 |
PE affinity is above level 2 or a subset of level 2. |
0x80 |
PE affinity is at level 2. |
Aff0, bits [7:0]
When affine with a PE at affinity level 0:
When affine with a PE at affinity level 0:
PE affinity level 0. The MPIDR_EL1.Aff0 field, viewed from the highest Exception level of the associated PE.
When affine with a sub-set of PEs at affinity level 0:
When affine with a sub-set of PEs at affinity level 0:
PE affinity level 0. Defines part of the MPIDR_EL1.Aff0 field, viewed from the highest Exception level of the associated PEs.
Aff0 | Meaning |
---|---|
0bxxxxxxx1 |
ERRDEVAFF.Aff0[7:1] is the value of MPIDR_EL1.Aff0[7:1], viewed from the highest Exception level of the associated PEs. |
0bxxxxxx10 |
ERRDEVAFF.Aff0[7:2] is the value of MPIDR_EL1.Aff0[7:2], viewed from the highest Exception level of the associated PEs. |
0bxxxxx100 |
ERRDEVAFF.Aff0[7:3] is the value of MPIDR_EL1.Aff0[7:3], viewed from the highest Exception level of the associated PEs. |
0bxxxx1000 |
ERRDEVAFF.Aff0[7:4] is the value of MPIDR_EL1.Aff0[7:4], viewed from the highest Exception level of the associated PEs. |
0bxxx10000 |
ERRDEVAFF.Aff0[7:5] is the value of MPIDR_EL1.Aff0[7:5], viewed from the highest Exception level of the associated PEs. |
0bxx100000 |
ERRDEVAFF.Aff0[7:6] is the value of MPIDR_EL1.Aff0[7:6], viewed from the highest Exception level of the associated PEs. |
0bx1000000 |
ERRDEVAFF.Aff0[7] is the value of MPIDR_EL1.Aff0[7], viewed from the highest Exception level of the associated PEs. |
Otherwise:
Otherwise:
PE affinity level 0. Indicates whether the PE affinity is at level 1.
Aff0 | Meaning |
---|---|
0x00 |
PE affinity is above level 1 or a subset of level 1. |
0x80 |
PE affinity is at level 1. |
Accessing the ERRDEVAFF
ERRDEVAFF can be accessed through the memory-mapped interfaces:
Component | Offset |
---|---|
RAS | 0xFA8 |
Accesses on this interface are RO.