From 1e40431699e68b72db472c06a12bbb512762937d Mon Sep 17 00:00:00 2001 From: oliviermartin Date: Wed, 2 May 2012 20:06:36 +0000 Subject: ArmPkg/ArmLib: Added ARM Cpu IDs Signed-off-by: Olivier Martin git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13257 6f19259b-4bc3-4df7-8a09-765794883524 --- ArmPkg/Include/Library/ArmLib.h | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'ArmPkg/Include') diff --git a/ArmPkg/Include/Library/ArmLib.h b/ArmPkg/Include/Library/ArmLib.h index 6bce7fb739..8eb1ebda52 100644 --- a/ArmPkg/Include/Library/ArmLib.h +++ b/ArmPkg/Include/Library/ArmLib.h @@ -77,6 +77,9 @@ typedef struct { typedef VOID (*CACHE_OPERATION)(VOID); typedef VOID (*LINE_OPERATION)(UINTN); +// +// ARM Processor Mode +// typedef enum { ARM_PROCESSOR_MODE_USER = 0x10, ARM_PROCESSOR_MODE_FIQ = 0x11, @@ -89,6 +92,22 @@ typedef enum { ARM_PROCESSOR_MODE_MASK = 0x1F } ARM_PROCESSOR_MODE; +// +// ARM Cpu IDs +// +#define ARM_CPU_IMPLEMENTER_MASK (0xFF << 24) +#define ARM_CPU_IMPLEMENTER_ARMLTD (0x41 << 24) +#define ARM_CPU_IMPLEMENTER_DEC (0x44 << 24) +#define ARM_CPU_IMPLEMENTER_MOT (0x4D << 24) +#define ARM_CPU_IMPLEMENTER_QUALCOMM (0x51 << 24) +#define ARM_CPU_IMPLEMENTER_MARVELL (0x56 << 24) + +#define ARM_CPU_PRIMARY_PART_MASK (0xFFF << 4) +#define ARM_CPU_PRIMARY_PART_CORTEXA5 (0xC05 << 4) +#define ARM_CPU_PRIMARY_PART_CORTEXA7 (0xC07 << 4) +#define ARM_CPU_PRIMARY_PART_CORTEXA8 (0xC08 << 4) +#define ARM_CPU_PRIMARY_PART_CORTEXA9 (0xC09 << 4) +#define ARM_CPU_PRIMARY_PART_CORTEXA15 (0xC0F << 4) // // ARM MP Core IDs -- cgit v1.2.3