ArmPlatformPkg/ArmVExpressDxe: Identify the current platform

Add a function to ArmVExpressDxe to identify the current platform we
are running on. This includes ARM32 and AArch64 models and hardware.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Olivier Martin <olivier.martin@arm.com>



git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16931 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
Olivier Martin
2015-02-25 19:14:26 +00:00
committed by oliviermartin
parent df320b1084
commit dff720276a
11 changed files with 365 additions and 18 deletions

View File

@@ -12,10 +12,43 @@
**/
#include <Library/UefiLib.h>
#include <Library/DebugLib.h>
#include "ArmVExpressInternal.h"
#include <Library/ArmShellCmdLib.h>
//
// Description of the four hardware platforms :
// just the platform id for the time being.
// Platform ids are defined in ArmVExpressInternal.h for
// all "ArmVExpress-like" platforms (AARCH64 or ARM architecture,
// model or hardware platforms).
//
CONST ARM_VEXPRESS_PLATFORM ArmVExpressPlatforms[] = {
{ ARM_HW_A9x4 },
{ ARM_HW_A15x2_A7x3 },
{ ARM_HW_A15 },
{ ARM_HW_A5 },
{ ARM_FVP_VEXPRESS_UNKNOWN }
};
/**
Get information about the VExpress platform the firmware is running on.
@param[out] Platform Address where the pointer to the platform information
(type ARM_VEXPRESS_PLATFORM*) should be stored.
The returned pointer does not point to an allocated
memory area. Not used here.
@retval EFI_NOT_FOUND The platform was not recognised.
**/
EFI_STATUS
ArmVExpressGetPlatform (
OUT CONST ARM_VEXPRESS_PLATFORM** Platform
)
{
return EFI_NOT_FOUND;
}
EFI_STATUS
EFIAPI
ArmHwInitialise (