aboutsummaryrefslogtreecommitdiff
path: root/common.S
AgeCommit message (Collapse)Author
2013-06-05Test all MPIDR affinity bitsMark Rutland
Currently we only test the Aff0 bits of the MPIDR to determine the 'primary' CPU. In multi-cluster systems, MPIDR.Aff{3,2,1} may not be zero, and there may by multiple CPUs where MPIDR.Aff0 is zero. In these systems we might determine that two cpus are the primary CPU. This patch adds a MPIDR_ID_BITS mask, and uses it in all cases we test the MPIDR, making this safe for multi-cluster systems. This doesn't bring full support for multi-cluster systems, however, as they may require additional hardware to be set up (e.g. CCI). Signed-off-by: Mark Rutland <mark.rutland@arm.com>
2013-06-05Add CURRENTEL_EL3 #defineMark Rutland
Add a CURRENTEL_EL3 #define to make tests against the value of CurrentEL clearer. Signed-off-by: Mark Rutland <mark.rutland@arm.com>
2013-06-05Move EL drop definition out of boot.SMark Rutland
PSCI needs to be able to drop cores to EL2 repeatedly, and it doesn't make sense to always throw CPUs through the original boot path. This patch changes the EL drop into a macro, and moves it to a common file that can be used by different boot protocol / service implementations. While doing so, the SPSR value used is split out to be more legible. Signed-off-by: Mark Rutland <mark.rutland@arm.com>