Re: [edk2-devel] [edk2-platforms PATCH V1 1/6] Platform/Intel: Modifying PCD class for some ACPI related PCDs

2022-07-07 Thread Oram, Isaac W
Reviewed-by: Isaac Oram 

-Original Message-
From: Sinha, Ankit  
Sent: Thursday, July 7, 2022 10:33 AM
To: devel@edk2.groups.io
Cc: Chiu, Chasel ; Desimone, Nathaniel L 
; Oram, Isaac W ; Dong, 
Eric 
Subject: [edk2-platforms PATCH V1 1/6] Platform/Intel: Modifying PCD class for 
some ACPI related PCDs

From: ankit13s 

Some PCDs related to FADT entries need to be defined as dynamic for boottime 
customization and update.

Cc: Chasel Chiu 
Cc: Nate DeSimone 
Cc: Isaac Oram 
Cc: Eric Dong 

Signed-off-by: Ankit Sinha 
---
 Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c   | 29 
++-
 Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.inf | 24 
+---
 Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec   | 30 
++--
 3 files changed, 44 insertions(+), 39 deletions(-)

diff --git a/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c 
b/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c
index 3c9f79de5c6c..c7e87cbd7d9d 100644
--- a/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c
+++ b/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c
@@ -1068,7 +1068,7 @@ InstallMcfgFromScratch (
  &McfgTable->Header,
  
EFI_ACPI_3_0_PCI_EXPRESS_MEMORY_MAPPED_CONFIGURATION_SPACE_BASE_ADDRESS_DESCRIPTION_TABLE_SIGNATURE,
  EFI_ACPI_MEMORY_MAPPED_CONFIGURATION_SPACE_ACCESS_TABLE_REVISION,
- 0
+ FixedPcdGet32 (PcdAcpiDefaultOemRevision)
  );
   if (EFI_ERROR (Status)) {
 return Status;
@@ -1195,6 +1195,7 @@ PlatformUpdateTables (
 FadtHeader->PreferredPmProfile= PcdGet8 
(PcdFadtPreferredPmProfile);
 FadtHeader->IaPcBootArch  = PcdGet16 
(PcdFadtIaPcBootArch);
 FadtHeader->Flags = PcdGet32 (PcdFadtFlags);
+FadtHeader->SmiCmd= PcdGet32 (PcdFadtSmiCmd);
 FadtHeader->AcpiEnable= PcdGet8 
(PcdAcpiEnableSwSmi);
 FadtHeader->AcpiDisable   = PcdGet8 
(PcdAcpiDisableSwSmi);
 FadtHeader->Pm1aEvtBlk= PcdGet16 
(PcdAcpiPm1AEventBlockAddress);
@@ -1209,6 +1210,7 @@ PlatformUpdateTables (
 FadtHeader->Gpe1Base  = PcdGet8 (PcdAcpiGpe1Base);
 
 FadtHeader->XPm1aEvtBlk.Address   = PcdGet16 
(PcdAcpiPm1AEventBlockAddress);
+FadtHeader->XPm1bEvtBlk.Address   = PcdGet16 
(PcdAcpiPm1BEventBlockAddress);
 FadtHeader->XPm1aCntBlk.Address   = PcdGet16 
(PcdAcpiPm1AControlBlockAddress);
 FadtHeader->XPm1bCntBlk.Address   = PcdGet16 
(PcdAcpiPm1BControlBlockAddress);
 FadtHeader->XPm2CntBlk.Address= PcdGet16 
(PcdAcpiPm2ControlBlockAddress);
@@ -1216,7 +1218,7 @@ PlatformUpdateTables (
 FadtHeader->XGpe0Blk.Address  = PcdGet16 
(PcdAcpiGpe0BlockAddress);
 FadtHeader->XGpe1Blk.Address  = PcdGet16 
(PcdAcpiGpe1BlockAddress);
 
-FadtHeader->ResetReg.AccessSize   = PcdGet8 
(PcdAcpiResetRegAccessSize);
+FadtHeader->ResetReg.AccessSize   = PcdGet8 
(PcdAcpiResetRegisterAccessSize);
 FadtHeader->XPm1aEvtBlk.AccessSize= PcdGet8 
(PcdAcpiXPm1aEvtBlkAccessSize);
 FadtHeader->XPm1bEvtBlk.AccessSize= PcdGet8 
(PcdAcpiXPm1bEvtBlkAccessSize);
 FadtHeader->XPm1aCntBlk.AccessSize= PcdGet8 
(PcdAcpiXPm1aCntBlkAccessSize);
@@ -1226,22 +1228,23 @@ PlatformUpdateTables (
 FadtHeader->XGpe0Blk.AccessSize   = PcdGet8 
(PcdAcpiXGpe0BlkAccessSize);
 FadtHeader->XGpe1Blk.AccessSize   = PcdGet8 
(PcdAcpiXGpe1BlkAccessSize);
 
-FadtHeader->SleepControlReg.AddressSpaceId= PcdGet8 
(PcdAcpiSleepControlRegAddressSpaceId);
-FadtHeader->SleepControlReg.RegisterBitOffset = PcdGet8 
(PcdAcpiSleepControlRegRegisterBitOffset);
-FadtHeader->SleepControlReg.AccessSize= PcdGet8 
(PcdAcpiSleepControlRegAccessSize);
-FadtHeader->SleepControlReg.Address   = PcdGet64 
(PcdAcpiSleepControlRegAddress);
-FadtHeader->SleepStatusReg.AddressSpaceId = PcdGet8 
(PcdAcpiSleepStatusRegAddressSpaceId);
-FadtHeader->SleepStatusReg.RegisterBitWidth   = PcdGet8 
(PcdAcpiSleepStatusRegRegisterBitWidth);
-FadtHeader->SleepStatusReg.RegisterBitOffset  = PcdGet8 
(PcdAcpiSleepStatusRegRegisterBitOffset);
-FadtHeader->SleepStatusReg.AccessSize = PcdGet8 
(PcdAcpiSleepStatusRegAccessSize);
-FadtHeader->SleepStatusReg.Address= PcdGet64 
(PcdAcpiSleepStatusRegAddress);
+FadtHeader->SleepControlReg.AddressSpaceId= PcdGet8 
(PcdAcpiSleepControlRegisterAddressSpaceId);
+FadtHeader->SleepControlReg.RegisterBitWidth  = PcdGet8 
(PcdAcpiSleepControlRegisterBitWidth);
+FadtHeader->SleepControlReg.RegisterBitOffset = PcdGet8 
(PcdAcpiSleepControlRegisterBitOffset);
+FadtHeader->SleepContr

[edk2-devel] [edk2-platforms PATCH V1 1/6] Platform/Intel: Modifying PCD class for some ACPI related PCDs

2022-07-07 Thread Sinha, Ankit
From: ankit13s 

Some PCDs related to FADT entries need to be defined as dynamic for
boottime customization and update.

Cc: Chasel Chiu 
Cc: Nate DeSimone 
Cc: Isaac Oram 
Cc: Eric Dong 

Signed-off-by: Ankit Sinha 
---
 Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c   | 29 
++-
 Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.inf | 24 
+---
 Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec   | 30 
++--
 3 files changed, 44 insertions(+), 39 deletions(-)

diff --git a/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c 
b/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c
index 3c9f79de5c6c..c7e87cbd7d9d 100644
--- a/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c
+++ b/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c
@@ -1068,7 +1068,7 @@ InstallMcfgFromScratch (
  &McfgTable->Header,
  
EFI_ACPI_3_0_PCI_EXPRESS_MEMORY_MAPPED_CONFIGURATION_SPACE_BASE_ADDRESS_DESCRIPTION_TABLE_SIGNATURE,
  EFI_ACPI_MEMORY_MAPPED_CONFIGURATION_SPACE_ACCESS_TABLE_REVISION,
- 0
+ FixedPcdGet32 (PcdAcpiDefaultOemRevision)
  );
   if (EFI_ERROR (Status)) {
 return Status;
@@ -1195,6 +1195,7 @@ PlatformUpdateTables (
 FadtHeader->PreferredPmProfile= PcdGet8 
(PcdFadtPreferredPmProfile);
 FadtHeader->IaPcBootArch  = PcdGet16 
(PcdFadtIaPcBootArch);
 FadtHeader->Flags = PcdGet32 (PcdFadtFlags);
+FadtHeader->SmiCmd= PcdGet32 (PcdFadtSmiCmd);
 FadtHeader->AcpiEnable= PcdGet8 
(PcdAcpiEnableSwSmi);
 FadtHeader->AcpiDisable   = PcdGet8 
(PcdAcpiDisableSwSmi);
 FadtHeader->Pm1aEvtBlk= PcdGet16 
(PcdAcpiPm1AEventBlockAddress);
@@ -1209,6 +1210,7 @@ PlatformUpdateTables (
 FadtHeader->Gpe1Base  = PcdGet8 (PcdAcpiGpe1Base);
 
 FadtHeader->XPm1aEvtBlk.Address   = PcdGet16 
(PcdAcpiPm1AEventBlockAddress);
+FadtHeader->XPm1bEvtBlk.Address   = PcdGet16 
(PcdAcpiPm1BEventBlockAddress);
 FadtHeader->XPm1aCntBlk.Address   = PcdGet16 
(PcdAcpiPm1AControlBlockAddress);
 FadtHeader->XPm1bCntBlk.Address   = PcdGet16 
(PcdAcpiPm1BControlBlockAddress);
 FadtHeader->XPm2CntBlk.Address= PcdGet16 
(PcdAcpiPm2ControlBlockAddress);
@@ -1216,7 +1218,7 @@ PlatformUpdateTables (
 FadtHeader->XGpe0Blk.Address  = PcdGet16 
(PcdAcpiGpe0BlockAddress);
 FadtHeader->XGpe1Blk.Address  = PcdGet16 
(PcdAcpiGpe1BlockAddress);
 
-FadtHeader->ResetReg.AccessSize   = PcdGet8 
(PcdAcpiResetRegAccessSize);
+FadtHeader->ResetReg.AccessSize   = PcdGet8 
(PcdAcpiResetRegisterAccessSize);
 FadtHeader->XPm1aEvtBlk.AccessSize= PcdGet8 
(PcdAcpiXPm1aEvtBlkAccessSize);
 FadtHeader->XPm1bEvtBlk.AccessSize= PcdGet8 
(PcdAcpiXPm1bEvtBlkAccessSize);
 FadtHeader->XPm1aCntBlk.AccessSize= PcdGet8 
(PcdAcpiXPm1aCntBlkAccessSize);
@@ -1226,22 +1228,23 @@ PlatformUpdateTables (
 FadtHeader->XGpe0Blk.AccessSize   = PcdGet8 
(PcdAcpiXGpe0BlkAccessSize);
 FadtHeader->XGpe1Blk.AccessSize   = PcdGet8 
(PcdAcpiXGpe1BlkAccessSize);
 
-FadtHeader->SleepControlReg.AddressSpaceId= PcdGet8 
(PcdAcpiSleepControlRegAddressSpaceId);
-FadtHeader->SleepControlReg.RegisterBitOffset = PcdGet8 
(PcdAcpiSleepControlRegRegisterBitOffset);
-FadtHeader->SleepControlReg.AccessSize= PcdGet8 
(PcdAcpiSleepControlRegAccessSize);
-FadtHeader->SleepControlReg.Address   = PcdGet64 
(PcdAcpiSleepControlRegAddress);
-FadtHeader->SleepStatusReg.AddressSpaceId = PcdGet8 
(PcdAcpiSleepStatusRegAddressSpaceId);
-FadtHeader->SleepStatusReg.RegisterBitWidth   = PcdGet8 
(PcdAcpiSleepStatusRegRegisterBitWidth);
-FadtHeader->SleepStatusReg.RegisterBitOffset  = PcdGet8 
(PcdAcpiSleepStatusRegRegisterBitOffset);
-FadtHeader->SleepStatusReg.AccessSize = PcdGet8 
(PcdAcpiSleepStatusRegAccessSize);
-FadtHeader->SleepStatusReg.Address= PcdGet64 
(PcdAcpiSleepStatusRegAddress);
+FadtHeader->SleepControlReg.AddressSpaceId= PcdGet8 
(PcdAcpiSleepControlRegisterAddressSpaceId);
+FadtHeader->SleepControlReg.RegisterBitWidth  = PcdGet8 
(PcdAcpiSleepControlRegisterBitWidth);
+FadtHeader->SleepControlReg.RegisterBitOffset = PcdGet8 
(PcdAcpiSleepControlRegisterBitOffset);
+FadtHeader->SleepControlReg.AccessSize= PcdGet8 
(PcdAcpiSleepControlRegisterAccessSize);
+FadtHeader->SleepControlReg.Address   = PcdGet64 
(PcdAcpiSleepControlRegisterAddress);
+FadtHeader->SleepStatusReg.AddressSpaceId = PcdGet8 
(PcdAcpiSleepStatusRegisterAddressSpaceId);
+FadtHeader->SleepStatusReg.