Skip to content

Commit

Permalink
AmdPlatformPkg: Adds FACS config information
Browse files Browse the repository at this point in the history
Adds FACS configruation manager information.
Update Get/Set configuration manager function to
handle FACS.

Cc: Abner Chang <[email protected]>
Cc: Paul Grimes <[email protected]>
Signed-off-by: Abdul Lateef Attar <[email protected]>
  • Loading branch information
Abdul Lateef Attar authored and abdattar committed Feb 4, 2025
1 parent ff29897 commit fa92108
Show file tree
Hide file tree
Showing 3 changed files with 34 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,13 @@ EDKII_PLATFORM_REPOSITORY_INFO mAmdPlatformRepositoryInfo = {
},
/// ACPI Table List
{
/// FACS Table
{
EFI_ACPI_6_5_FIRMWARE_ACPI_CONTROL_STRUCTURE_SIGNATURE,
EFI_ACPI_6_5_FIRMWARE_ACPI_CONTROL_STRUCTURE_VERSION,
CREATE_STD_ACPI_TABLE_GEN_ID (EStdAcpiTableIdFacs),
NULL
},
/// FADT Table
{
EFI_ACPI_6_3_FIXED_ACPI_DESCRIPTION_TABLE_SIGNATURE,
Expand Down Expand Up @@ -81,6 +88,13 @@ EDKII_PLATFORM_REPOSITORY_INFO mAmdPlatformRepositoryInfo = {
},
/// Current ACPI Table Count
PLAT_ACPI_TABLE_COUNT,
/// FACS info
{
0,
0,
0,
0
},
/// PmProfile
{
EFI_ACPI_6_5_PM_PROFILE_ENTERPRISE_SERVER
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -648,6 +648,15 @@ GetX64NameSpaceObject (
CmObject
);
break;
case EX64ObjFacsInfo:
Status = HandleCmObject (
CmObjectId,
&PlatformRepo->FacsInfo,
sizeof (PlatformRepo->FacsInfo),
1,
CmObject
);
break;
default:
{
Status = EFI_NOT_FOUND;
Expand Down Expand Up @@ -695,6 +704,15 @@ SetX64NameSpaceObject (
PlatformRepo = This->PlatRepoInfo;

switch (GET_CM_OBJECT_ID (CmObjectId)) {
case EX64ObjFacsInfo:
Status = SetHandleCmObject (
CmObjectId,
&PlatformRepo->FacsInfo,
sizeof (PlatformRepo->FacsInfo),
1,
CmObject
);
break;
case EX64ObjFadtSciInterrupt:
Status = SetHandleCmObject (
CmObjectId,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@

/** The number of ACPI tables to install
*/
#define PLAT_ACPI_TABLE_COUNT 7
#define PLAT_ACPI_TABLE_COUNT 8

/** The maximum number of ACPI tables to install
*/
Expand All @@ -45,6 +45,7 @@ typedef struct PlatformRepositoryInfo {
/// List of ACPI tables
CM_STD_OBJ_ACPI_TABLE_INFO CmAcpiTableList[MAX_PLAT_ACPI_TABLE_COUNT];
UINTN CurrentAcpiTableCount;
CM_X64_FACS_INFO FacsInfo;
CM_ARCH_COMMON_POWER_MANAGEMENT_PROFILE_INFO PowerManagementProfile;
CM_ARCH_COMMON_HYPERVISOR_VENDOR_ID HypervisorVendorId;
CM_ARCH_COMMON_FIXED_FEATURE_FLAGS FixedFeatureFlags;
Expand Down

0 comments on commit fa92108

Please sign in to comment.