[edk2-devel] [edk2-platforms][PATCH V1 1/1] Maintainers.txt: Remove Intel maintainer
Removes Michael Kubacki as an Intel maintainer. Cc: Prince Agyeman Cc: Sai Chaganty Cc: Chasel Chiu Cc: Nate DeSimone Cc: Liming Gao Signed-off-by: Michael Kubacki --- Maintainers.txt | 6 -- 1 file changed, 6 deletions(-) diff --git a/Maintainers.txt b/Maintainers.txt index e97ea5b343..c1b9212496 100644 --- a/Maintainers.txt +++ b/Maintainers.txt @@ -126,7 +126,6 @@ R: Ard Biesheuvel Features/Intel F: Features/Intel/ -M: Michael Kubacki M: Sai Chaganty R: Liming Gao @@ -158,7 +157,6 @@ R: Liming Gao Platform/Intel/KabylakeOpenBoardPkg F: Platform/Intel/KabylakeOpenBoardPkg/ M: Chasel Chiu -M: Michael Kubacki M: Nate DeSimone Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3 @@ -167,7 +165,6 @@ R: Jeremy Soller Platform/Intel/MinPlatformPkg F: Platform/Intel/MinPlatformPkg/ -M: Michael Kubacki M: Chasel Chiu M: Nate DeSimone R: Liming Gao @@ -175,7 +172,6 @@ R: Liming Gao Platform/Intel/WhiskeylakeOpenBoardPkg F: Platform/Intel/WhiskeylakeOpenBoardPkg/ M: Chasel Chiu -M: Michael Kubacki M: Nate DeSimone Platform/Intel/SimicsOpenBoardPkg @@ -205,13 +201,11 @@ M: Yi Qian Silicon/Intel/CoffeelakeSiliconPkg F: Silicon/Intel/CoffeelakeSiliconPkg/ M: Chasel Chiu -M: Michael Kubacki M: Sai Chaganty Silicon/Intel/KabylakeSiliconPkg F: Silicon/Intel/KabylakeSiliconPkg/ M: Chasel Chiu -M: Michael Kubacki M: Sai Chaganty Silicon/Intel/SimicsX58SktPkg -- 2.16.2.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#53591): https://edk2.groups.io/g/devel/message/53591 Mute This Topic: https://groups.io/mt/70417419/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [edk2-platforms] [PATCH] BoardModulePkg: Fix ECC Coding Style Issues
The copyright dates needed to be updated to 2020. I updated those locally before being pushed. Reviewed-by: Michael Kubacki Thanks, Michael > -Original Message- > From: Agyeman, Prince > Sent: Tuesday, January 14, 2020 9:28 AM > To: devel@edk2.groups.io > Cc: Zhang, Shenglei ; Chiu, Chasel > ; Desimone, Nathaniel L > ; Kubacki, Michael A > > Subject: [edk2-platforms] [PATCH] BoardModulePkg: Fix ECC Coding Style > Issues > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2453 > > Fixed coding style issues as reported by the ECC tool > > Cc: Shenglei Zhang > Cc: Chasel Chiu > Cc: Nate DeSimone > Cc: Michael Kubacki > > Signed-off-by: Prince Agyeman > --- > .../BoardModulePkg/LegacySioDxe/ComponentName.h | 5 + > .../BoardModulePkg/LegacySioDxe/LegacySioDxe.inf | 2 ++ > .../Intel/BoardModulePkg/LegacySioDxe/SioChip.c | 5 +++-- > .../Intel/BoardModulePkg/LegacySioDxe/SioDriver.c | 15 --- > .../Library/BdsPs2KbcLib/BdsPs2KbcLib.c | 6 +++--- > .../Library/BdsPs2KbcLib/BdsPs2KbcLib.h | 4 ++-- > 6 files changed, 23 insertions(+), 14 deletions(-) > > diff --git > a/Platform/Intel/BoardModulePkg/LegacySioDxe/ComponentName.h > b/Platform/Intel/BoardModulePkg/LegacySioDxe/ComponentName.h > index 85ca348701..91bc245f3a 100644 > --- a/Platform/Intel/BoardModulePkg/LegacySioDxe/ComponentName.h > +++ b/Platform/Intel/BoardModulePkg/LegacySioDxe/ComponentName.h > @@ -6,6 +6,9 @@ >SPDX-License-Identifier: BSD-2-Clause-Patent **/ > > +#ifndef _LEGACY_SIO_DXE_COMPONENT_NAME_H_ #define > +_LEGACY_SIO_DXE_COMPONENT_NAME_H_ > + > /** >Retrieves a Unicode string that is the user-readable name of the EFI > Driver. > > @@ -85,3 +88,5 @@ SioComponentNameGetControllerName ( >IN CHAR8 *Language, >OUT CHAR16**ControllerName >); > + > +#endif > diff --git a/Platform/Intel/BoardModulePkg/LegacySioDxe/LegacySioDxe.inf > b/Platform/Intel/BoardModulePkg/LegacySioDxe/LegacySioDxe.inf > index 1d7cd92604..698d406450 100644 > --- a/Platform/Intel/BoardModulePkg/LegacySioDxe/LegacySioDxe.inf > +++ b/Platform/Intel/BoardModulePkg/LegacySioDxe/LegacySioDxe.inf > @@ -44,6 +44,8 @@ >SioDriver.c >SioDriver.h >ComponentName.c > + ComponentName.h > + Register.h > > [Pcd] >gBoardModulePkgTokenSpaceGuid.PcdPs2KbMsEnable > diff --git a/Platform/Intel/BoardModulePkg/LegacySioDxe/SioChip.c > b/Platform/Intel/BoardModulePkg/LegacySioDxe/SioChip.c > index b9a84ca51c..846dddf739 100644 > --- a/Platform/Intel/BoardModulePkg/LegacySioDxe/SioChip.c > +++ b/Platform/Intel/BoardModulePkg/LegacySioDxe/SioChip.c > @@ -145,7 +145,7 @@ DEVICE_INFOmDeviceInfo[] = { > > > /** > - Gets the number of devices in Table of SIO Controllers mDeviceInfo > + Gets the number of devices in Table of SIO Controllers mDeviceInfo. > >@retval Number of enabled devices in Table of SIO Controllers. > **/ > @@ -153,7 +153,8 @@ UINTN > EFIAPI > GetDeviceCount ( >VOID > -){ > + ) > +{ > UINTNCount; > // Get mDeviceInfo item count > // -1 to account for for the end device info diff --git > a/Platform/Intel/BoardModulePkg/LegacySioDxe/SioDriver.c > b/Platform/Intel/BoardModulePkg/LegacySioDxe/SioDriver.c > index 5bfdc94681..484c53e953 100644 > --- a/Platform/Intel/BoardModulePkg/LegacySioDxe/SioDriver.c > +++ b/Platform/Intel/BoardModulePkg/LegacySioDxe/SioDriver.c > @@ -118,13 +118,14 @@ BOOLEAN > EFIAPI > SioDeviceEnabled ( >IN SIO_PCI_ISA_BRIDGE_DEVICE_INFO *CurrentDevice -){ > -SIO_PCI_ISA_BRIDGE_DEVICE_INFO *Device = \ > - (SIO_PCI_ISA_BRIDGE_DEVICE_INFO *) FixedPcdGetPtr > (PcdSuperIoPciIsaBridgeDevice); > -if(CompareMem (Device, CurrentDevice, sizeof > (SIO_PCI_ISA_BRIDGE_DEVICE_INFO)) == 0) { > - return TRUE; > -} > -return FALSE; > + ) > +{ > + SIO_PCI_ISA_BRIDGE_DEVICE_INFO *Device; > + Device = (SIO_PCI_ISA_BRIDGE_DEVICE_INFO *) FixedPcdGetPtr > +(PcdSuperIoPciIsaBridgeDevice); > + if(CompareMem (Device, CurrentDevice, sizeof > (SIO_PCI_ISA_BRIDGE_DEVICE_INFO)) == 0) { > +return TRUE; > + } > + return FALSE; > } > > /** > diff --git > a/Platform/Intel/BoardModulePkg/Library/BdsPs2KbcLib/BdsPs2KbcLib.c > b/Platform/Intel/BoardModulePkg/Library/BdsPs2KbcLib/BdsPs2KbcLib.c > index eff10bddb4..0cf4c4d262 100644 > --- a/Platform/Intel/BoardModulePkg/Library/BdsPs2KbcLib/BdsPs2KbcLib.c > +++ > b/Platform/Intel/BoardModulePkg/Library/BdsPs2KbcLib/BdsPs2KbcLib.c > @@ -65,7 +65,7 @@ DetectPs2Keyboard ( > MicroSecondDelay (30); >}
[edk2-devel] [tianocore-docs][PATCH V1 1/1] edk2-MinimumPlatformSpecification: Advanced Feature section updates
This change makes the following updates to Section 8 - Stage VI Advanced Feature Selection: * Remove the advanced feature template * This is no longer provided in the specification but maintained in the Readme.md file in edk2-platforms/Features/Intel/Readme.md * Remove the following advanced feature examples: 1. Network stack feature 2. Signed capsule update feature * These examples are maintained in edk2-platforms/Features/Intel * Update the Advanced Feature description in Section 8.1 to align with the description in edk2-platforms/Features/Intel/Readme.md Cc: Sai Chaganty Cc: Nate DeSimone Signed-off-by: Michael Kubacki --- 8_stage_6_advanced_feature_selection/85_advanced_feature_template.md | 54 8_stage_6_advanced_feature_selection/86_network_stack_feature_example.md | 136 --- 8_stage_6_advanced_feature_selection/87_signed_capsule_update_enabling_example.md | 137 8_stage_6_advanced_feature_selection/README.md | 113 SUMMARY.md | 3 - 5 files changed, 25 insertions(+), 418 deletions(-) diff --git a/8_stage_6_advanced_feature_selection/85_advanced_feature_template.md b/8_stage_6_advanced_feature_selection/85_advanced_feature_template.md deleted file mode 100644 index 428c731..000 --- a/8_stage_6_advanced_feature_selection/85_advanced_feature_template.md +++ /dev/null @@ -1,54 +0,0 @@ - - -## 8.5 Advanced Feature Template - -Define an advanced feature using the following template. The template is -roughly equivalent to preceding stage description sections within this -document, with the addition of common optimization opportunities. This -template should be included in feature review and placed in the feature -root directory as README.md. - -| `Overview` | `An overview of the feature` | -| -- | | -| **Firmware Volumes** | The binary containers needed for the feature. | -| **Modules**| The EDK II component binaries and static libraries required. | -| **Required Functions** | Functions that are useful for understanding, porting, or debugging the feature and how these key functions are integrated into the Stage I-V required functions. | -| **Configuration** | The configurable parameters for a given feature. | -| **Data Flows** | The architecturally defined data structures and flows for a given feature. | -| **Control Flows** | Key control flows for the feature. | -| **Build Files**| The DSC/FDF for integrating the feature. | -| **Test Point Results** | The test that can verify porting is complete for the feature. | -| **Functional Exit Criteria** | The testable functionality for the feature. | -| **Feature Enabling Checklist** | The required activities to achieve desired functionality for the feature. | -| **Common Optimizations** | Common size or performance tuning options for this feature. | - -## Table 70 Advanced Feature Template diff --git a/8_stage_6_advanced_feature_selection/86_network_stack_feature_example.md b/8_stage_6_advanced_feature_selection/86_network_stack_feature_example.md deleted file mode 100644 index a4d6ddd..000 --- a/8_stage_6_advanced_feature_selection/86_network_stack_feature_example.md +++ /dev/null @@ -1,136 +0,0 @@ - - -## 8.6 Network Stack Feature Example -*** -**Note:** The network stack example is presently incomplete and -no
[edk2-devel] [tianocore-docs][PATCH V1 1/1] edk2-MinimumPlatformSpecification: Add FvAdvancedPreMemory
Adds FvAdvancedPreMemory as a Stage VI firmware volume. Cc: Sai Chaganty Cc: Nate DeSimone Signed-off-by: Michael Kubacki --- 8_stage_6_advanced_feature_selection/82_firmware_volumes.md | 27 ++- 8_stage_6_advanced_feature_selection/83_configuration.md| 12 +- appendix_a_full_maps/a1_firmware_volume_layout.md | 202 ++-- 3 files changed, 126 insertions(+), 115 deletions(-) diff --git a/8_stage_6_advanced_feature_selection/82_firmware_volumes.md b/8_stage_6_advanced_feature_selection/82_firmware_volumes.md index 91cce9c..5d7608d 100644 --- a/8_stage_6_advanced_feature_selection/82_firmware_volumes.md +++ b/8_stage_6_advanced_feature_selection/82_firmware_volumes.md @@ -1,7 +1,7 @@
[edk2-devel] [edk2-platforms][PATCH V1 1/1] Features/Intel: Add a Performance Impact section to Readme.md files
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=2417 Performance impact is an important consideration for feature integration. This new section captures the general expectation for overall boot performance impact due to using an advanced feature. Cc: Dandan Bi Cc: Sai Chaganty Cc: Chasel Chiu Cc: Nate DeSimone Cc: Eric Dong Cc: Liming Gao Signed-off-by: Michael Kubacki --- Features/Intel/Debugging/AcpiDebugFeaturePkg/Readme.md | 8 Features/Intel/Debugging/Usb3DebugFeaturePkg/Readme.md | 8 Features/Intel/Network/NetworkFeaturePkg/Readme.md | 8 Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Readme.md | 8 Features/Intel/PowerManagement/S3FeaturePkg/Readme.md | 8 Features/Intel/SystemInformation/SmbiosFeaturePkg/Readme.md | 8 Features/Intel/TemplateFeaturePkg/Readme.md | 8 Features/Intel/UserInterface/UserAuthFeaturePkg/Readme.md | 8 8 files changed, 64 insertions(+) diff --git a/Features/Intel/Debugging/AcpiDebugFeaturePkg/Readme.md b/Features/Intel/Debugging/AcpiDebugFeaturePkg/Readme.md index bbd7675c11..9868d6d816 100644 --- a/Features/Intel/Debugging/AcpiDebugFeaturePkg/Readme.md +++ b/Features/Intel/Debugging/AcpiDebugFeaturePkg/Readme.md @@ -115,6 +115,14 @@ functional on their board. *_TODO_* An ordered list of required activities to achieve desired functionality for the feature. +## Performance Impact +A general expectation for the impact on overall boot performance due to using this feature. + +This section is expected to provide guidance on: +* How to estimate performance impact due to the feature +* How to measure performance impact of the feature +* How to manage performance impact of the feature + ## Common Optimizations *_TODO_* Common size or performance tuning options for this feature. diff --git a/Features/Intel/Debugging/Usb3DebugFeaturePkg/Readme.md b/Features/Intel/Debugging/Usb3DebugFeaturePkg/Readme.md index a6b7cfc363..dc92f108ff 100644 --- a/Features/Intel/Debugging/Usb3DebugFeaturePkg/Readme.md +++ b/Features/Intel/Debugging/Usb3DebugFeaturePkg/Readme.md @@ -93,6 +93,14 @@ functional on their board. *_TODO_* An ordered list of required activities to achieve desired functionality for the feature. +## Performance Impact +A general expectation for the impact on overall boot performance due to using this feature. + +This section is expected to provide guidance on: +* How to estimate performance impact due to the feature +* How to measure performance impact of the feature +* How to manage performance impact of the feature + ## Common Optimizations *_TODO_* Common size or performance tuning options for this feature. diff --git a/Features/Intel/Network/NetworkFeaturePkg/Readme.md b/Features/Intel/Network/NetworkFeaturePkg/Readme.md index 6c670b005c..af59fc427a 100644 --- a/Features/Intel/Network/NetworkFeaturePkg/Readme.md +++ b/Features/Intel/Network/NetworkFeaturePkg/Readme.md @@ -93,6 +93,14 @@ functional on their board. *_TODO_* An ordered list of required activities to achieve desired functionality for the feature. +## Performance Impact +A general expectation for the impact on overall boot performance due to using this feature. + +This section is expected to provide guidance on: +* How to estimate performance impact due to the feature +* How to measure performance impact of the feature +* How to manage performance impact of the feature + ## Common Optimizations *_TODO_* Common size or performance tuning options for this feature. diff --git a/Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Readme.md b/Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Readme.md index e70f1e850b..1af5b0cfda 100644 --- a/Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Readme.md +++ b/Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Readme.md @@ -82,6 +82,14 @@ functional on their board. *_TODO_* An ordered list of required activities to achieve desired functionality for the feature. +## Performance Impact +A general expectation for the impact on overall boot performance due to using this feature. + +This section is expected to provide guidance on: +* How to estimate performance impact due to the feature +* How to measure performance impact of the feature +* How to manage performance impact of the feature + ## Common Optimizations *_TODO_* Common size or performance tuning options for this feature. diff --git a/Features/Intel/PowerManagement/S3FeaturePkg/Readme.md b/Features/Intel/PowerManagement/S3FeaturePkg/Readme.md index f9b60b3f0c..95ce2ddc15 100644 --- a/Features/Intel/PowerManagement/S3FeaturePkg/Readme.md +++ b/Features/Intel/PowerManagement/S3FeaturePkg/Readme.md @@ -87,6 +87,14 @@ functional on their board. *_TODO_* An ordered list of required activities to achieve desired functionality for the feature. +## Performance Impact +A general expectation for the impact on overall boot performance due to using this
Re: [edk2-devel] [PATCH V1 1/1] MdeModulePkg/Variable: Fix VarErrorFlag RT cache offset calculation
Since I don't have a strong opinion either, I won't make any changes to V1 at this time. Thanks, Michael > -Original Message- > From: Wang, Jian J > Sent: Tuesday, January 14, 2020 8:09 PM > To: Kubacki, Michael A ; > devel@edk2.groups.io > Cc: Gao, Liming ; Kinney, Michael D > ; Michael Turner > ; Wu, Hao A > Subject: RE: [edk2-devel] [PATCH V1 1/1] MdeModulePkg/Variable: Fix > VarErrorFlag RT cache offset calculation > > Mike, > > Thanks for explaining. You're right that the error is rare case and it won't > cause big problem, and NonVolatileLastVariableOffset will be approaching > the whole FV size after some time. I don't have strong opinion. Both work for > me. > > Regards, > Jian > > > -Original Message- > > From: Kubacki, Michael A > > Sent: Wednesday, January 15, 2020 11:53 AM > > To: Wang, Jian J ; devel@edk2.groups.io > > Cc: Gao, Liming ; Kinney, Michael D > > ; Michael Turner > > ; Wu, Hao A > > Subject: RE: [edk2-devel] [PATCH V1 1/1] MdeModulePkg/Variable: Fix > > VarErrorFlag RT cache offset calculation > > > > Hi Jian, > > > > I considered that but these are the reasons I settled on the approach in > patch V1. > > > > 1. With the variable store filled, the length of > > mVariableModuleGlobal- > > >NonVolatileLastVariableOffset will only marginally be a smaller value > > >than > > mNvVariableCache->Size (since variable writes grow the store for SPI > > mNvVariableCache->flash wear > > leveling). In this case, it will be ~CommonRuntimeVariableSpace which > > is usually a major portion of the variable store size anyway. > > 2. Since mVariableModuleGlobal->NonVolatileLastVariableOffset is a > > global moving value that is more frequently manipulated than the fixed > > variable store size, depending upon it increases the likelihood it > > will be set to an invalid value somewhere else. > > 3. This is a relatively rare case (an error condition) and the memory > > copy is within DRAM for variable stores that are typically ~128KB - ~512KB. > > > > To reduce the copy size, the Offset parameter can be "(UINTN) > > VarErrFlag - > > (UINTN) mNvVariableCache" (just remove the unnecessary addition of > > (UINTN) > > mVariableModuleGlobal->VariableGlobal.NonVolatileVariableBase) with > > mVariableModuleGlobal->size > > "sizeof (TempFlag)". How about this in a V2? > > > > Thanks, > > Michael > > > > > -Original Message- > > > From: Wang, Jian J > > > Sent: Monday, January 13, 2020 10:43 PM > > > To: devel@edk2.groups.io; Kubacki, Michael A > > > > > > Cc: Gao, Liming ; Kinney, Michael D > > > ; Michael Turner > > > ; Wu, Hao A > > > Subject: RE: [edk2-devel] [PATCH V1 1/1] MdeModulePkg/Variable: Fix > > > VarErrorFlag RT cache offset calculation > > > > > > Michael, > > > > > > I'm not sure sync-ing whole variable cache memory is an efficient > operation. > > > What about using > > > mVariableModuleGlobal->NonVolatileLastVariableOffset > > > as Length parameter? > > > > > >Status = SynchronizeRuntimeVariableCache ( > > > > > > > >VariableGlobal.VariableRuntimeCacheContext.VariableRuntimeNvCache, > > >0, > > >mVariableModuleGlobal->NonVolatileLastVariableOffset > > >); > > > > > > Regards, > > > Jian > > > > > > > -Original Message- > > > > From: devel@edk2.groups.io On Behalf Of > > > > Kubacki, Michael A > > > > Sent: Tuesday, January 14, 2020 7:19 AM > > > > To: devel@edk2.groups.io > > > > Cc: Gao, Liming ; Kinney, Michael D > > > > ; Michael Turner > > > > ; Wang, Jian J > > > > ; Wu, Hao A > > > > Subject: [edk2-devel] [PATCH V1 1/1] MdeModulePkg/Variable: Fix > > > > VarErrorFlag RT cache offset calculation > > > > > > > > REF:https://bugzilla.tianocore.org/show_bug.cgi?id=2457 > > > > > > > > This commit fixes an offset calculation that is used to write the > > > > VarErrorFlag UEFI variable to the UEFI variable runtime cache. > > > > > > > > Currently a physical address is used instead of an offset. This > > > > commit changes the offset to zero with a length of the entire > > > > non-volatile variable store so the
Re: [edk2-devel] [PATCH V1 1/1] MdeModulePkg/Variable: Fix VarErrorFlag RT cache offset calculation
Hi Jian, I considered that but these are the reasons I settled on the approach in patch V1. 1. With the variable store filled, the length of mVariableModuleGlobal->NonVolatileLastVariableOffset will only marginally be a smaller value than mNvVariableCache->Size (since variable writes grow the store for SPI flash wear leveling). In this case, it will be ~CommonRuntimeVariableSpace which is usually a major portion of the variable store size anyway. 2. Since mVariableModuleGlobal->NonVolatileLastVariableOffset is a global moving value that is more frequently manipulated than the fixed variable store size, depending upon it increases the likelihood it will be set to an invalid value somewhere else. 3. This is a relatively rare case (an error condition) and the memory copy is within DRAM for variable stores that are typically ~128KB - ~512KB. To reduce the copy size, the Offset parameter can be "(UINTN) VarErrFlag - (UINTN) mNvVariableCache" (just remove the unnecessary addition of (UINTN) mVariableModuleGlobal->VariableGlobal.NonVolatileVariableBase) with size "sizeof (TempFlag)". How about this in a V2? Thanks, Michael > -Original Message- > From: Wang, Jian J > Sent: Monday, January 13, 2020 10:43 PM > To: devel@edk2.groups.io; Kubacki, Michael A > > Cc: Gao, Liming ; Kinney, Michael D > ; Michael Turner > ; Wu, Hao A > Subject: RE: [edk2-devel] [PATCH V1 1/1] MdeModulePkg/Variable: Fix > VarErrorFlag RT cache offset calculation > > Michael, > > I'm not sure sync-ing whole variable cache memory is an efficient operation. > What about using mVariableModuleGlobal->NonVolatileLastVariableOffset > as Length parameter? > >Status = SynchronizeRuntimeVariableCache ( > > >VariableGlobal.VariableRuntimeCacheContext.VariableRuntimeNvCache, >0, >mVariableModuleGlobal->NonVolatileLastVariableOffset > ); > > Regards, > Jian > > > -Original Message- > > From: devel@edk2.groups.io On Behalf Of > > Kubacki, Michael A > > Sent: Tuesday, January 14, 2020 7:19 AM > > To: devel@edk2.groups.io > > Cc: Gao, Liming ; Kinney, Michael D > > ; Michael Turner > > ; Wang, Jian J ; > > Wu, Hao A > > Subject: [edk2-devel] [PATCH V1 1/1] MdeModulePkg/Variable: Fix > > VarErrorFlag RT cache offset calculation > > > > REF:https://bugzilla.tianocore.org/show_bug.cgi?id=2457 > > > > This commit fixes an offset calculation that is used to write the > > VarErrorFlag UEFI variable to the UEFI variable runtime cache. > > > > Currently a physical address is used instead of an offset. This commit > > changes the offset to zero with a length of the entire non-volatile > > variable store so the entire non-volatile variable store buffer in > > SMRAM (with the variable update modification) is copied to the runtime > > variable cache. This follows the same pattern used in other > > SynchronizeRuntimeVariableCache () calls for consistency. > > > > * Observable symptom: An exception in SMM will most likely occur > > due to the invalid memory reference when the VarErrorFlag variable > > is written. The variable is most commonly written when the UEFI > > variable store is full. > > > > * The issue only occurs when the variable runtime cache is enabled > > by the following PCD being set to TRUE: > > gEfiMdeModulePkgTokenSpaceGuid.PcdEnableVariableRuntimeCache > > > > Fixes: aab3b9b9a1e5e1f3fa966fb1667fc3e6c47e7706 > > > > Cc: Liming Gao > > Cc: Michael D Kinney > > Cc: Michael Turner > > Cc: Jian J Wang > > Cc: Hao A Wu > > Signed-off-by: Michael Kubacki > > --- > > MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c | 6 +++--- > > 1 file changed, 3 insertions(+), 3 deletions(-) > > > > diff --git a/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c > > b/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c > > index b0ee5e50d0..d23aea4bc7 100644 > > --- a/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c > > +++ b/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c > > @@ -16,7 +16,7 @@ > >VariableServiceSetVariable() should also check authenticate data to > > avoid buffer overflow, > >integer overflow. It should also check attribute to avoid authentication > bypass. > > > > -Copyright (c) 2006 - 2019, Intel Corporation. All rights > > reserved. > > +Copyright (c) 2006 - 2020, Intel Corporation. All rights > > +reserved. > > (C) Copyright 2015-2018 Hewlett Packard Enterprise Development LP > >
[edk2-devel] [PATCH V1 1/1] MdeModulePkg/Variable: Fix VarErrorFlag RT cache offset calculation
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=2457 This commit fixes an offset calculation that is used to write the VarErrorFlag UEFI variable to the UEFI variable runtime cache. Currently a physical address is used instead of an offset. This commit changes the offset to zero with a length of the entire non-volatile variable store so the entire non-volatile variable store buffer in SMRAM (with the variable update modification) is copied to the runtime variable cache. This follows the same pattern used in other SynchronizeRuntimeVariableCache () calls for consistency. * Observable symptom: An exception in SMM will most likely occur due to the invalid memory reference when the VarErrorFlag variable is written. The variable is most commonly written when the UEFI variable store is full. * The issue only occurs when the variable runtime cache is enabled by the following PCD being set to TRUE: gEfiMdeModulePkgTokenSpaceGuid.PcdEnableVariableRuntimeCache Fixes: aab3b9b9a1e5e1f3fa966fb1667fc3e6c47e7706 Cc: Liming Gao Cc: Michael D Kinney Cc: Michael Turner Cc: Jian J Wang Cc: Hao A Wu Signed-off-by: Michael Kubacki --- MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c b/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c index b0ee5e50d0..d23aea4bc7 100644 --- a/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c +++ b/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c @@ -16,7 +16,7 @@ VariableServiceSetVariable() should also check authenticate data to avoid buffer overflow, integer overflow. It should also check attribute to avoid authentication bypass. -Copyright (c) 2006 - 2019, Intel Corporation. All rights reserved. +Copyright (c) 2006 - 2020, Intel Corporation. All rights reserved. (C) Copyright 2015-2018 Hewlett Packard Enterprise Development LP SPDX-License-Identifier: BSD-2-Clause-Patent @@ -335,8 +335,8 @@ RecordVarErrorFlag ( *VarErrFlag = TempFlag; Status = SynchronizeRuntimeVariableCache ( >VariableGlobal.VariableRuntimeCacheContext.VariableRuntimeNvCache, - (UINTN) VarErrFlag - (UINTN) mNvVariableCache + (UINTN) mVariableModuleGlobal->VariableGlobal.NonVolatileVariableBase, - sizeof (TempFlag) + 0, + mNvVariableCache->Size ); ASSERT_EFI_ERROR (Status); } -- 2.16.2.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#53203): https://edk2.groups.io/g/devel/message/53203 Mute This Topic: https://groups.io/mt/69681408/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel][edk2-platforms][PATCH v4] IntelSiliconPkg/Feature/SmmAccess/*: Fix incorrect Docygen comment
Hi Marc, I already added my R-b in V3, that can be used here. I just wanted to note that it would be nice in the future if you could include a Git note in the commit that summarizes the changes between patch versions. Thanks, Michael > -Original Message- > From: Chen, Marc W > Sent: Thursday, January 9, 2020 7:29 PM > To: devel@edk2.groups.io > Cc: Kubacki, Michael A ; Chaganty, Rangasai V > ; Ni, Ray ; Gao, Liming > ; Zhang, Shenglei ; Chen, > Marc W > Subject: [edk2-devel][edk2-platforms][PATCH v4] > IntelSiliconPkg/Feature/SmmAccess/*: Fix incorrect Docygen comment > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2436 > > Cc: Michael Kubacki > Cc: Sai Chaganty > Cc: Ray Ni > Cc: Liming Gao > Cc: Shenglei Zhang > Signed-off-by: Marc Chen > --- > .../Library/PeiSmmAccessLib/PeiSmmAccessLib.c | 37 +-- > .../SmmAccess/SmmAccessDxe/SmmAccessDriver.c | 35 +++-- > - > .../SmmAccess/SmmAccessDxe/SmmAccessDriver.h | 41 ++ > > .../IntelSiliconPkg/Include/Library/SmmAccessLib.h | 7 ++-- > 4 files changed, 60 insertions(+), 60 deletions(-) > > diff --git > a/Silicon/Intel/IntelSiliconPkg/Feature/SmmAccess/Library/PeiSmmAccessLib/P > eiSmmAccessLib.c > b/Silicon/Intel/IntelSiliconPkg/Feature/SmmAccess/Library/PeiSmmAccessLib/P > eiSmmAccessLib.c > index da141cfa0e..d9bf4fba98 100644 > --- > a/Silicon/Intel/IntelSiliconPkg/Feature/SmmAccess/Library/PeiSmmAccessLib/P > eiSmmAccessLib.c > +++ > b/Silicon/Intel/IntelSiliconPkg/Feature/SmmAccess/Library/PeiSmmAccessLib/P > eiSmmAccessLib.c > @@ -1,7 +1,7 @@ > /** @file >This is to publish the SMM Access Ppi instance. > > - Copyright (c) 2019, Intel Corporation. All rights reserved. > + Copyright (c) 2019 - 2020, Intel Corporation. All rights reserved. >SPDX-License-Identifier: BSD-2-Clause-Patent > > **/ > @@ -46,9 +46,9 @@ typedef struct { >The use of "open" means that the memory is visible from all PEIM >and SMM agents. > > - @param[in] This - Pointer to the SMM Access Interface. > - @param[in] DescriptorIndex - Region of SMRAM to Open. > - @param[in] PeiServices - General purpose services available to every > PEIM. > + @param[in] PeiServices - General purpose services available to > every > PEIM. > + @param[in] This- Pointer to the SMM Access Interface. > + @param[in] DescriptorIndex - Region of SMRAM to Open. > >@retval EFI_SUCCESS- The region was successfully opened. >@retval EFI_DEVICE_ERROR - The region could not be opened because > locked by > @@ -89,9 +89,9 @@ Open ( >This routine accepts a request to "close" a region of SMRAM. This is > valid for >compatible SMRAM region. > > - @param[in] PeiServices - General purpose services available to every > PEIM. > - @param[in] This - Pointer to the SMM Access Interface. > - @param[in] DescriptorIndex - Region of SMRAM to Close. > + @param[in] PeiServices - General purpose services available to > every > PEIM. > + @param[in] This- Pointer to the SMM Access Interface. > + @param[in] DescriptorIndex - Region of SMRAM to Close. > >@retval EFI_SUCCESS- The region was successfully closed. >@retval EFI_DEVICE_ERROR - The region could not be closed because > locked by > @@ -151,9 +151,9 @@ Close ( >The use of "lock" means that the memory can no longer be opened >to PEIM. > > - @param[in] PeiServices - General purpose services available to every > PEIM. > - @param[in] This - Pointer to the SMM Access Interface. > - @param[in] DescriptorIndex - Region of SMRAM to Lock. > + @param[in] PeiServices - General purpose services available to > every > PEIM. > + @param[in] This- Pointer to the SMM Access Interface. > + @param[in] DescriptorIndex - Region of SMRAM to Lock. > >@retval EFI_SUCCESS- The region was successfully locked. >@retval EFI_DEVICE_ERROR - The region could not be locked because at > least > @@ -193,12 +193,12 @@ Lock ( >ranges that are possible for SMRAM access, based upon the >memory controller capabilities. > > - @param[in] PeiServices - General purpose services available to every > PEIM. > - @param[in] This - Pointer to the SMRAM Access Interface. > - @param[in] SmramMapSize - Pointer to the variable containing size of the > - buffer to contain the description information. > - @param[in]
Re: [edk2-devel][edk2-platforms][PATCH v3] IntelSiliconPkg/Feature/SmmAccess/*: Fix incorrect Docygen comment
Reviewed-by: Michael Kubacki > -Original Message- > From: Chen, Marc W > Sent: Thursday, January 9, 2020 1:09 AM > To: devel@edk2.groups.io > Cc: Kubacki, Michael A ; Chaganty, Rangasai V > ; Ni, Ray ; Gao, Liming > ; Zhang, Shenglei ; > Chen, Marc W > Subject: [edk2-devel][edk2-platforms][PATCH v3] > IntelSiliconPkg/Feature/SmmAccess/*: Fix incorrect Docygen comment > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2436 > > Cc: Michael Kubacki > Cc: Sai Chaganty > Cc: Ray Ni > Cc: Liming Gao > Cc: Shenglei Zhang > Signed-off-by: Marc Chen > --- > .../Library/PeiSmmAccessLib/PeiSmmAccessLib.c | 37 ++- > - > .../SmmAccess/SmmAccessDxe/SmmAccessDriver.c | 35 +++-- > -- > .../SmmAccess/SmmAccessDxe/SmmAccessDriver.h | 39 ++ > > .../IntelSiliconPkg/Include/Library/SmmAccessLib.h | 7 ++-- > 4 files changed, 59 insertions(+), 59 deletions(-) > > diff --git > a/Silicon/Intel/IntelSiliconPkg/Feature/SmmAccess/Library/PeiSmmAccessLi > b/PeiSmmAccessLib.c > b/Silicon/Intel/IntelSiliconPkg/Feature/SmmAccess/Library/PeiSmmAccessLi > b/PeiSmmAccessLib.c > index da141cfa0e..d9bf4fba98 100644 > --- > a/Silicon/Intel/IntelSiliconPkg/Feature/SmmAccess/Library/PeiSmmAccessLi > b/PeiSmmAccessLib.c > +++ > b/Silicon/Intel/IntelSiliconPkg/Feature/SmmAccess/Library/PeiSmmAccessLi > b/PeiSmmAccessLib.c > @@ -1,7 +1,7 @@ > /** @file >This is to publish the SMM Access Ppi instance. > > - Copyright (c) 2019, Intel Corporation. All rights reserved. > + Copyright (c) 2019 - 2020, Intel Corporation. All rights reserved. >SPDX-License-Identifier: BSD-2-Clause-Patent > > **/ > @@ -46,9 +46,9 @@ typedef struct { >The use of "open" means that the memory is visible from all PEIM >and SMM agents. > > - @param[in] This - Pointer to the SMM Access Interface. > - @param[in] DescriptorIndex - Region of SMRAM to Open. > - @param[in] PeiServices - General purpose services available to every > PEIM. > + @param[in] PeiServices - General purpose services available to > every > PEIM. > + @param[in] This- Pointer to the SMM Access Interface. > + @param[in] DescriptorIndex - Region of SMRAM to Open. > >@retval EFI_SUCCESS- The region was successfully opened. >@retval EFI_DEVICE_ERROR - The region could not be opened because > locked by > @@ -89,9 +89,9 @@ Open ( >This routine accepts a request to "close" a region of SMRAM. This is valid > for >compatible SMRAM region. > > - @param[in] PeiServices - General purpose services available to every > PEIM. > - @param[in] This - Pointer to the SMM Access Interface. > - @param[in] DescriptorIndex - Region of SMRAM to Close. > + @param[in] PeiServices - General purpose services available to > every > PEIM. > + @param[in] This- Pointer to the SMM Access Interface. > + @param[in] DescriptorIndex - Region of SMRAM to Close. > >@retval EFI_SUCCESS- The region was successfully closed. >@retval EFI_DEVICE_ERROR - The region could not be closed because > locked by > @@ -151,9 +151,9 @@ Close ( >The use of "lock" means that the memory can no longer be opened >to PEIM. > > - @param[in] PeiServices - General purpose services available to every > PEIM. > - @param[in] This - Pointer to the SMM Access Interface. > - @param[in] DescriptorIndex - Region of SMRAM to Lock. > + @param[in] PeiServices - General purpose services available to > every > PEIM. > + @param[in] This- Pointer to the SMM Access Interface. > + @param[in] DescriptorIndex - Region of SMRAM to Lock. > >@retval EFI_SUCCESS- The region was successfully locked. >@retval EFI_DEVICE_ERROR - The region could not be locked because at > least > @@ -193,12 +193,12 @@ Lock ( >ranges that are possible for SMRAM access, based upon the >memory controller capabilities. > > - @param[in] PeiServices - General purpose services available to every > PEIM. > - @param[in] This - Pointer to the SMRAM Access Interface. > - @param[in] SmramMapSize - Pointer to the variable containing size of the > - buffer to contain the description information. > - @param[in] SmramMap - Buffer containing the data describing the > Smram > - region descriptors. > + @param[in] PeiServices- General purpose
Re: [edk2-devel][edk2-platforms][PATCH] IntelSiliconPkg/Feature/SmmAccess/*: Fix incorrect Docygen comment
edk2-platforms\Silicon\Intel\IntelSiliconPkg\Include\Library\SmmAccessLib.h * I think the description would be clearer by making the following change: "An API to install a PEI_MM_ACCESS_PPI PPI for controlling SMM mode memory access basically for S3 resume usage." to "An API to install an instance of EFI_PEI_MM_ACCESS_PPI. This PPI is commonly used to control SMM mode memory access for S3 resume." edk2-platforms\Silicon\Intel\IntelSiliconPkg\Feature\SmmAccess\Library\PeiSmmAccessLib\PeiSmmAccessLib.c * I suggest aligning the " General purpose services available to every PEIM." on the same vertical column as the other parameter text in the function description. * Same update to the function description for PeiInstallSmmAccessPei () that was suggested in SmmAccessLib.h edk2-platforms\Silicon\Intel\IntelSiliconPkg\Feature\SmmAccess\SmmAccessDxe\SmmAccessDriver.h edk2-platforms\Silicon\Intel\IntelSiliconPkg\Feature\SmmAccess\SmmAccessDxe\SmmAccessDriver.c * The function description for SmmAccessDriverEntryPoint () is inconsistent in these files. * Some return values in the description in SmmAccessDriver.c are missing from the description in SmmAccessDriver.h With these updates: Reviewed-by: Michael Kubacki Thanks, Michael > -Original Message- > From: Chen, Marc W > Sent: Wednesday, December 25, 2019 10:53 PM > To: devel@edk2.groups.io > Cc: Kubacki, Michael A ; Chaganty, Rangasai V > ; Gao, Liming ; > Zhang, Shenglei ; Chen, Marc W > > Subject: [edk2-devel][edk2-platforms][PATCH] > IntelSiliconPkg/Feature/SmmAccess/*: Fix incorrect Docygen comment > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2436 > > Cc: Michael Kubacki > Cc: Sai Chaganty > Cc: Liming Gao > Cc: Shenglei Zhang > Signed-off-by: Marc Chen > --- > .../Library/PeiSmmAccessLib/PeiSmmAccessLib.c | 19 -- > - > .../Feature/SmmAccess/SmmAccessDxe/SmmAccessDriver.c | 6 +++--- > .../Feature/SmmAccess/SmmAccessDxe/SmmAccessDriver.h | 13 + > > .../IntelSiliconPkg/Include/Library/SmmAccessLib.h| 5 + > 4 files changed, 17 insertions(+), 26 deletions(-) > > diff --git > a/Silicon/Intel/IntelSiliconPkg/Feature/SmmAccess/Library/PeiSmmAccessLi > b/PeiSmmAccessLib.c > b/Silicon/Intel/IntelSiliconPkg/Feature/SmmAccess/Library/PeiSmmAccessLi > b/PeiSmmAccessLib.c > index da141cfa0e..61da7ea0bd 100644 > --- > a/Silicon/Intel/IntelSiliconPkg/Feature/SmmAccess/Library/PeiSmmAccessLi > b/PeiSmmAccessLib.c > +++ > b/Silicon/Intel/IntelSiliconPkg/Feature/SmmAccess/Library/PeiSmmAcce > +++ ssLib/PeiSmmAccessLib.c > @@ -46,9 +46,9 @@ typedef struct { >The use of "open" means that the memory is visible from all PEIM >and SMM agents. > > + @param[in] PeiServices - General purpose services available to every > PEIM. >@param[in] This - Pointer to the SMM Access Interface. >@param[in] DescriptorIndex - Region of SMRAM to Open. > - @param[in] PeiServices - General purpose services available to every > PEIM. > >@retval EFI_SUCCESS- The region was successfully opened. >@retval EFI_DEVICE_ERROR - The region could not be opened because > locked by > @@ -193,12 +193,12 @@ Lock ( >ranges that are possible for SMRAM access, based upon the >memory controller capabilities. > > - @param[in] PeiServices - General purpose services available to every > PEIM. > - @param[in] This - Pointer to the SMRAM Access Interface. > - @param[in] SmramMapSize - Pointer to the variable containing size of the > - buffer to contain the description information. > - @param[in] SmramMap - Buffer containing the data describing the > Smram > - region descriptors. > + @param[in] PeiServices- General purpose services available to every > PEIM. > + @param[in] This - Pointer to the SMRAM Access Interface. > + @param[in, out] SmramMapSize - Pointer to the variable containing size > of the > + buffer to contain the description > information. > + @param[in, out] SmramMap - Buffer containing the data describing the > Smram > + region descriptors. > >@retval EFI_BUFFER_TOO_SMALL - The user did not provide a sufficient > buffer. >@retval EFI_SUCCESS - The user provided a sufficiently-sized > buffer. > @@ -234,10 +234,7 @@ GetCapabilities ( > /** >This function is to install an SMM Access PPI >- Introduction \n > -A module to install a PPI for controlling SMM mode memory access > basically for S3 resume usage. > - >
Re: [edk2-devel] [edk2-platforms] [PATCH 02/11] BoardModulePkg: Add BDS Hook Library
Reviewed-by: Michael Kubacki > -Original Message- > From: Agyeman, Prince > Sent: Friday, December 13, 2019 5:32 PM > To: devel@edk2.groups.io > Cc: Kubacki, Michael A ; Chiu, Chasel > ; Desimone, Nathaniel L > > Subject: [edk2-platforms] [PATCH 02/11] BoardModulePkg: Add BDS Hook > Library > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2336 > > Added a generic board BDS hook library that implements > BDS hook points as defined in the Minimum platform specification. > > This library implements callbacks for the three MinPlatformPkg > BDS event groups, namely > gBdsEventBeforeConsoleAfterTrustedConsoleGuid, > gBdsEventBeforeConsoleBeforeEndOfDxeGuid and > gBdsEventAfterConsoleReadyBeforeBootOptionGuid. > > This Library also implements callbacks for pre-existing event groups: > gEfiEndOfDxeEventGroupGuid, gEfiPciEnumerationCompleteProtocolGuid, > gEfiDxeSmmReadyToLockProtocolGuid. > > These callbacks can be registered to their respective event groups, > through other libraries or DXE drivers > > Cc: Michael Kubacki > Cc: Chasel Chiu > Cc: Nate DeSimone > > Signed-off-by: Prince Agyeman > --- > .../Include/Library/BoardBdsHookLib.h | 100 ++ > .../Library/BoardBdsHookLib/BoardBdsHook.h| 211 +++ > .../Library/BoardBdsHookLib/BoardBdsHookLib.c | 1390 > + > .../BoardBdsHookLib/BoardBdsHookLib.inf | 95 ++ > .../Library/BoardBdsHookLib/BoardBootOption.c | 598 +++ > .../Library/BoardBdsHookLib/BoardMemoryTest.c | 83 + > 6 files changed, 2477 insertions(+) > create mode 100644 > Platform/Intel/BoardModulePkg/Include/Library/BoardBdsHookLib.h > create mode 100644 > Platform/Intel/BoardModulePkg/Library/BoardBdsHookLib/BoardBdsHook.h > create mode 100644 > Platform/Intel/BoardModulePkg/Library/BoardBdsHookLib/BoardBdsHookLi > b.c > create mode 100644 > Platform/Intel/BoardModulePkg/Library/BoardBdsHookLib/BoardBdsHookLi > b.inf > create mode 100644 > Platform/Intel/BoardModulePkg/Library/BoardBdsHookLib/BoardBootOptio > n.c > create mode 100644 > Platform/Intel/BoardModulePkg/Library/BoardBdsHookLib/BoardMemoryTe > st.c > > diff --git > a/Platform/Intel/BoardModulePkg/Include/Library/BoardBdsHookLib.h > b/Platform/Intel/BoardModulePkg/Include/Library/BoardBdsHookLib.h > new file mode 100644 > index 00..ba351b7bf4 > --- /dev/null > +++ b/Platform/Intel/BoardModulePkg/Include/Library/BoardBdsHookLib.h > @@ -0,0 +1,100 @@ > +/** @file > +Header file for BDS Hook Library > + > +Copyright (c) 2019, Intel Corporation. All rights reserved. > +SPDX-License-Identifier: BSD-2-Clause-Patent > + > +**/ > + > +#ifndef _BDS_HOOK_LIB_H_ > +#define _BDS_HOOK_LIB_H_ > + > +#include > + > + > +/** > + This is the callback function for Bds Ready To Boot event. > + > + @param Event Pointer to this event > + @param Context Event hanlder private data > + > + @retval None. > +**/ > +VOID > +EFIAPI > +BdsReadyToBootCallback ( > + IN EFI_EVENT Event, > + IN VOID *Context > + ); > + > + > +/** > + This is the callback function for Smm Ready To Lock event. > + > + @param[in] Event The Event this notify function registered to. > + @param[in] ContextPointer to the context data registered to the Event. > +**/ > +VOID > +EFIAPI > +BdsSmmReadyToLockCallback ( > + IN EFI_EVENTEvent, > + IN VOID *Context > + ); > + > + > +/** > + This is the callback function for PCI ENUMERATION COMPLETE. > + > + @param[in] Event The Event this notify function registered to. > + @param[in] ContextPointer to the context data registered to the Event. > +**/ > +VOID > +EFIAPI > +BdsPciEnumCompleteCallback ( > + IN EFI_EVENTEvent, > + IN VOID *Context > + ); > + > + > +/** > + Before console after trusted console event callback > + > + @param[in] Event The Event this notify function registered to. > + @param[in] ContextPointer to the context data registered to the Event. > +**/ > +VOID > +EFIAPI > +BdsBeforeConsoleAfterTrustedConsoleCallback ( > + IN EFI_EVENT Event, > + IN VOID *Context > + ); > + > + > +/** > + Before console before end of DXE event callback > + > + @param[in] Event The Event this notify function registered to. > + @param[in] ContextPointer to the context data registered to the Event. > +**/ > +VOID > +EFIAPI > +BdsBeforeConsoleBeforeEndOfDxeGuidCallback ( > + IN EFI_EVENT Event, > + IN VOID *Context > + ); > + > + &
Re: [edk2-devel] [edk2-platforms] [PATCH 10/11] SimicsOpenBoardPkg: Add BDS Board Boot Manager library
Reviewed-by: Michael Kubacki > -Original Message- > From: Agyeman, Prince > Sent: Friday, December 13, 2019 5:33 PM > To: devel@edk2.groups.io > Cc: Desimone, Nathaniel L ; Kubacki, > Michael A > Subject: [edk2-platforms] [PATCH 10/11] SimicsOpenBoardPkg: Add BDS > Board Boot Manager library > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2336 > > This library implements PlatformBootManagerWaitCallback and > PlatformBootManagerUnableToBoot which can be linked Minplatform's > PlatformBootManager libary instance. > > Cc: Nate DeSimone > Cc: Michael Kubacki > > Signed-off-by: Prince Agyeman > --- > .../BoardBootManagerLib/BoardBootManager.c| 67 > +++ > .../BoardBootManagerLib.inf | 45 + > 2 files changed, 112 insertions(+) > create mode 100644 > Platform/Intel/SimicsOpenBoardPkg/Library/BoardBootManagerLib/BoardBo > otManager.c > create mode 100644 > Platform/Intel/SimicsOpenBoardPkg/Library/BoardBootManagerLib/BoardBo > otManagerLib.inf > > diff --git > a/Platform/Intel/SimicsOpenBoardPkg/Library/BoardBootManagerLib/Board > BootManager.c > b/Platform/Intel/SimicsOpenBoardPkg/Library/BoardBootManagerLib/Board > BootManager.c > new file mode 100644 > index 00..58035f2766 > --- /dev/null > +++ > b/Platform/Intel/SimicsOpenBoardPkg/Library/BoardBootManagerLib/Boar > +++ dBootManager.c > @@ -0,0 +1,67 @@ > +/** @file > + The Board Boot Manager Library implements > +BoardBootManagerWaitCallback > + and BoardBootManagerUnableToBoot callback, which is linked to the > + Platform Boot Manager Library > + > + Copyright (c) 2019 Intel Corporation. All rights reserved. > + > + SPDX-License-Identifier: BSD-2-Clause-Patent **/ > + > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > + > +/** > + This function is called each second during the boot manager waits the > + timeout. > + > + @param TimeoutRemain The remaining timeout. > +**/ > +VOID > +EFIAPI > +BoardBootManagerWaitCallback ( > + UINT16 TimeoutRemain > + ) > +{ > + EFI_GRAPHICS_OUTPUT_BLT_PIXEL_UNION Black; > + EFI_GRAPHICS_OUTPUT_BLT_PIXEL_UNION White; > + UINT16 Timeout; > + > + Timeout = PcdGet16 (PcdPlatformBootTimeOut); > + > + Black.Raw = 0x; > + White.Raw = 0x00FF; > + > + BootLogoUpdateProgress ( > +White.Pixel, > +Black.Pixel, > +L"Start boot option", > +White.Pixel, > +(Timeout - TimeoutRemain) * 100 / Timeout, > +0 > +); > +} > + > +/** > + The function is called when no boot option could be launched, > + including platform recovery options and options pointing to > +applications > + built into firmware volumes. > + > + If this function returns, BDS attempts to enter an infinite loop. > +**/ > +VOID > +EFIAPI > +BoardBootManagerUnableToBoot ( > + VOID > + ) > +{ > + > +} > diff --git > a/Platform/Intel/SimicsOpenBoardPkg/Library/BoardBootManagerLib/Board > BootManagerLib.inf > b/Platform/Intel/SimicsOpenBoardPkg/Library/BoardBootManagerLib/Board > BootManagerLib.inf > new file mode 100644 > index 00..20778981bc > --- /dev/null > +++ > b/Platform/Intel/SimicsOpenBoardPkg/Library/BoardBootManagerLib/Boar > +++ dBootManagerLib.inf > @@ -0,0 +1,45 @@ > +## @file > +# Definition file for the Board Boot Manager Library. > +# > +# Copyright (c) 2019 Intel Corporation. All rights reserved. # # > +SPDX-License-Identifier: BSD-2-Clause-Patent # ## > + > +[Defines] > + INF_VERSION= 0x00010005 > + BASE_NAME = BoardBootManagerLib > + FILE_GUID = EBBB176A-3883-4BA4-A74D-1510D0C35B37 > + MODULE_TYPE= DXE_DRIVER > + VERSION_STRING = 1.0 > + LIBRARY_CLASS = BoardBootManagerLib|DXE_DRIVER > + > +# > +# The following information is for reference only and not required by the > build tools. > +# > +# VALID_ARCHITECTURES = IA32 X64 EBC > +# > + > +[Sources] > + BoardBootManager.c > + > +[Packages] > + MdePkg/MdePkg.dec > + MdeModulePkg/MdeModulePkg.dec > + MinPlatformPkg/MinPlatformPkg.dec > + > +[LibraryClasses] > + BaseLib > + UefiBootServicesTableLib > + DebugLib > + UefiLib > + HobLib > + UefiBootManagerLib > + TimerLib > + BoardBootManagerLib > + BootLogoLib > + PcdLib > + > +[Pcd] > + gEfiMdePkgTokenSpaceGuid.PcdPlatformBootTimeOut > -- > 2.19.1.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#52473): https://edk2.groups.io/g/devel/message/52473 Mute This Topic: https://groups.io/mt/68590740/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [edk2-platforms] [PATCH 06/11] BoardModulePkg: Add Generic BoardBootManagerLib
Reviewed-by: Michael Kubacki > -Original Message- > From: Agyeman, Prince > Sent: Friday, December 13, 2019 5:33 PM > To: devel@edk2.groups.io > Cc: Kubacki, Michael A ; Chiu, Chasel > ; Desimone, Nathaniel L > > Subject: [edk2-platforms] [PATCH 06/11] BoardModulePkg: Add Generic > BoardBootManagerLib > > This library implements a generic PlatformBootManagerWaitCallback and > PlatformBootManagerUnableToBoot which will be linked Minplatform's > PlatformBootManager library instance. > > Cc: Michael Kubacki > Cc: Chasel Chiu > Cc: Nate DeSimone > > Signed-off-by: Prince Agyeman > --- > .../BoardBootManagerLib/BoardBootManager.c| 103 > ++ > .../BoardBootManagerLib.inf | 39 +++ > .../BoardBootManagerLib.c | 2 +- > 3 files changed, 143 insertions(+), 1 deletion(-) create mode 100644 > Platform/Intel/BoardModulePkg/Library/BoardBootManagerLib/BoardBoot > Manager.c > create mode 100644 > Platform/Intel/BoardModulePkg/Library/BoardBootManagerLib/BoardBoot > ManagerLib.inf > > diff --git > a/Platform/Intel/BoardModulePkg/Library/BoardBootManagerLib/BoardBoo > tManager.c > b/Platform/Intel/BoardModulePkg/Library/BoardBootManagerLib/BoardBoo > tManager.c > new file mode 100644 > index 00..f6628d4125 > --- /dev/null > +++ > b/Platform/Intel/BoardModulePkg/Library/BoardBootManagerLib/BoardBoo > +++ tManager.c > @@ -0,0 +1,103 @@ > +/** @file > + This file include board specific boot manager callbacks > + > + Copyright (c) 2019, Intel Corporation. All rights reserved. > + SPDX-License-Identifier: BSD-2-Clause-Patent **/ > + > + > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > + > + > +BOOLEANmHotKeypressed = FALSE; > +EFI_EVENT HotKeyEvent= NULL; > +UINTN mBootMenuOptionNumber; > + > +/** > + This function is called each second during the boot manager waits timeout. > + > + @param TimeoutRemain The remaining timeout. > +**/ > +VOID > +EFIAPI > +BoardBootManagerWaitCallback ( > + UINT16 TimeoutRemain > + ) > +{ > + EFI_STATUSStatus; > + EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL *TxtInEx; > + EFI_KEY_DATA KeyData; > + BOOLEAN PausePressed; > + > + // > + // Pause on PAUSE key > + // > + Status = gBS->HandleProtocol (gST->ConsoleInHandle, > + , (VOID **) ); > + ASSERT_EFI_ERROR (Status); > + > + PausePressed = FALSE; > + > + while (TRUE) { > +Status = TxtInEx->ReadKeyStrokeEx (TxtInEx, ); > +if (EFI_ERROR (Status)) { > + break; > +} > + > +if (KeyData.Key.ScanCode == SCAN_PAUSE) { > + PausePressed = TRUE; > + break; > +} > + } > + > + // > + // Loop until non-PAUSE key pressed > + // > + while (PausePressed) { > +Status = TxtInEx->ReadKeyStrokeEx (TxtInEx, ); > +if (!EFI_ERROR (Status)) { > + DEBUG (( > +DEBUG_INFO, "[PauseCallback] %x/%x %x/%x\n", > +KeyData.Key.ScanCode, KeyData.Key.UnicodeChar, > +KeyData.KeyState.KeyShiftState, KeyData.KeyState.KeyToggleState > +)); > + PausePressed = (BOOLEAN) (KeyData.Key.ScanCode == SCAN_PAUSE); > +} > + } > +} > + > +/** > + The function is called when no boot option could be launched, > + including platform recovery options and options pointing to > +applications > + built into firmware volumes. > + > + If this function returns, BDS attempts to enter an infinite loop. > +**/ > +VOID > +EFIAPI > +BoardBootManagerUnableToBoot ( > + VOID > + ) > +{ > + EFI_STATUS Status; > + EFI_BOOT_MANAGER_LOAD_OPTION BootDeviceList; > + CHAR16 OptionName[sizeof ("Boot")]; > + > + if (mBootMenuOptionNumber == LoadOptionNumberUnassigned) { > +return; > + } > + UnicodeSPrint (OptionName, sizeof (OptionName), L"Boot%04x", > +mBootMenuOptionNumber); > + Status = EfiBootManagerVariableToLoadOption (OptionName, > +); > + if (EFI_ERROR (Status)) { > +return; > + } > + for (;;) { > +EfiBootManagerBoot (); > + } > +} > diff --git > a/Platform/Intel/BoardModulePkg/Library/BoardBootManagerLib/BoardBoo > tManagerLib.inf > b/Platform/Intel/BoardModulePkg/Library/BoardBootManagerLib/BoardBoo > tManagerLib.inf > new file mode 100644 > index 00..38ff52ca81 > --- /dev/null > +++ > b/Platform/Intel/BoardModulePkg/Library/BoardBootManagerLib/BoardBoo > +++ tManagerLib.inf &
Re: [edk2-devel] [edk2-platforms] [PATCH 09/11] SimicsOpenBoardPkg: Add Bds Hook Library
Reviewed-by: Michael Kubacki > -Original Message- > From: Agyeman, Prince > Sent: Friday, December 13, 2019 5:33 PM > To: devel@edk2.groups.io > Cc: Desimone, Nathaniel L ; Kubacki, > Michael A > Subject: [edk2-platforms] [PATCH 09/11] SimicsOpenBoardPkg: Add Bds > Hook Library > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2336 > > Added Board BDS Hook library that implements simics specific > Bds hook points or callbacks. > > Cc: Nate DeSimone > Cc: Michael Kubacki > > Signed-off-by: Prince Agyeman > --- > .../Library/BoardBdsHookLib/BoardBdsHook.h| 173 ++ > .../Library/BoardBdsHookLib/BoardBdsHookLib.c | 1630 > + > .../BoardBdsHookLib/BoardBdsHookLib.inf | 81 + > 3 files changed, 1884 insertions(+) > create mode 100644 > Platform/Intel/SimicsOpenBoardPkg/Library/BoardBdsHookLib/BoardBdsHo > ok.h > create mode 100644 > Platform/Intel/SimicsOpenBoardPkg/Library/BoardBdsHookLib/BoardBdsHo > okLib.c > create mode 100644 > Platform/Intel/SimicsOpenBoardPkg/Library/BoardBdsHookLib/BoardBdsHo > okLib.inf > > diff --git > a/Platform/Intel/SimicsOpenBoardPkg/Library/BoardBdsHookLib/BoardBdsH > ook.h > b/Platform/Intel/SimicsOpenBoardPkg/Library/BoardBdsHookLib/BoardBdsH > ook.h > new file mode 100644 > index 00..fda41b1c97 > --- /dev/null > +++ > b/Platform/Intel/SimicsOpenBoardPkg/Library/BoardBdsHookLib/BoardBdsH > ook.h > @@ -0,0 +1,173 @@ > +/** @file > + Header file for the board board specific BDS hook library. > + > + Copyright (c) 2019 Intel Corporation. All rights reserved. > + > + SPDX-License-Identifier: BSD-2-Clause-Patent > +**/ > + > +#ifndef _PLATFORM_SPECIFIC_BDS_PLATFORM_H_ > +#define _PLATFORM_SPECIFIC_BDS_PLATFORM_H_ > + > + > +#include > + > +#include > +#include > +#include > +#include > + > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > + > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > + > +#include > +#include > +#include > +#include > +#include > +#include > + > +#include > + > +extern EFI_DEVICE_PATH_PROTOCOL *gPlatformConnectSequence[]; > +extern ACPI_HID_DEVICE_PATH gPnpPs2KeyboardDeviceNode; > +extern ACPI_HID_DEVICE_PATH gPnp16550ComPortDeviceNode; > +extern UART_DEVICE_PATH gUartDeviceNode; > +extern VENDOR_DEVICE_PATH gTerminalTypeDeviceNode; > + > +#define PCI_DEVICE_PATH_NODE(Func, Dev) \ > + { \ > +{ \ > + HARDWARE_DEVICE_PATH, \ > + HW_PCI_DP, \ > + { \ > +(UINT8) (sizeof (PCI_DEVICE_PATH)), \ > +(UINT8) ((sizeof (PCI_DEVICE_PATH)) >> 8) \ > + } \ > +}, \ > +(Func), \ > +(Dev) \ > + } > + > +#define PNPID_DEVICE_PATH_NODE(PnpId) \ > + { \ > +{ \ > + ACPI_DEVICE_PATH, \ > + ACPI_DP, \ > + { \ > +(UINT8) (sizeof (ACPI_HID_DEVICE_PATH)), \ > +(UINT8) ((sizeof (ACPI_HID_DEVICE_PATH)) >> 8) \ > + }, \ > +}, \ > +EISA_PNP_ID((PnpId)), \ > +0 \ > + } > + > +#define gPciIsaBridge \ > + PCI_DEVICE_PATH_NODE(0, 0x1f) > + > +#define gP2PBridge \ > + PCI_DEVICE_PATH_NODE(0, 0x1e) > + > +#define gPnpPs2Keyboard \ > + PNPID_DEVICE_PATH_NODE(0x0303) > + > +#define gPnp16550ComPort \ > + PNPID_DEVICE_PATH_NODE(0x0501) > + > +#define gUart \ > + { \ > +{ \ > + MESSAGING_DEVICE_PATH, \ > + MSG_UART_DP, \ > + { \ > +(UINT8) (sizeof (UART_DEVICE_PATH)), \ > +(UINT8) ((sizeof (UART_DEVICE_PATH)) >> 8) \ > + } \ > +}, \ > +0, \ > +115200, \ > +8, \ > +1, \ > +1 \ > + } > + > +#define gPcAnsiTerminal \ > + { \ > +{ \ > + MESSAGING_DEVICE_PATH, \ > + MSG_VENDOR_DP, \ > + { \ > +(UINT8) (sizeof (VENDOR_DEVICE_PATH)), \ > +(UINT8) ((sizeof (VENDOR_DEVICE_PATH)) >> 8) \ > + } \ > +}, \ > +DEVICE_PATH_MESSAGING_PC_ANSI \ > + } > + > +#define PCI_CLASS_SCC 0x07 > +#define PCI_SUBCLASS_SERIAL0x00 > +#define PCI_IF_16550 0x02 > +#define IS_PCI_16550SERIAL(_p) IS_CLASS3 (_p, PCI_CLASS_SCC, > PCI_SUBCLASS_SERIAL, PCI_IF_16550) > +#define IS_PCI_ISA_PDECODE(_p)IS_CLASS3 (_p, PCI_CLASS_BRIDGE, > PCI_CLASS_BRIDGE_ISA_PDECODE, 0) > +
Re: [edk2-devel] [edk2-platforms] [PATCH 05/11] MinPlatformPkg: Add BDS Hook Points
Reviewed-by: Michael Kubacki > -Original Message- > From: Agyeman, Prince > Sent: Friday, December 13, 2019 5:33 PM > To: devel@edk2.groups.io > Cc: Kubacki, Michael A ; Chiu, Chasel > ; Desimone, Nathaniel L > > Subject: [edk2-platforms] [PATCH 05/11] MinPlatformPkg: Add BDS Hook > Points > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2336 > > Added BDS hook points to the Minplatform boot manager library > as defined in the Minimum Platfrom specifcations. > > Changes made: > > * Added functions to signal three BDS event groups. > These event groups are BeforeConsoleAfterTrustedConsole, > BeforeConsoleBeforeEndOfDxe and AfterConsoleReadyBeforeBootOption. > > * Removed BDS functionalities from the boot manager library. > These functionalities will be added to callbacks a module in BoardModule, > which will then register/hook to the BDS hook points > > See https://edk2-docs.gitbooks.io/edk-ii-minimum-platform-specification, > under Appendix A.3 BDS Hook Points, for more details. > > Cc: Michael Kubacki > Cc: Chasel Chiu > Cc: Nate DeSimone > > Signed-off-by: Prince Agyeman > --- > .../DxePlatformBootManagerLib/BdsPlatform.c | 1262 ++--- > .../DxePlatformBootManagerLib/BdsPlatform.h | 181 +-- > .../DxePlatformBootManagerLib.inf | 51 +- > .../DxePlatformBootManagerLib/MemoryTest.c| 83 -- > .../PlatformBootOption.c | 559 > 5 files changed, 112 insertions(+), 2024 deletions(-) > delete mode 100644 > Platform/Intel/MinPlatformPkg/Bds/Library/DxePlatformBootManagerLib/M > emoryTest.c > delete mode 100644 > Platform/Intel/MinPlatformPkg/Bds/Library/DxePlatformBootManagerLib/Pl > atformBootOption.c > > diff --git > a/Platform/Intel/MinPlatformPkg/Bds/Library/DxePlatformBootManagerLib/ > BdsPlatform.c > b/Platform/Intel/MinPlatformPkg/Bds/Library/DxePlatformBootManagerLib > /BdsPlatform.c > index 491fb0f26f..31a9ef4a07 100644 > --- > a/Platform/Intel/MinPlatformPkg/Bds/Library/DxePlatformBootManagerLib/ > BdsPlatform.c > +++ > b/Platform/Intel/MinPlatformPkg/Bds/Library/DxePlatformBootManagerLib > /BdsPlatform.c > @@ -1,130 +1,14 @@ > /** @file >This file include all platform action which can be customized by IBV/OEM. > > -Copyright (c) 2017, Intel Corporation. All rights reserved. > +Copyright (c) 2017 - 2019, Intel Corporation. All rights reserved. > SPDX-License-Identifier: BSD-2-Clause-Patent > > **/ > > #include "BdsPlatform.h" > -#include > -#include > -#include > -#include > > -#include > -#include > -#include > -#include > -#include > - > -#include > - > -#include > -#include > - > -#include > - > -GLOBAL_REMOVE_IF_UNREFERENCED EFI_BOOT_MODE > gBootMode; > - > -BOOLEAN gPPRequireUIConfirm; > - > -extern UINTN mBootMenuOptionNumber; > - > -GLOBAL_REMOVE_IF_UNREFERENCED USB_CLASS_FORMAT_DEVICE_PATH > gUsbClassKeyboardDevicePath = { > - { > -{ > - MESSAGING_DEVICE_PATH, > - MSG_USB_CLASS_DP, > - { > -(UINT8) (sizeof (USB_CLASS_DEVICE_PATH)), > -(UINT8) ((sizeof (USB_CLASS_DEVICE_PATH)) >> 8) > - } > -}, > -0x, // VendorId > -0x, // ProductId > -CLASS_HID,// DeviceClass > -SUBCLASS_BOOT,// DeviceSubClass > -PROTOCOL_KEYBOARD // DeviceProtocol > - }, > - gEndEntire > -}; > - > -// > -// Internal shell mode > -// > -GLOBAL_REMOVE_IF_UNREFERENCED UINT32 mShellModeColumn; > -GLOBAL_REMOVE_IF_UNREFERENCED UINT32 mShellModeRow; > -GLOBAL_REMOVE_IF_UNREFERENCED UINT32 > mShellHorizontalResolution; > -GLOBAL_REMOVE_IF_UNREFERENCED UINT32 > mShellVerticalResolution; > -// > -// BDS Platform Functions > -// > - > -BOOLEAN > -IsMorBitSet ( > - VOID > - ) > -{ > - UINTN MorControl; > - EFI_STATUSStatus; > - UINTN DataSize; > - > - // > - // Check if the MOR bit is set. > - // > - DataSize = sizeof (MorControl); > - Status = gRT->GetVariable ( > - MEMORY_OVERWRITE_REQUEST_VARIABLE_NAME, > - , > - NULL, > - , > - > - ); > - if (EFI_ERROR (Status)) { > -DEBUG ((DEBUG_INFO, " PlatformBootMangerLib: > gEfiMemoryOverwriteControlDataGuid doesn't exist!!***\n")); > -MorControl = 0; > - } else { > -DEBUG ((DEBUG_INFO, " PlatformBootMangerLib: Get the >
Re: [edk2-devel] [edk2-platforms] [PATCH 01/11] MinPlatformPkg: Add BDS Hook Point Guids
Reviewed-by: Michael Kubacki > -Original Message- > From: Agyeman, Prince > Sent: Friday, December 13, 2019 5:32 PM > To: devel@edk2.groups.io > Cc: Kubacki, Michael A ; Chiu, Chasel > ; Desimone, Nathaniel L > > Subject: [edk2-platforms] [PATCH 01/11] MinPlatformPkg: Add BDS Hook > Point Guids > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2336 > > Added BDS hook point guids as defined in the Minimum Platform > specification. These GUIDs shall be used in the identification of three of the > BDS hook point event groups. > > These event groups are Before Console After Trusted, Before Console > Before End Of Dxe and After Console Ready Before BootOption events. > > See https://edk2-docs.gitbooks.io/edk-ii-minimum-platform-specification, > under Appendix A.3 BDS Hook Points, for more details > > Cc: Michael Kubacki > Cc: Chasel Chiu > Cc: Nate DeSimone > > Signed-off-by: Prince Agyeman > --- > Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec | 5 + > 1 file changed, 5 insertions(+) > > diff --git a/Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec > b/Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec > index 7f74ac9380..5bec4eee3a 100644 > --- a/Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec > +++ b/Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec > @@ -46,6 +46,11 @@ >gDefaultDataFileGuid = {0x1ae42876, 0x008f, 0x4161, {0xb2, > 0xb7, > 0x1c, 0x0d, 0x15, 0xc5, 0xef, 0x43}} >gDefaultDataOptSizeFileGuid = {0x003e7b41, 0x98a2, 0x4be2, {0xb2, > 0x7a, 0x6c, 0x30, 0xc7, 0x65, 0x52, 0x25}} > > + # BDS Hook point event Guids > + gBdsEventBeforeConsoleAfterTrustedConsoleGuid = {0x51e49ff5, 0x28a9, > 0x4159, { 0xac, 0x8a, 0xb8, 0xc4, 0x88, 0xa7, 0xfd, 0xee}} > + gBdsEventBeforeConsoleBeforeEndOfDxeGuid = {0xfcf26e41, 0xbda6, > 0x4633, { 0xb5, 0x73, 0xd4, 0xb8, 0x0e, 0x6d, 0xd0, 0x78}} > + gBdsEventAfterConsoleReadyBeforeBootOptionGuid = {0x8eb3d5dc, > 0xf4e7, > + 0x4b57, { 0xa9, 0xe7, 0x27, 0x39, 0x10, 0xf2, 0x18, 0x9f}} > + > [LibraryClasses] > >PeiLib|Include/Library/PeiLib.h > -- > 2.19.1.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#52465): https://edk2.groups.io/g/devel/message/52465 Mute This Topic: https://groups.io/mt/68590722/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [edk2-platforms] [PATCH 04/11] MinPlatformPkg: Add BDS Board Boot Manager library
Since BoardBootManagerWaitCallback () is a new function, please add @param[in] for the TimeoutRemain parameter. With that change - Reviewed-by: Michael Kubacki > -Original Message- > From: Agyeman, Prince > Sent: Friday, December 13, 2019 5:33 PM > To: devel@edk2.groups.io > Cc: Kubacki, Michael A ; Chiu, Chasel > ; Desimone, Nathaniel L > > Subject: [edk2-platforms] [PATCH 04/11] MinPlatformPkg: Add BDS Board > Boot Manager library > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2336 > > As Minplatform's PlatformBootManager library instance implements event > signals (as specified in the minimum platform specification) to trigger board > actions, some of its functions namely PlatformBootManagerWaitCallback and > PlatformBootManagerUnableToBoot will not have events signaled for boards > to take action. > > This library implements PlatformBootManagerWaitCallback and > PlatformBootManagerUnableToBoot which will be linked to Minplatform's > PlatformBootManager libary instance. > > Added is an interface/header file that defines the board boot manager > library. > > Also added is a NULL implementation of the board boot manager library > > Cc: Michael Kubacki > Cc: Chasel Chiu > Cc: Nate DeSimone > > Signed-off-by: Prince Agyeman > --- > .../BoardBootManagerLib.c | 38 ++ > .../BoardBootManagerLibNull.inf | 31 +++ > .../Include/Library/BoardBootManagerLib.h | 39 +++ > 3 files changed, 108 insertions(+) > create mode 100644 > Platform/Intel/MinPlatformPkg/Bds/Library/BoardBootManagerLibNull/Boar > dBootManagerLib.c > create mode 100644 > Platform/Intel/MinPlatformPkg/Bds/Library/BoardBootManagerLibNull/Boar > dBootManagerLibNull.inf > create mode 100644 > Platform/Intel/MinPlatformPkg/Include/Library/BoardBootManagerLib.h > > diff --git > a/Platform/Intel/MinPlatformPkg/Bds/Library/BoardBootManagerLibNull/Bo > ardBootManagerLib.c > b/Platform/Intel/MinPlatformPkg/Bds/Library/BoardBootManagerLibNull/Bo > ardBootManagerLib.c > new file mode 100644 > index 00..46fce8f59f > --- /dev/null > +++ > b/Platform/Intel/MinPlatformPkg/Bds/Library/BoardBootManagerLibNull/ > +++ BoardBootManagerLib.c > @@ -0,0 +1,38 @@ > +/** @file > + This file include board specific boot manager callbacks > + > + Copyright (c) 2018, Intel Corporation. All rights reserved. > + SPDX-License-Identifier: BSD-2-Clause-Patent **/ > + > +#include > + > +/** > + This function is called each second during the boot manager waits timeout. > + > + @param TimeoutRemain The remaining timeout. > +**/ > +VOID > +EFIAPI > +BoardBootManagerWaitCallback ( > + IN UINT16 TimeoutRemain > + ) > +{ > + return; > +} > + > +/** > + The function is called when no boot option could be launched, > + including platform recovery options and options pointing to > +applications > + built into firmware volumes. > + > +**/ > +VOID > +EFIAPI > +BoardBootManagerUnableToBoot ( > + VOID > + ) > +{ > + return; > +} > + > diff --git > a/Platform/Intel/MinPlatformPkg/Bds/Library/BoardBootManagerLibNull/Bo > ardBootManagerLibNull.inf > b/Platform/Intel/MinPlatformPkg/Bds/Library/BoardBootManagerLibNull/Bo > ardBootManagerLibNull.inf > new file mode 100644 > index 00..084207b111 > --- /dev/null > +++ > b/Platform/Intel/MinPlatformPkg/Bds/Library/BoardBootManagerLibNull/ > +++ BoardBootManagerLibNull.inf > @@ -0,0 +1,31 @@ > +## @file > +# The module definition file for BoardBootManagerLib. > +# > +# Copyright (c) 2019, Intel Corporation. All rights reserved. # > +SPDX-License-Identifier: BSD-2-Clause-Patent # ## > + > +[Defines] > + INF_VERSION= 0x00010005 > + BASE_NAME = BoardBootManagerLib > + FILE_GUID = 7BA684A4-5B32-4F0C-B0FF-581F143E606C > + MODULE_TYPE= DXE_DRIVER > + VERSION_STRING = 1.0 > + LIBRARY_CLASS = BoardBootManagerLib|DXE_DRIVER > + > + > +# > +# The following information is for reference only and not required by the > build tools. > +# > +# VALID_ARCHITECTURES = IA32 X64 EBC > +# > + > +[Sources] > + BoardBootManagerLib.c > + > + > +[Packages] > + MdePkg/MdePkg.dec > + MdeModulePkg/MdeModulePkg.dec > + MinPlatformPkg/MinPlatformPkg.dec > diff --git > a/Platform/Intel/MinPlatformPkg/Include/Library/BoardBootManagerLib.h > b/Platform/Intel/MinPlatformPkg/Include/Library/BoardBootManagerLib.h > new file mode 100644 > index 00..4240142073 >
Re: [edk2-devel] [edk2-platforms] [PATCH 11/11] SimicsOpenBoardPkg: Add Bds Hook Points
Reviewed-by: Michael Kubacki > -Original Message- > From: Agyeman, Prince > Sent: Friday, December 13, 2019 5:33 PM > To: devel@edk2.groups.io > Cc: Kubacki, Michael A ; Chiu, Chasel > ; Desimone, Nathaniel L > > Subject: [edk2-platforms] [PATCH 11/11] SimicsOpenBoardPkg: Add Bds > Hook Points > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2336 > > Added a DXE driver that registers the minimum platform BDS hook points, to > BoardX58Ich10 board. > These hooks are triggered on the BDS hook events > > What was done: > > * Included a board specific instance of BoardBdsHookLib and > BoardBootManagerLib > > * Included Minplatforms PlatformBootManagerLib instance. > This Library instance signals the Bds event groups > > * Included BoardBdsHookDxe to register the callbacks implemented in > BoardBdsHookLib > > Cc: Michael Kubacki > Cc: Chasel Chiu > Cc: Nate DeSimone > > Signed-off-by: Prince Agyeman > --- > .../SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.dsc | 10 > +- .../SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.fdf | > 1 + > 2 files changed, 10 insertions(+), 1 deletion(-) > > diff --git > a/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.dsc > b/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.dsc > index 7576648d57..350a75a313 100644 > --- > a/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.dsc > +++ > b/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.dsc > @@ -146,10 +146,17 @@ > > SetCacheMtrrLib|$(PLATFORM_PACKAGE)/Library/SetCacheMtrrLib/SetCac > heMtrrLib.inf > > [LibraryClasses.common.DXE_DRIVER] > + > + # > + # Platform Package > + # > + > + > PlatformBootManagerLib|$(PLATFORM_PACKAGE)/Bds/Library/DxePlatfor > mBoot > + ManagerLib/DxePlatformBootManagerLib.inf > + >### ># Board Package >### > - > PlatformBootManagerLib|$(BOARD_PKG)/Library/PlatformBootManagerLib/ > PlatformBootManagerLib.inf > + > + > BoardBdsHookLib|$(BOARD_PKG)/Library/BoardBdsHookLib/BoardBdsHook > Lib.i > + nf > + > BoardBootManagerLib|$(BOARD_PKG)/Library/BoardBootManagerLib/Boar > dBoot > + ManagerLib.inf > > [LibraryClasses.common.DXE_SMM_DRIVER] >### > @@ -294,3 +301,4 @@ >$(BOARD_PKG)/SimicsVideoDxe/SimicsVideoDxe.inf >$(BOARD_PKG)/SmbiosPlatformDxe/SmbiosPlatformDxe.inf >BoardModulePkg/LegacySioDxe/LegacySioDxe.inf > + BoardModulePkg/BoardBdsHookDxe/BoardBdsHookDxe.inf > diff --git > a/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.fdf > b/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.fdf > index e0a1daddee..99bf607775 100644 > --- a/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.fdf > +++ > b/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.fdf > @@ -213,6 +213,7 @@ INF > MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf > INF MinPlatformPkg/Flash/SpiFvbService/SpiFvbServiceSmm.inf > INF MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpressDxe.inf > INF BoardModulePkg/LegacySioDxe/LegacySioDxe.inf > +INF BoardModulePkg/BoardBdsHookDxe/BoardBdsHookDxe.inf > > INF MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2KeyboardDxe.inf > > -- > 2.19.1.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#52474): https://edk2.groups.io/g/devel/message/52474 Mute This Topic: https://groups.io/mt/68590741/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [edk2-platforms] [PATCH 03/11] BoardModulePkg: Add BDS Hook DXE Driver
Reviewed-by: Michael Kubacki > -Original Message- > From: Agyeman, Prince > Sent: Friday, December 13, 2019 5:32 PM > To: devel@edk2.groups.io > Cc: Kubacki, Michael A ; Chiu, Chasel > ; Desimone, Nathaniel L > > Subject: [edk2-platforms] [PATCH 03/11] BoardModulePkg: Add BDS Hook > DXE Driver > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2336 > > This is a sample/generic DXE driver that registers all the BDS hook points or > callbacks as defined in BoardBdsHookLib. > > Cc: Michael Kubacki > Cc: Chasel Chiu > Cc: Nate DeSimone > > Signed-off-by: Prince Agyeman > --- > .../BoardBdsHookDxe/BoardBdsHookDxe.c | 121 ++ > .../BoardBdsHookDxe/BoardBdsHookDxe.inf | 46 +++ > 2 files changed, 167 insertions(+) > create mode 100644 > Platform/Intel/BoardModulePkg/BoardBdsHookDxe/BoardBdsHookDxe.c > create mode 100644 > Platform/Intel/BoardModulePkg/BoardBdsHookDxe/BoardBdsHookDxe.inf > > diff --git > a/Platform/Intel/BoardModulePkg/BoardBdsHookDxe/BoardBdsHookDxe.c > b/Platform/Intel/BoardModulePkg/BoardBdsHookDxe/BoardBdsHookDxe.c > new file mode 100644 > index 00..88eb7d70e9 > --- /dev/null > +++ > b/Platform/Intel/BoardModulePkg/BoardBdsHookDxe/BoardBdsHookDxe.c > @@ -0,0 +1,121 @@ > +/** @file > + Bds Hook Point callbacks DXE driver > + > + Copyright (c) 2019, Intel Corporation. All rights reserved. > + SPDX-License-Identifier: BSD-2-Clause-Patent > + > +**/ > + > +#include #include > + > +#include > +#include > +#include > + > +#include > + > +/** > + Initialize DXE Platform. > + > + @param[in] ImageHandle Image handle of this driver. > + @param[in] SystemTable Global system service table. > + > + @retval EFI_SUCCESS Initialization complete. > + @exception EFI_UNSUPPORTED The chipset is unsupported by this > driver. > + @retval EFI_OUT_OF_RESOURCES Do not have enough resources to > initialize the driver. > + @retval EFI_DEVICE_ERROR Device error, driver exits abnormally. > +**/ > +EFI_STATUS > +EFIAPI > +BdsHookDxeEntryPoint ( > + IN EFI_HANDLE ImageHandle, > + IN EFI_SYSTEM_TABLE *SystemTable > + ) > +{ > + EFI_EVENT BeforeConsoleAfterTrustedConsoleEvent; > + EFI_EVENT BeforeConsoleBeforeEndOfDxeEvent; > + EFI_EVENT AfterConsoleReadyBeforeBootOptionEvent; > + EFI_EVENT ReadyToBootEvent; > + EFI_EVENT PciEnumCompleteEvent; > + EFI_EVENT SmmReadyToLockEvent; > + EFI_STATUS Status; > + VOID*Registration; > + > + DEBUG ((DEBUG_INFO, "%a starts\n", __FUNCTION__ )); > + > + // > + // Create event to set proper video resolution and text mode for internal > shell. > + // > + Status = EfiCreateEventReadyToBootEx ( > + TPL_CALLBACK, > + BdsReadyToBootCallback, > + NULL, > + > + ); > + ASSERT_EFI_ERROR (Status); > + > + // > + // Create PCI Enumeration Completed callback for BDS // > + PciEnumCompleteEvent = EfiCreateProtocolNotifyEvent ( > + , > + TPL_CALLBACK, > + BdsPciEnumCompleteCallback, > + NULL, > + > + ); > + ASSERT (PciEnumCompleteEvent != NULL); > + > + // > + // Create PCI Enumeration Completed callback for BDS // > + SmmReadyToLockEvent = EfiCreateProtocolNotifyEvent ( > + , > + TPL_CALLBACK, > + BdsSmmReadyToLockCallback, > + NULL, > + > + ); > + ASSERT (SmmReadyToLockEvent != NULL); > + > + // > + // Create BeforeConsoleAfterTrustedConsole event callback // Status > + = gBS->CreateEventEx ( > + EVT_NOTIFY_SIGNAL, > + TPL_CALLBACK, > + BdsBeforeConsoleAfterTrustedConsoleCallback, > + NULL, > + , > + > + ); > + ASSERT_EFI_ERROR (Status); > + > + // > + // Create BeforeConsoleBeforeEndOfDxeGuid event callback // Status > + = gBS->CreateEventEx ( > + EVT_NOTIFY_SIGNAL, > + TPL_CALLBACK, > + BdsBeforeConsoleBeforeEndOfDxeGuidCallback, > + NULL, > + , > + > + ); > + ASSERT_EFI_ERROR (Status); > + > + // > + // Create AfterConsoleReadyBeforeBootOption event callback // &
Re: [edk2-devel] [edk2-platforms] [PATCH 08/11] WhiskeylakeOpenBoardPkg: Add BDS Hook Dxe Driver
Reviewed-by: Michael Kubacki > -Original Message- > From: Agyeman, Prince > Sent: Friday, December 13, 2019 5:33 PM > To: devel@edk2.groups.io > Cc: Kubacki, Michael A ; Chiu, Chasel > ; Desimone, Nathaniel L > > Subject: [edk2-platforms] [PATCH 08/11] WhiskeylakeOpenBoardPkg: Add > BDS Hook Dxe Driver > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2336 > > Added a DXE driver that registers the minimum platform BDS hook points, to > WhiskeylakeURvp board. > These hooks are triggered on the BDS hook events > > What was done: > > * Included an instance of BdsHookLib and BoardBootManagerLib from > BoardModulePkg > > * Included BdsHookDxe to register the callbacks implemented in BdsHookLib > > Cc: Michael Kubacki > Cc: Chasel Chiu > Cc: Nate DeSimone > > Signed-off-by: Prince Agyeman > --- > .../WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoardPkg.dsc | 4 > .../WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoardPkg.fdf > | 1 + > 2 files changed, 5 insertions(+) > > diff --git > a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoard > Pkg.dsc > b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoard > Pkg.dsc > index 47e156be08..1a9e608bd6 100644 > --- > a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoard > Pkg.dsc > +++ > b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoard > Pk > +++ g.dsc > @@ -224,6 +224,8 @@ >### > > DxePolicyUpdateLib|$(PLATFORM_BOARD_PACKAGE)/Policy/Library/DxePol > icyUpdateLib/DxePolicyUpdateLib.inf > > DxeTbtPolicyLib|$(PLATFORM_BOARD_PACKAGE)/Features/Tbt/Library/Dxe > TbtPolicyLib/DxeTbtPolicyLib.inf > + > + > BoardBdsHookLib|BoardModulePkg/Library/BoardBdsHookLib/BoardBdsHoo > kLib > + .inf > + > BoardBootManagerLib|BoardModulePkg/Library/BoardBootManagerLib/Boa > rdBo > + otManagerLib.inf > >### ># Board-specific > @@ -452,3 +454,5 @@ >$(PLATFORM_BOARD_PACKAGE)/Acpi/BoardAcpiDxe/BoardAcpiDxe.inf > !endif >BoardModulePkg/LegacySioDxe/LegacySioDxe.inf > + BoardModulePkg/BoardBdsHookDxe/BoardBdsHookDxe.inf > + > diff --git > a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoard > Pkg.fdf > b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoard > Pkg.fdf > index f39b41b186..ad32268a82 100644 > --- > a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoard > Pkg.fdf > +++ > b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoard > Pk > +++ g.fdf > @@ -346,6 +346,7 @@ INF > MdeModulePkg/Universal/Console/GraphicsOutputDxe/GraphicsOutputDx > e.inf > INF MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpressDxe.inf > INF BoardModulePkg/LegacySioDxe/LegacySioDxe.inf > INF MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2KeyboardDxe.inf > +INF BoardModulePkg/BoardBdsHookDxe/BoardBdsHookDxe.inf > > INF ShellPkg/Application/Shell/Shell.inf > > -- > 2.19.1.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#52472): https://edk2.groups.io/g/devel/message/52472 Mute This Topic: https://groups.io/mt/68590738/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [edk2-platforms] [PATCH 07/11] KabylakeOpenBoardPkg: Add BDS Hook Dxe Driver
Reviewed-by: Michael Kubacki > -Original Message- > From: Agyeman, Prince > Sent: Friday, December 13, 2019 5:33 PM > To: devel@edk2.groups.io > Cc: Kubacki, Michael A ; Chiu, Chasel > ; Desimone, Nathaniel L > > Subject: [edk2-platforms] [PATCH 07/11] KabylakeOpenBoardPkg: Add BDS > Hook Dxe Driver > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2336 > > Added a DXE driver that registers the minimum platform BDS hook points for > the GalagoPro3 and KabylakeRvp3 boards. > These hooks are triggered on the BDS hook events > > What was done: > > * Included an instance of BoardBdsHookLib and BoardBootManagerLib from > BoardModulePkg > > * Included BdsHookDxe to register the callbacks implemented in > BoardBdsHookLib > > Cc: Michael Kubacki > Cc: Chasel Chiu > Cc: Nate DeSimone > > Signed-off-by: Prince Agyeman > --- > .../Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.dsc | 7 > +++ .../Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.fdf | > 1 + > .../KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.dsc | 6 ++ > .../KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.fdf | 1 + > 4 files changed, 15 insertions(+) > > diff --git > a/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.dsc > b/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.dsc > index a39547f41f..bf63d53bef 100644 > --- a/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.dsc > +++ > b/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.dsc > @@ -201,6 +201,12 @@ > > TestPointCheckLib|$(PLATFORM_PACKAGE)/Test/Library/TestPointCheckLib > /DxeTestPointCheckLib.inf > !endif > > + ### > + # Board Package > + ### > + > + > BoardBdsHookLib|BoardModulePkg/Library/BoardBdsHookLib/BoardBdsHoo > kLib > + .inf > + > BoardBootManagerLib|BoardModulePkg/Library/BoardBootManagerLib/Boa > rdBo > + otManagerLib.inf > + >### ># Board-specific >### > @@ -425,3 +431,4 @@ >} > !endif >BoardModulePkg/LegacySioDxe/LegacySioDxe.inf > + BoardModulePkg/BoardBdsHookDxe/BoardBdsHookDxe.inf > diff --git > a/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.fdf > b/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.fdf > index da94ed0cd1..196f04c68d 100644 > --- a/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.fdf > +++ > b/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.fdf > @@ -341,6 +341,7 @@ INF > MdeModulePkg/Universal/Console/GraphicsOutputDxe/GraphicsOutputDx > e.inf > INF MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpressDxe.inf > INF BoardModulePkg/LegacySioDxe/LegacySioDxe.inf > INF MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2KeyboardDxe.inf > +INF BoardModulePkg/BoardBdsHookDxe/BoardBdsHookDxe.inf > > INF ShellPkg/Application/Shell/Shell.inf > > diff --git > a/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.dsc > b/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.dsc > index 50be2bb624..044688ba4e 100644 > --- > a/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.dsc > +++ > b/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.dsc > @@ -241,6 +241,11 @@ > !if $(TARGET) == DEBUG > > TestPointCheckLib|$(PLATFORM_PACKAGE)/Test/Library/TestPointCheckLib > /DxeTestPointCheckLib.inf > !endif > + ### > + # Board Package > + ### > + > + > BoardBdsHookLib|BoardModulePkg/Library/BoardBdsHookLib/BoardBdsHoo > kLib > + .inf > + > BoardBootManagerLib|BoardModulePkg/Library/BoardBootManagerLib/Boa > rdBo > + otManagerLib.inf > >### ># Board-specific > @@ -505,3 +510,4 @@ >} > !endif >BoardModulePkg/LegacySioDxe/LegacySioDxe.inf > + BoardModulePkg/BoardBdsHookDxe/BoardBdsHookDxe.inf > diff --git > a/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.fdf > b/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.fdf > index fc1c6a9c25..f2cfff1c7b 100644 > --- > a/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.fdf > +++ > b/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.fdf > @@ -343,6 +343,7 @@ INF > MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf > INF > MdeModulePkg/Universal/Console/GraphicsOutputDxe/GraphicsOutputDx > e.inf > INF BoardModulePkg/LegacySioDxe/LegacySioDxe.inf > INF MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2Keybo
[edk2-devel] [edk2-platforms][PATCH V1 1/1] Features/Intel/AcpiDebugFeaturePkg: Add feature active PCD
Adds a dynamic PCD that specifies whether the feature is active. This is useful because the feature might be enabled via FeatureFlag PCD PcdAcpiDebugFeatureEnable meaning it is built and included in the flash image but the board might need to control whether the feature is active based on input such as a Setup menu option. A deactivated feature will be dispatched but simply exit in the entry point. Cc: Sai Chaganty Cc: Chasel Chiu Cc: Eric Dong Cc: Liming Gao Signed-off-by: Michael Kubacki --- Features/Intel/Debugging/AcpiDebugFeaturePkg/AcpiDebugFeaturePkg.dec | 14 +- Features/Intel/Debugging/AcpiDebugFeaturePkg/AcpiDebugDxeSmm/AcpiDebugDxe.inf | 5 +++-- Features/Intel/Debugging/AcpiDebugFeaturePkg/AcpiDebugDxeSmm/AcpiDebugSmm.inf | 5 +++-- Features/Intel/Debugging/AcpiDebugFeaturePkg/AcpiDebugDxeSmm/AcpiDebug.c | 4 Features/Intel/Debugging/AcpiDebugFeaturePkg/Readme.md | 1 + 5 files changed, 24 insertions(+), 5 deletions(-) diff --git a/Features/Intel/Debugging/AcpiDebugFeaturePkg/AcpiDebugFeaturePkg.dec b/Features/Intel/Debugging/AcpiDebugFeaturePkg/AcpiDebugFeaturePkg.dec index a74ee3e084..c3bd89fe2b 100644 --- a/Features/Intel/Debugging/AcpiDebugFeaturePkg/AcpiDebugFeaturePkg.dec +++ b/Features/Intel/Debugging/AcpiDebugFeaturePkg/AcpiDebugFeaturePkg.dec @@ -34,6 +34,18 @@ gAcpiDebugFeaturePkgTokenSpaceGuid.PcdAcpiDebugBufferSize|0x1|UINT32|0xF001 [PcdsDynamic, PcdsDynamicEx] + ## This PCD specifies whether the feature is active. + # + # The PCD value can be modified at boot time to activate and deactivate the feature functionality. + # + # Note that this differs from PcdFeatureEnable which determines whether the feature is included + # as an advanced feature in the flash image. If enabled, the feature is then eligible to be activated/deactivated + # via this PCD. + # + # An enabled but deactivated feature will be dispatched but exit in its entry point without performing any + # feature actions. + gAcpiDebugFeaturePkgTokenSpaceGuid.PcdAcpiDebugFeatureActive|TRUE|BOOLEAN|0xD001 + ## This PCD specifies ACPI debug message buffer address. # The PCD value will be updated during boot time when the buffer is allocated. - gAcpiDebugFeaturePkgTokenSpaceGuid.PcdAcpiDebugAddress|0|UINT32|0xD001 + gAcpiDebugFeaturePkgTokenSpaceGuid.PcdAcpiDebugAddress|0|UINT32|0xD002 diff --git a/Features/Intel/Debugging/AcpiDebugFeaturePkg/AcpiDebugDxeSmm/AcpiDebugDxe.inf b/Features/Intel/Debugging/AcpiDebugFeaturePkg/AcpiDebugDxeSmm/AcpiDebugDxe.inf index dfcee0a842..b293d83cd9 100644 --- a/Features/Intel/Debugging/AcpiDebugFeaturePkg/AcpiDebugDxeSmm/AcpiDebugDxe.inf +++ b/Features/Intel/Debugging/AcpiDebugFeaturePkg/AcpiDebugDxeSmm/AcpiDebugDxe.inf @@ -35,8 +35,9 @@ Debugging/AcpiDebugFeaturePkg/AcpiDebugFeaturePkg.dec [Pcd] - gAcpiDebugFeaturePkgTokenSpaceGuid.PcdAcpiDebugBufferSize ## CONSUMES - gAcpiDebugFeaturePkgTokenSpaceGuid.PcdAcpiDebugAddress ## PRODUCES + gAcpiDebugFeaturePkgTokenSpaceGuid.PcdAcpiDebugFeatureActive ## CONSUMES + gAcpiDebugFeaturePkgTokenSpaceGuid.PcdAcpiDebugBufferSize ## CONSUMES + gAcpiDebugFeaturePkgTokenSpaceGuid.PcdAcpiDebugAddress## PRODUCES [Sources] AcpiDebug.c diff --git a/Features/Intel/Debugging/AcpiDebugFeaturePkg/AcpiDebugDxeSmm/AcpiDebugSmm.inf b/Features/Intel/Debugging/AcpiDebugFeaturePkg/AcpiDebugDxeSmm/AcpiDebugSmm.inf index 089bb57707..dbb33e4ae2 100644 --- a/Features/Intel/Debugging/AcpiDebugFeaturePkg/AcpiDebugDxeSmm/AcpiDebugSmm.inf +++ b/Features/Intel/Debugging/AcpiDebugFeaturePkg/AcpiDebugDxeSmm/AcpiDebugSmm.inf @@ -36,8 +36,9 @@ Debugging/AcpiDebugFeaturePkg/AcpiDebugFeaturePkg.dec [Pcd] - gAcpiDebugFeaturePkgTokenSpaceGuid.PcdAcpiDebugBufferSize ## CONSUMES - gAcpiDebugFeaturePkgTokenSpaceGuid.PcdAcpiDebugAddress ## PRODUCES + gAcpiDebugFeaturePkgTokenSpaceGuid.PcdAcpiDebugFeatureActive ## CONSUMES + gAcpiDebugFeaturePkgTokenSpaceGuid.PcdAcpiDebugBufferSize ## CONSUMES + gAcpiDebugFeaturePkgTokenSpaceGuid.PcdAcpiDebugAddress## PRODUCES [Sources] AcpiDebug.c diff --git a/Features/Intel/Debugging/AcpiDebugFeaturePkg/AcpiDebugDxeSmm/AcpiDebug.c b/Features/Intel/Debugging/AcpiDebugFeaturePkg/AcpiDebugDxeSmm/AcpiDebug.c index 42428d8005..4caeffc7de 100644 --- a/Features/Intel/Debugging/AcpiDebugFeaturePkg/AcpiDebugDxeSmm/AcpiDebug.c +++ b/Features/Intel/Debugging/AcpiDebugFeaturePkg/AcpiDebugDxeSmm/AcpiDebug.c @@ -289,6 +289,10 @@ InitializeAcpiDebugDxe ( EFI_STATUSStatus; EFI_EVENT EndOfDxeEvent; + if (!PcdGetBool (PcdAcpiDebugFeatureActive)) { +return EFI_SUCCESS; + } + // // Register EndOfDxe notification // that point could ensure the Acpi Debug related PCDs initialized. diff --git a/Features/Intel/Debugging/AcpiDebugFeaturePkg/Readme.md b/Features/Intel/Debugging/AcpiDebugFeaturePkg/Readme.md index
Re: [edk2-devel] [edk2-platforms] [PATCH 01/11] MinPlatformPkg: Add BDS Hook Point Guids
Hi Ray, There could be usage of SimpleTextIn->ReadKeyStroke () in PlatformBootManagerWaitCallback () and PlatformBootManagerUnableToBoot (). The PlatformBootManagerLib instance introduced in MinPlatformPkg simply forwards those calls to a library instance of BoardBootManagerLib implemented in the board package so they will still be invoked at TPL_APPLICATION. A specific use case that requires TPL_APPLICATION (the restriction is relatively minimal) has not been identified in the analysis of use cases that led to the event hook points introduced in PlatformBootManagerLib. Thanks, Michael > -Original Message- > From: Ni, Ray > Sent: Monday, December 16, 2019 12:50 AM > To: Kubacki, Michael A > Cc: Desimone, Nathaniel L ; > devel@edk2.groups.io; Chiu, Chasel ; Agyeman, > Prince > Subject: RE: [edk2-devel] [edk2-platforms] [PATCH 01/11] MinPlatformPkg: > Add BDS Hook Point Guids > > Using event for callbacks has a limitation: The event callback has to run at > TPL > >= TPL_CALLBACK. > > Some of the services like gBS->LoadImage()/StartImage(), SimpleTextIn- > >ReadKeyStroke(), > FormBrowser->SendForm() can ONLY be called at TPL_APPLICATION. > So those services cannot be called from the event callback. > > Is that ok to the min-platform? > > Thanks, > Ray > > > > -Original Message- > > From: devel@edk2.groups.io On Behalf Of Chiu, > > Chasel > > Sent: Monday, December 16, 2019 9:32 AM > > To: Agyeman, Prince ; devel@edk2.groups.io > > Cc: Kubacki, Michael A ; Desimone, > > Nathaniel L > > Subject: Re: [edk2-devel] [edk2-platforms] [PATCH 01/11] MinPlatformPkg: > > Add BDS Hook Point Guids > > > > > > Reviewed-by: Chasel Chiu > > > > > -Original Message- > > > From: Agyeman, Prince > > > Sent: Saturday, December 14, 2019 9:32 AM > > > To: devel@edk2.groups.io > > > Cc: Kubacki, Michael A ; Chiu, Chasel > > > ; Desimone, Nathaniel L > > > > > > Subject: [edk2-platforms] [PATCH 01/11] MinPlatformPkg: Add BDS Hook > > > Point Guids > > > > > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2336 > > > > > > Added BDS hook point guids as defined in the Minimum Platform > > > specification. These GUIDs shall be used in the identification of > > > three of the BDS hook point event groups. > > > > > > These event groups are Before Console After Trusted, Before Console > > Before > > > End Of Dxe and After Console Ready Before BootOption events. > > > > > > See > > > https://edk2-docs.gitbooks.io/edk-ii-minimum-platform-specification, > > > under Appendix A.3 BDS Hook Points, for more details > > > > > > Cc: Michael Kubacki > > > Cc: Chasel Chiu > > > Cc: Nate DeSimone > > > > > > Signed-off-by: Prince Agyeman > > > --- > > > Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec | 5 + > > > 1 file changed, 5 insertions(+) > > > > > > diff --git a/Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec > > > b/Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec > > > index 7f74ac9380..5bec4eee3a 100644 > > > --- a/Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec > > > +++ b/Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec > > > @@ -46,6 +46,11 @@ > > >gDefaultDataFileGuid = {0x1ae42876, 0x008f, 0x4161, > > > {0xb2, 0xb7, 0x1c, 0x0d, 0x15, 0xc5, 0xef, 0x43}} > > >gDefaultDataOptSizeFileGuid = {0x003e7b41, 0x98a2, 0x4be2, > > > {0xb2, 0x7a, 0x6c, 0x30, 0xc7, 0x65, 0x52, 0x25}} > > > > > > + # BDS Hook point event Guids > > > + gBdsEventBeforeConsoleAfterTrustedConsoleGuid = {0x51e49ff5, > > > 0x28a9, 0x4159, { 0xac, 0x8a, 0xb8, 0xc4, 0x88, 0xa7, 0xfd, 0xee}} > > > + gBdsEventBeforeConsoleBeforeEndOfDxeGuid = {0xfcf26e41, > > > 0xbda6, 0x4633, { 0xb5, 0x73, 0xd4, 0xb8, 0x0e, 0x6d, 0xd0, 0x78}} > > > + gBdsEventAfterConsoleReadyBeforeBootOptionGuid = {0x8eb3d5dc, > > > 0xf4e7, > > > + 0x4b57, { 0xa9, 0xe7, 0x27, 0x39, 0x10, 0xf2, 0x18, 0x9f}} > > > + > > > [LibraryClasses] > > > > > >PeiLib|Include/Library/PeiLib.h > > > -- > > > 2.19.1.windows.1 > > > > > > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#52297): https://edk2.groups.io/g/devel/message/52297 Mute This Topic: https://groups.io/mt/68590722/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[edk2-devel] [edk2-platforms][PATCH V3 1/1] WhiskeylakeOpenBoardPkg: Update PCDs to enable stack sharing
From: "Agyeman, Prince" REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2409 Updated WhiskeylakeURvp PCDs to enable FSP/BL stack sharing. This fixes the boot failure seen with the latest Coffee Lake (CFL) FSP binary (v 7.0.68.41). Cc: Chasel Chiu Cc: Nate DeSimone Cc: Michael Kubacki Co-authored-by: Michael Kubacki Signed-off-by: Prince Agyeman Reviewed-by: Chasel Chiu --- Notes: 1. Michael Kubacki is taking over patch ownership since Prince is out of office. V3 Change: - Changed the value of PcdPeiTemporaryRamStackSize to 0x3 to exceed the minimum stack size specified in the Coffee Lake FSP Integration Guide (160KB / 0x28000) with some padding. V2 Change: - The value of PcdPeiTemporaryRamStackSize was changed from 0x4 to 0x28000 to exactly meet the minimum stack size specified in the Coffee Lake FSP Integration Guide. Note that the memory initialization code in the FSP previously exceeded the available stack size. Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoardPkgPcd.dsc | 11 +-- 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoardPkgPcd.dsc b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoardPkgPcd.dsc index 906f7b7ade..1ae51d9d5e 100644 --- a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoardPkgPcd.dsc +++ b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoardPkgPcd.dsc @@ -54,15 +54,14 @@ gSiPkgTokenSpaceGuid.PcdTsegSize|0x100 # - # FSP API mode does not share stack with the boot loader, - # so FSP needs more temporary memory for FSP heap + stack size. + # When sharing stack with boot loader, FSP only needs small temp ram for heap # - gIntelFsp2PkgTokenSpaceGuid.PcdFspTemporaryRamSize|0x26000 + gIntelFsp2PkgTokenSpaceGuid.PcdFspTemporaryRamSize|0x1 + # - # FSP API mode does not need to enlarge the boot loader stack size - # since the stacks are separate. + # Boot loader stack size has to be big enough to executing FSP # - gSiPkgTokenSpaceGuid.PcdPeiTemporaryRamStackSize|0x2 + gSiPkgTokenSpaceGuid.PcdPeiTemporaryRamStackSize|0x3 gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0xE000 gMinPlatformPkgTokenSpaceGuid.PcdPciExpressRegionLength|0x1000 -- 2.16.2.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#52293): https://edk2.groups.io/g/devel/message/52293 Mute This Topic: https://groups.io/mt/68774153/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [edk2-platforms] [PATCH v2] WhiskeylakeOpenBoardPkg: Update PCDs to enable stack sharing
I agree with Chasel. There should be enough T-RAM available to expand this to 0x3 without a problem and reduce potential thrash in the future. Thanks, Michael > -Original Message- > From: Chiu, Chasel > Sent: Sunday, December 15, 2019 4:32 PM > To: Agyeman, Prince ; Desimone, Nathaniel L > > Cc: Kubacki, Michael A ; > devel@edk2.groups.io > Subject: RE: [edk2-platforms] [PATCH v2] WhiskeylakeOpenBoardPkg: > Update PCDs to enable stack sharing > > > Hi Nate, Prince, > > I would recommend that we set larger > gSiPkgTokenSpaceGuid.PcdPeiTemporaryRamStackSize so we do not have to > update this again and again later when required temporary ram increased by > enabling some boot loader features. > How about set it to 0x3? > > Thanks, > Chasel > > > -Original Message- > > From: Agyeman, Prince > > Sent: Saturday, December 14, 2019 9:29 AM > > To: devel@edk2.groups.io > > Cc: Chiu, Chasel ; Desimone, Nathaniel L > > ; Kubacki, Michael A > > > > Subject: [edk2-platforms] [PATCH v2] WhiskeylakeOpenBoardPkg: Update > > PCDs to enable stack sharing > > > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2409 > > > > Updated WhiskeylakeURvp PCDs to enable FSP/BL stack sharing. > > This fixes the boot failure seen with the latest Coffee Lake (CFL) FSP > > binary (v > > 7.0.68.41) > > > > Cc: Chasel Chiu > > Cc: Nate DeSimone > > Cc: Michael Kubacki > > > > Signed-off-by: Prince Agyeman > > --- > > .../WhiskeylakeURvp/OpenBoardPkgPcd.dsc | 11 > > +-- > > 1 file changed, 5 insertions(+), 6 deletions(-) > > > > diff --git > > > a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoard > P > > kgPcd.dsc > > > b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoard > P > > kgPcd.dsc > > index 906f7b7ade..cfe42883be 100644 > > --- > > > a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoard > P > > kgPcd.dsc > > +++ > > > b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoard > P > > k > > +++ gPcd.dsc > > @@ -54,15 +54,14 @@ > >gSiPkgTokenSpaceGuid.PcdTsegSize|0x100 > > > ># > > - # FSP API mode does not share stack with the boot loader, > > - # so FSP needs more temporary memory for FSP heap + stack size. > > + # When sharing stack with boot loader, FSP only needs small temp > > + ram for heap > ># > > - gIntelFsp2PkgTokenSpaceGuid.PcdFspTemporaryRamSize|0x26000 > > + gIntelFsp2PkgTokenSpaceGuid.PcdFspTemporaryRamSize|0x1 > > + > ># > > - # FSP API mode does not need to enlarge the boot loader stack size > > - # since the stacks are separate. > > + # Boot loader stack size has to be big enough to executing FSP > ># > > - gSiPkgTokenSpaceGuid.PcdPeiTemporaryRamStackSize|0x2 > > + gSiPkgTokenSpaceGuid.PcdPeiTemporaryRamStackSize|0x28000 > > > >gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0xE000 > > > > > gMinPlatformPkgTokenSpaceGuid.PcdPciExpressRegionLength|0x1000 > > -- > > 2.19.1.windows.1 > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#52257): https://edk2.groups.io/g/devel/message/52257 Mute This Topic: https://groups.io/mt/68589828/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [edk2-platforms] [PATCH] WhiskeylakeOpenBoardPkg: Update PCDs to enable stack sharing
Reviewed-by: Michael Kubacki > -Original Message- > From: Agyeman, Prince > Sent: Wednesday, December 11, 2019 5:13 PM > To: devel@edk2.groups.io > Cc: Chiu, Chasel ; Desimone, Nathaniel L > ; Kubacki, Michael A > > Subject: [edk2-platforms] [PATCH] WhiskeylakeOpenBoardPkg: Update PCDs > to enable stack sharing > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2409 > > Updated WhiskeylakeURvp PCDs to enable FSP/BL stack sharing. > This fixes the boot failure seen with the latest Coffee Lake (CFL) FSP binary > (v > 7.0.68.41) > > Cc: Chasel Chiu > Cc: Nate DeSimone > Cc: Michael Kubacki > > Signed-off-by: Prince Agyeman > --- > .../WhiskeylakeURvp/OpenBoardPkgPcd.dsc | 11 +-- > 1 file changed, 5 insertions(+), 6 deletions(-) > > diff --git > a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoard > PkgPcd.dsc > b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoard > PkgPcd.dsc > index 906f7b7ade..b3e1da3970 100644 > --- > a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoard > PkgPcd.dsc > +++ > b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoard > Pk > +++ gPcd.dsc > @@ -54,15 +54,14 @@ >gSiPkgTokenSpaceGuid.PcdTsegSize|0x100 > ># > - # FSP API mode does not share stack with the boot loader, > - # so FSP needs more temporary memory for FSP heap + stack size. > + # When sharing stack with boot loader, FSP only needs small temp ram > + for heap ># > - gIntelFsp2PkgTokenSpaceGuid.PcdFspTemporaryRamSize|0x26000 > + gIntelFsp2PkgTokenSpaceGuid.PcdFspTemporaryRamSize|0x1 > + ># > - # FSP API mode does not need to enlarge the boot loader stack size > - # since the stacks are separate. > + # Boot loader stack size has to be big enough to executing FSP ># > - gSiPkgTokenSpaceGuid.PcdPeiTemporaryRamStackSize|0x2 > + gSiPkgTokenSpaceGuid.PcdPeiTemporaryRamStackSize|0x4 > >gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0xE000 >gMinPlatformPkgTokenSpaceGuid.PcdPciExpressRegionLength|0x1000 > -- > 2.19.1.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#52171): https://edk2.groups.io/g/devel/message/52171 Mute This Topic: https://groups.io/mt/68227150/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [PATCH] SimicsOpenBoardPkg: Replace CMOS Hardcoded Addresses
Please include [edk2-platforms] in the subject in the future. Reviewed-by: Michael Kubacki > -Original Message- > From: Agyeman, Prince > Sent: Friday, December 6, 2019 9:32 AM > To: devel@edk2.groups.io > Cc: Desimone, Nathaniel L ; Kubacki, > Michael A > Subject: [PATCH] SimicsOpenBoardPkg: Replace CMOS Hardcoded Addresses > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2330 > > Changes: > * Added CmosMap.h that defines CMOS addresses used in > SimicsOpenBoardPkg as macros > > * Replaced hardcoded CMOS addresses with the macros > defined in CmosMap.h > > Cc: Nate DeSimone > Cc: Michael Kubacki > > Signed-off-by: Prince Agyeman > --- > .../SimicsOpenBoardPkg/Include/CmosMap.h | 35 > +++ > .../SimicsOpenBoardPkg/SimicsPei/MemDetect.c | 23 > .../SmbiosPlatformDxe/SmbiosPlatformDxe.c | 24 - > .../SmbiosPlatformDxe/SmbiosPlatformDxe.h | 1 + > 4 files changed, 68 insertions(+), 15 deletions(-) create mode 100644 > Platform/Intel/SimicsOpenBoardPkg/Include/CmosMap.h > > diff --git a/Platform/Intel/SimicsOpenBoardPkg/Include/CmosMap.h > b/Platform/Intel/SimicsOpenBoardPkg/Include/CmosMap.h > new file mode 100644 > index 00..3221ce9a5b > --- /dev/null > +++ b/Platform/Intel/SimicsOpenBoardPkg/Include/CmosMap.h > @@ -0,0 +1,35 @@ > +/** @file > +Cmos address definition macros header file. > + > +Copyright (c) 2019, Intel Corporation. All rights reserved. > +SPDX-License-Identifier: BSD-2-Clause-Patent > + > +**/ > + > +#ifndef _CMOS_MAP_H_ > +#define _CMOS_MAP_H_ > + > +// > +// CMOS 0x34/0x35 specifies the system memory above 16 MB. > +// * CMOS(0x35) is the high byte > +// * CMOS(0x34) is the low byte > +// * The size is specified in 64kb chunks // * Since this is memory > +above 16MB, the 16MB must be added > +// into the calculation to get the total memory size. > +// > +#define CMOS_SYSTEM_MEM_ABOVE_16MB_LOW_BYTE 0x34 > +#define CMOS_SYSTEM_MEM_ABOVE_16MB_HIGH_BYTE0x35 > + > +// > +// CMOS 0x5b-0x5d specifies the system memory above 4GB MB. > +// * CMOS(0x5d) is the most significant size byte // * CMOS(0x5c) is > +the middle size byte // * CMOS(0x5b) is the least significant size byte > +// * The size is specified in 64kb chunks // > +#define CMOS_SYSTEM_MEM_ABOVE_4GB_LOW_BYTE 0x5b > +#define CMOS_SYSTEM_MEM_ABOVE_4GB_MIDDLE_BYTE 0x5c > +#define CMOS_SYSTEM_MEM_ABOVE_4GB_HIGH_BYTE 0x5d > + > + > +#endif // _CMOS_MAP_H_ > diff --git a/Platform/Intel/SimicsOpenBoardPkg/SimicsPei/MemDetect.c > b/Platform/Intel/SimicsOpenBoardPkg/SimicsPei/MemDetect.c > index e547de0045..60aa54be9e 100644 > --- a/Platform/Intel/SimicsOpenBoardPkg/SimicsPei/MemDetect.c > +++ b/Platform/Intel/SimicsOpenBoardPkg/SimicsPei/MemDetect.c > @@ -26,6 +26,8 @@ > #include > #include > > +#include > + > #include "Platform.h" > > UINT8 mPhysMemAddressWidth; > @@ -74,24 +76,33 @@ X58TsegMbytesInitialization( >return; > } > > +/** > + Get the system memory size below 4GB > > + @return The size of system memory below 4GB **/ > UINT32 > GetSystemMemorySizeBelow4gb ( >VOID >) > { > + UINT32 Size; >// >// CMOS 0x34/0x35 specifies the system memory above 16 MB. > - // * CMOS(0x35) is the high byte > - // * CMOS(0x34) is the low byte >// * The size is specified in 64kb chunks >// * Since this is memory above 16MB, the 16MB must be added >// into the calculation to get the total memory size. >// > - return (UINT32) (((UINTN)CmosRead16 (0x34) << 16) + SIZE_16MB); > + Size = (UINT32) ((CmosRead16 > (CMOS_SYSTEM_MEM_ABOVE_16MB_LOW_BYTE) << 16) > + + SIZE_16MB); > + return Size; > } > > +/** > + Get the system memory size above 4GB > > + @return The size of system memory above 4GB **/ > STATIC > UINT64 > GetSystemMemorySizeAbove4gb ( > @@ -100,12 +111,10 @@ GetSystemMemorySizeAbove4gb ( >UINT32 Size; >// >// CMOS 0x5b-0x5d specifies the system memory above 4GB MB. > - // * CMOS(0x5d) is the most significant size byte > - // * CMOS(0x5c) is the middle size byte > - // * CMOS(0x5b) is the least significant size byte >// * The size is specified in 64kb chunks >// > - Size = (CmosRead16 (0x5c) << 8) + CmosRead8 (0x5b); > + Size = (CmosRead16 (CMOS_SYSTEM_MEM_ABOVE_4GB_MIDDLE_BYTE) > << 8) > + + CmosRead8 (CMOS_SYSTEM_MEM_ABOVE_4GB_LOW_BYTE); > >return LShiftU64 (Size, 16); > } > diff --git > a/Platform/Intel/SimicsOpenBoardPkg/SmbiosPlatformDxe/SmbiosPla
Re: [edk2-devel] [PATCH v2 061/105] .mailmap: Add an entry for Michael Kubacki
Phil, thanks for your effort to put this together. Reviewed-by: Michael Kubacki > -Original Message- > From: devel@edk2.groups.io On Behalf Of Philippe > Mathieu-Daudé > Sent: Friday, December 6, 2019 3:26 AM > To: devel@edk2.groups.io > Cc: Philippe Mathieu-Daude ; Kubacki, Michael A > > Subject: [edk2-devel] [PATCH v2 061/105] .mailmap: Add an entry for > Michael Kubacki > > We use .mailmap to display contributors email addresses in an uniform > format. > > Add an entry for Michael Kubacki to have his name and email address > displayed properly in the git history. > > Cc: Michael Kubacki > Signed-off-by: Philippe Mathieu-Daude > --- > [Due to MTA restricting the recipient list to 100, I can not Cc all the named > developers in the cover. Therefore I'm adapting the explaination from the > cover in each patch] > > This patch won't get merged if Michael Kubacki doesn't give his approval, by > replying to this patch with: > Reviewed-by: Michael Kubacki > > If you think this patch is inappropriate, you don't need to justify, reply > with: > NAcked-by: Michael Kubacki or simply: > NACK > > If your Firstname Lastname order is incorrect, tell me and I will fix it. > > You can also ignore this mail, but I might resend it and keep bothering you. > > Regards, > > Phil. > --- > .mailmap | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/.mailmap b/.mailmap > index a8bffe9d4729..822a65a6aad7 100644 > --- a/.mailmap > +++ b/.mailmap > @@ -119,3 +119,5 @@ Michael Kinney > Michael Kinney > > Michael Kinney > Michael Kinney > > > +Michael Kubacki Michael Kubacki > + +(FYDIBOHF25SPDLT)/cn=Recipients/cn=3c8b0226e75f4ab08d20c151cb7a8a7 > 2> > -- > 2.21.0 > > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#52019): https://edk2.groups.io/g/devel/message/52019 Mute This Topic: https://groups.io/mt/67468046/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[edk2-devel] [edk2-platforms][PATCH V2 44/47] DebugFeaturePkg: Remove the ACPI Debug feature
Removes the ACPI Debug feature from DebugFeaturePkg. The feature does not follow the advanced feature design. The feature has been moved to Features/Intel/Debugging/AcpiDebugFeaturePkg. Cc: Eric Dong Cc: Liming Gao Signed-off-by: Michael Kubacki --- Platform/Intel/DebugFeaturePkg/DebugFeaturePkg.dsc| 10 - Platform/Intel/DebugFeaturePkg/AcpiDebug/AcpiDebugDxe.inf | 57 --- Platform/Intel/DebugFeaturePkg/AcpiDebug/AcpiDebugSmm.inf | 59 --- Platform/Intel/DebugFeaturePkg/AcpiDebug/AcpiDebug.c | 523 Platform/Intel/DebugFeaturePkg/AcpiDebug/AcpiDebug.asl| 103 Platform/Intel/DebugFeaturePkg/AcpiDebug/Readme.txt | 31 -- 6 files changed, 783 deletions(-) diff --git a/Platform/Intel/DebugFeaturePkg/DebugFeaturePkg.dsc b/Platform/Intel/DebugFeaturePkg/DebugFeaturePkg.dsc index efe705bd76..c43dd63a06 100644 --- a/Platform/Intel/DebugFeaturePkg/DebugFeaturePkg.dsc +++ b/Platform/Intel/DebugFeaturePkg/DebugFeaturePkg.dsc @@ -71,14 +71,6 @@ MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf -[LibraryClasses.common.DXE_SMM_DRIVER] - ### - # Edk2 Packages - ### - HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf - MemoryAllocationLib|MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf - SmmServicesTableLib|MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf - ### # # Components Section - list of the modules and components that will be processed by compilation @@ -113,8 +105,6 @@ DebugFeaturePkg/Library/Usb3DebugPortParameterLibPcd/Usb3DebugPortParameterLibPcd.inf # Add components here that should be included in the package build. - DebugFeaturePkg/AcpiDebug/AcpiDebugDxe.inf - DebugFeaturePkg/AcpiDebug/AcpiDebugSmm.inf [BuildOptions] *_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES diff --git a/Platform/Intel/DebugFeaturePkg/AcpiDebug/AcpiDebugDxe.inf b/Platform/Intel/DebugFeaturePkg/AcpiDebug/AcpiDebugDxe.inf deleted file mode 100644 index 7473126b11..00 --- a/Platform/Intel/DebugFeaturePkg/AcpiDebug/AcpiDebugDxe.inf +++ /dev/null @@ -1,57 +0,0 @@ -### @file -# Component description file for Acpi debug module. -# -# Copyright (c) 2019, Intel Corporation. All rights reserved. -# -# SPDX-License-Identifier: BSD-2-Clause-Patent -# -### - -[Defines] - INF_VERSION= 0x00010005 - BASE_NAME = AcpiDebugDxe - FILE_GUID = EC98FF95-242C-4513-B1BC-69FA24111C58 - MODULE_TYPE= DXE_DRIVER - VERSION_STRING = 1.0 - ENTRY_POINT= InitializeAcpiDebugDxe -# -# The following information is for reference only and not required by the build tools. -# -# VALID_ARCHITECTURES = IA32 X64 IPF -# - -[LibraryClasses] - BaseLib - BaseMemoryLib - UefiBootServicesTableLib - UefiDriverEntryPoint - DebugLib - PcdLib - DxeServicesLib - -[Packages] - MdePkg/MdePkg.dec - MdeModulePkg/MdeModulePkg.dec - DebugFeaturePkg/DebugFeaturePkg.dec - -[Pcd] - gDebugFeaturePkgTokenSpaceGuid.PcdAcpiDebugEnable ## CONSUMES - gDebugFeaturePkgTokenSpaceGuid.PcdAcpiDebugBufferSize ## CONSUMES - gDebugFeaturePkgTokenSpaceGuid.PcdAcpiDebugAddress ## PRODUCES - -[Sources] - AcpiDebug.c - AcpiDebug.asl - -[Protocols] - gEfiAcpiTableProtocolGuid ## CONSUMES - gEfiSmmBase2ProtocolGuid ## CONSUMES # only for SMM version - gEfiSmmSwDispatch2ProtocolGuid## CONSUMES # only for SMM version - gEfiSmmEndOfDxeProtocolGuid ## NOTIFY # only for SMM version - -[Guids] - gEfiEndOfDxeEventGroupGuid## CONSUMES ## Event - -[Depex] - gEfiAcpiTableProtocolGuid - diff --git a/Platform/Intel/DebugFeaturePkg/AcpiDebug/AcpiDebugSmm.inf b/Platform/Intel/DebugFeaturePkg/AcpiDebug/AcpiDebugSmm.inf deleted file mode 100644 index 679f9eb014..00 --- a/Platform/Intel/DebugFeaturePkg/AcpiDebug/AcpiDebugSmm.inf +++ /dev/null @@ -1,59 +0,0 @@ -### @file -# Component description file for Acpi Debug module. -# -# Copyright (c) 2019, Intel Corporation. All rights reserved. -# -# SPDX-License-Identifier: BSD-2-Clause-Patent -# -### - -[Defines] - INF_VERSION= 0x00010005 - BASE_NAME = AcpiDebugSmm - FILE_GUID = 9069C144-0A7E-41ef-9C07-418BCA9BF939 - MODULE_TYPE= DXE_SMM_DRIVER - VERSION_STRING = 1.0 - PI_SPECIFICATION_VERSION = 0x0001000A - ENTRY_POINT= InitializeAcpiDebugSmm -# -# The following information is for reference only and not required by the build tools. -# -# VALID_ARCHITECTURES = IA32 X64 IPF -# - -[LibraryClasses] - BaseLib - BaseMemoryLib -
[edk2-devel] [edk2-platforms][PATCH V2 47/47] Maintainers.txt: Update Intel feature maintainers
Cc: Dandan Bi Cc: Sai Chaganty Cc: Eric Dong Cc: Liming Gao Signed-off-by: Michael Kubacki Reviewed-by: Nate DeSimone --- Maintainers.txt | 32 ++-- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/Maintainers.txt b/Maintainers.txt index cb7ae0a95d..8cea67e310 100644 --- a/Maintainers.txt +++ b/Maintainers.txt @@ -124,6 +124,22 @@ F: Silicon/Hisilicon/ M: Leif Lindholm R: Ard Biesheuvel +Features/Intel +F: Features/Intel/ +M: Michael Kubacki +M: Sai Chaganty +R: Liming Gao + +Features/Intel/Debugging +F: Features/Intel/Debugging/ +M: Eric Dong +R: Liming Gao + +Features/Intel/UserInterface +F: Features/Intel/UserInterface/ +M: Dandan Bi +R: Liming Gao + Platform/Intel/QuarkPlatformPkg F: Platform/Intel/QuarkPlatformPkg/ M: Michael D Kinney @@ -134,27 +150,11 @@ F: Platform/Intel/Vlv2TbltDevicePkg/ M: Zailiang Sun M: Yi Qian -Platform/Intel/AdvancedFeaturePkg -F: Platform/Intel/AdvancedFeaturePkg/ -M: Michael Kubacki -M: Sai Chaganty -R: Liming Gao - Platform/Intel/BoardModulePkg F: Platform/Intel/BoardModulePkg/ M: Eric Dong R: Liming Gao -Platform/Intel/DebugFeaturePkg -F: Platform/Intel/DebugFeaturePkg/ -M: Eric Dong -R: Liming Gao - -Platform/Intel/UserInterfaceFeaturePkg -F: Platform/Intel/UserInterfaceFeaturePkg/ -M: Dandan Bi -R: Liming Gao - Platform/Intel/KabylakeOpenBoardPkg F: Platform/Intel/KabylakeOpenBoardPkg/ M: Chasel Chiu -- 2.16.2.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#51435): https://edk2.groups.io/g/devel/message/51435 Mute This Topic: https://groups.io/mt/63584865/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[edk2-devel] [edk2-platforms][PATCH V2 40/47] Platform/Intel/AdvancedFeaturePkg: Remove the S3 feature
Removes the S3 feature from AdvancedFeaturePkg. The feature does not follow the advanced feature design. The feature has been moved to Features/Intel/PowerManagement/S3FeaturePkg. Cc: Sai Chaganty Cc: Liming Gao Signed-off-by: Michael Kubacki Reviewed-by: Nate DeSimone --- Platform/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc | 6 Platform/Intel/AdvancedFeaturePkg/S3/S3Pei.inf | 31 - Platform/Intel/AdvancedFeaturePkg/S3/S3Pei.c | 36 3 files changed, 73 deletions(-) diff --git a/Platform/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc b/Platform/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc index b83e72b48c..885b84e2df 100644 --- a/Platform/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc +++ b/Platform/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc @@ -102,11 +102,6 @@ MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf PcdLib|MdePkg/Library/PeiPcdLib/PeiPcdLib.inf - ### - # Silicon Initialization Package - ### - SmmAccessLib|IntelSiliconPkg/Feature/SmmAccess/Library/PeiSmmAccessLib/PeiSmmAccessLib.inf - [LibraryClasses.common.DXE_CORE,LibraryClasses.common.DXE_SMM_DRIVER,LibraryClasses.common.SMM_CORE,LibraryClasses.common.DXE_DRIVER,LibraryClasses.common.DXE_RUNTIME_DRIVER,LibraryClasses.common.UEFI_DRIVER,LibraryClasses.common.UEFI_APPLICATION] ### # Edk2 Packages @@ -158,7 +153,6 @@ AdvancedFeaturePkg/Ipmi/IpmiInit/PeiIpmiInit.inf AdvancedFeaturePkg/Ipmi/OsWdt/OsWdt.inf AdvancedFeaturePkg/Ipmi/SolStatus/SolStatus.inf - AdvancedFeaturePkg/S3/S3Pei.inf AdvancedFeaturePkg/Smbios/SmbiosBasicDxe/SmbiosBasicDxe.inf [BuildOptions] diff --git a/Platform/Intel/AdvancedFeaturePkg/S3/S3Pei.inf b/Platform/Intel/AdvancedFeaturePkg/S3/S3Pei.inf deleted file mode 100644 index 847edd20c0..00 --- a/Platform/Intel/AdvancedFeaturePkg/S3/S3Pei.inf +++ /dev/null @@ -1,31 +0,0 @@ -### @file -# Component information file for the S3 PEI module. -# -# Copyright (c) 2019, Intel Corporation. All rights reserved. -# -# SPDX-License-Identifier: BSD-2-Clause-Patent -# -### - -[Defines] - INF_VERSION= 0x00010017 - BASE_NAME = S3Pei - FILE_GUID = 8683EFB2-FDE1-4AFF-B2DB-E96449FDD4E9 - VERSION_STRING = 1.0 - MODULE_TYPE= PEIM - ENTRY_POINT= S3PeiEntryPoint - -[LibraryClasses] - PeimEntryPoint - PeiServicesLib - SmmAccessLib - -[Packages] - MdePkg/MdePkg.dec - IntelSiliconPkg/IntelSiliconPkg.dec - -[Sources] - S3Pei.c - -[Depex] - gEfiPeiMemoryDiscoveredPpiGuid diff --git a/Platform/Intel/AdvancedFeaturePkg/S3/S3Pei.c b/Platform/Intel/AdvancedFeaturePkg/S3/S3Pei.c deleted file mode 100644 index b0aaa04962..00 --- a/Platform/Intel/AdvancedFeaturePkg/S3/S3Pei.c +++ /dev/null @@ -1,36 +0,0 @@ -/** @file - Source code file for S3 PEI module - -Copyright (c) 2019, Intel Corporation. All rights reserved. -SPDX-License-Identifier: BSD-2-Clause-Patent - -**/ - -#include -#include - -/** - S3 PEI module entry point - - @param[in] FileHandle Not used. - @param[in] PeiServices General purpose services available to every PEIM. - - @retval EFI_SUCCESS The function completes successfully - @retval EFI_OUT_OF_RESOURCES Insufficient resources to create database -**/ -EFI_STATUS -EFIAPI -S3PeiEntryPoint ( - IN EFI_PEI_FILE_HANDLE FileHandle, - IN CONST EFI_PEI_SERVICES **PeiServices - ) -{ - EFI_STATUS Status; - - // - // Install EFI_PEI_MM_ACCESS_PPI for S3 resume case - // - Status = PeiInstallSmmAccessPpi (); - - return Status; -} -- 2.16.2.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#51428): https://edk2.groups.io/g/devel/message/51428 Mute This Topic: https://groups.io/mt/63584254/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[edk2-devel] [edk2-platforms][PATCH V2 43/47] Platform/Intel/AdvancedFeaturePkg: Remove remaining contents
This change removes the remaining files in AdvancedFeaturePkg that were located in Platform/Intel. Cc: Sai Chaganty Cc: Liming Gao Signed-off-by: Michael Kubacki Reviewed-by: Nate DeSimone --- Platform/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dec | 30 Platform/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc | 79 Platform/Intel/AdvancedFeaturePkg/Include/Dsc/CoreAdvancedDxeInclude.dsc | 15 Platform/Intel/AdvancedFeaturePkg/Include/Dsc/CoreAdvancedPeiInclude.dsc | 9 --- Platform/Intel/AdvancedFeaturePkg/Include/Fdf/CoreAdvancedLateInclude.fdf | 14 Platform/Intel/AdvancedFeaturePkg/Include/Fdf/CoreAdvancedPostMemoryInclude.fdf | 8 -- Platform/Intel/AdvancedFeaturePkg/Include/Fdf/CoreAdvancedPreMemoryInclude.fdf | 9 --- 7 files changed, 164 deletions(-) diff --git a/Platform/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dec b/Platform/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dec deleted file mode 100644 index 6cd333d498..00 --- a/Platform/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dec +++ /dev/null @@ -1,30 +0,0 @@ -## @file -# This package provides the modules that build for a full feature platform. -# This AdvancedFeaturePkg should only depend on EDKII Core packages and MinPlatformPkg. -# -# The DEC files are used by the utilities that parse DSC and -# INF files to generate AutoGen.c and AutoGen.h files -# for the build infrastructure. -# -# Copyright (c) 2017 - 2019, Intel Corporation. All rights reserved. -# -# SPDX-License-Identifier: BSD-2-Clause-Patent -# -## - - -[Defines] -DEC_SPECIFICATION = 0x00010017 -PACKAGE_NAME = AdvancedFeaturePkg -PACKAGE_VERSION = 0.1 -PACKAGE_GUID = 290127D9-ABED-4DD8-A35D-73DCB4261BCB - - -[Includes] -Include - -[Guids] -gAdvancedFeaturePkgTokenSpaceGuid = {0xa8514688, 0x6693, 0x4ab5, {0xaa, 0xc8, 0xcc, 0xa9, 0x8d, 0xde, 0x90, 0xe1}} - -[PcdsFeatureFlag] - gAdvancedFeaturePkgTokenSpaceGuid.PcdNetworkEnable |FALSE|BOOLEAN|0xF0A1 diff --git a/Platform/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc b/Platform/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc deleted file mode 100644 index 4b8ccf3375..00 --- a/Platform/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc +++ /dev/null @@ -1,79 +0,0 @@ -## @file -# Advanced Feature Package build description file. -# -# Copyright (c) 2017 - 2019, Intel Corporation. All rights reserved. -# -# SPDX-License-Identifier: BSD-2-Clause-Patent -# -## - - -# -# Defines Section - statements that will be processed to create a Makefile. -# - -[Defines] - PLATFORM_NAME = AdvancedFeaturePkg - PLATFORM_GUID = 5E4C05BC-C5F0-4843-BAE1-3AAFE269DB8F - PLATFORM_VERSION= 0.1 - DSC_SPECIFICATION = 0x00010005 - OUTPUT_DIRECTORY= Build/AdvancedFeaturePkg - SUPPORTED_ARCHITECTURES = IA32|X64 - BUILD_TARGETS = DEBUG|RELEASE - SKUID_IDENTIFIER= DEFAULT - - -# -# SKU Identification section - list of all SKU IDs supported. -# - -[SkuIds] - 0|DEFAULT # The entry: 0|DEFAULT is reserved and always required. - - -# -# Pcd Section - list of all EDK II PCD Entries defined by this package. -# - - -[PcdsFeatureFlag] - - -# -# Library Class section - list of all Library Classes needed by this package. -# - - -[LibraryClasses.common] - -### -# -# Components Section - list of the modules and components that will be processed by compilation -# tools and the EDK II tools to generate PE32/PE32+/Coff image files. -# -# Note: The EDK II DSC file is not used to specify how compiled binary images get placed -# into firmware volume images. This section is just a list of modules to compile from -# source into UEFI-compliant binaries. -# It is the FDF file that contains information on combining binary files into firmware -# volume images, whose concept is beyond UEFI and is described in PI specification. -# Binary modules do not need to be listed in this section, as they should be -# specified in the FDF file. For example: Shell binary
[edk2-devel] [edk2-platforms][PATCH V2 39/47] MinPlatformPkg: Install advanced feature FVs by stage enabled
This change updates the FvReportLib instance in MinPlatformPkg to only install advanced feature firmware volumes if the advanced feature stage should be active. Cc: Chasel Chiu Cc: Nate DeSimone Cc: Liming Gao Signed-off-by: Michael Kubacki Reviewed-by: Nate DeSimone --- Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec | 1 + Platform/Intel/MinPlatformPkg/PlatformInit/Library/PeiReportFvLib/PeiReportFvLib.inf | 1 + Platform/Intel/MinPlatformPkg/PlatformInit/Library/PeiReportFvLib/PeiReportFvLib.c | 50 +++- 3 files changed, 29 insertions(+), 23 deletions(-) diff --git a/Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec b/Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec index 21013cc87c..7f74ac9380 100644 --- a/Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec +++ b/Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec @@ -272,6 +272,7 @@ SetCacheMtrrLib|Include/Library/SetCacheMtrrLib.h # Stage 3 - boot to shell only # Stage 4 - boot to OS # Stage 5 - boot to OS with security boot enabled + # Stage 6 - boot with advanced features enabled # gMinPlatformPkgTokenSpaceGuid.PcdBootStage|4|UINT8|0xF0A0 diff --git a/Platform/Intel/MinPlatformPkg/PlatformInit/Library/PeiReportFvLib/PeiReportFvLib.inf b/Platform/Intel/MinPlatformPkg/PlatformInit/Library/PeiReportFvLib/PeiReportFvLib.inf index 1ce3034fcc..ef03e110bd 100644 --- a/Platform/Intel/MinPlatformPkg/PlatformInit/Library/PeiReportFvLib/PeiReportFvLib.inf +++ b/Platform/Intel/MinPlatformPkg/PlatformInit/Library/PeiReportFvLib/PeiReportFvLib.inf @@ -30,6 +30,7 @@ PeiReportFvLib.c [Pcd] + gMinPlatformPkgTokenSpaceGuid.PcdBootStage ## CONSUMES gMinPlatformPkgTokenSpaceGuid.PcdFspWrapperBootMode ## CONSUMES gMinPlatformPkgTokenSpaceGuid.PcdFlashAreaBaseAddress ## CONSUMES gMinPlatformPkgTokenSpaceGuid.PcdFlashAreaSize ## CONSUMES diff --git a/Platform/Intel/MinPlatformPkg/PlatformInit/Library/PeiReportFvLib/PeiReportFvLib.c b/Platform/Intel/MinPlatformPkg/PlatformInit/Library/PeiReportFvLib/PeiReportFvLib.c index b61587f6e3..0d805d6fe7 100644 --- a/Platform/Intel/MinPlatformPkg/PlatformInit/Library/PeiReportFvLib/PeiReportFvLib.c +++ b/Platform/Intel/MinPlatformPkg/PlatformInit/Library/PeiReportFvLib/PeiReportFvLib.c @@ -40,20 +40,22 @@ ReportPreMemFv ( NULL, 0 ); - DEBUG (( -DEBUG_INFO, -"Install FlashFvAdvancedPreMemory - 0x%x, 0x%x\n", -PcdGet32 (PcdFlashFvAdvancedPreMemoryBase), -PcdGet32 (PcdFlashFvAdvancedPreMemorySize) -)); - PeiServicesInstallFvInfo2Ppi ( -&(((EFI_FIRMWARE_VOLUME_HEADER *) (UINTN) PcdGet32 (PcdFlashFvAdvancedPreMemoryBase))->FileSystemGuid), -(VOID *) (UINTN) PcdGet32 (PcdFlashFvAdvancedPreMemoryBase), -PcdGet32 (PcdFlashFvAdvancedPreMemorySize), -NULL, -NULL, -0 -); + if (PcdGet8 (PcdBootStage) >= 6) { +DEBUG (( + DEBUG_INFO, + "Install FlashFvAdvancedPreMemory - 0x%x, 0x%x\n", + PcdGet32 (PcdFlashFvAdvancedPreMemoryBase), + PcdGet32 (PcdFlashFvAdvancedPreMemorySize) + )); +PeiServicesInstallFvInfo2Ppi ( + &(((EFI_FIRMWARE_VOLUME_HEADER *) (UINTN) PcdGet32 (PcdFlashFvAdvancedPreMemoryBase))->FileSystemGuid), + (VOID *) (UINTN) PcdGet32 (PcdFlashFvAdvancedPreMemoryBase), + PcdGet32 (PcdFlashFvAdvancedPreMemorySize), + NULL, + NULL, + 0 + ); + } } VOID @@ -122,15 +124,17 @@ ReportPostMemFv ( NULL, 0 ); -DEBUG ((DEBUG_INFO, "Install FlashFvAdvanced - 0x%x, 0x%x\n", PcdGet32 (PcdFlashFvAdvancedBase), PcdGet32 (PcdFlashFvAdvancedSize))); -PeiServicesInstallFvInfo2Ppi ( - &(((EFI_FIRMWARE_VOLUME_HEADER *) (UINTN) PcdGet32 (PcdFlashFvAdvancedBase))->FileSystemGuid), - (VOID *) (UINTN) PcdGet32 (PcdFlashFvAdvancedBase), - PcdGet32 (PcdFlashFvAdvancedSize), - NULL, - NULL, - 0 - ); +if (PcdGet8 (PcdBootStage) >= 6) { + DEBUG ((DEBUG_INFO, "Install FlashFvAdvanced - 0x%x, 0x%x\n", PcdGet32 (PcdFlashFvAdvancedBase), PcdGet32 (PcdFlashFvAdvancedSize))); + PeiServicesInstallFvInfo2Ppi ( +&(((EFI_FIRMWARE_VOLUME_HEADER *) (UINTN) PcdGet32 (PcdFlashFvAdvancedBase))->FileSystemGuid), +(VOID *) (UINTN) PcdGet32 (PcdFlashFvAdvancedBase), +PcdGet32 (PcdFlashFvAdvancedSize), +NULL, +NULL, +0 +); +} } // -- 2.16.2.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#51427): https://edk2.groups.io/g/devel/message/51427 Mute This Topic: https://groups.io/mt/63584191/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[edk2-devel] [edk2-platforms][PATCH V2 35/47] KabylakeOpenBoardPkg/GalagoPro3: Enable advanced features
This change enables advanced features to be used by the GalagoPro3 board in KabylakeOpenBoardPkg. Some platform macros in OpenBoardPkg.dsc are consolidated so all values are set at the top of the file before including advanced feature code. Cc: Chasel Chiu Cc: Nate DeSimone Signed-off-by: Michael Kubacki Reviewed-by: Nate DeSimone --- Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.dsc| 46 +--- Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkgPcd.dsc | 1 + Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.fdf| 4 ++ 3 files changed, 25 insertions(+), 26 deletions(-) diff --git a/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.dsc b/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.dsc index d4ca2daa18..a39547f41f 100644 --- a/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.dsc +++ b/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.dsc @@ -16,38 +16,32 @@ DEFINE PROJECT = $(PLATFORM_BOARD_PACKAGE)/$(BOARD) DEFINE PEI_ARCH= IA32 DEFINE DXE_ARCH= X64 - - # - # Include PCD configuration for this board. - # - !include OpenBoardPkgPcd.dsc - - -# -# Defines Section - statements that will be processed to create a Makefile. -# - -[Defines] - PLATFORM_NAME = $(PLATFORM_PACKAGE) - PLATFORM_GUID = 7324F33D-4E96-4F8B-A550-544DE6162AB7 - PLATFORM_VERSION= 0.1 - DSC_SPECIFICATION = 0x00010005 - OUTPUT_DIRECTORY= Build/$(PROJECT) - SUPPORTED_ARCHITECTURES = IA32|X64 - BUILD_TARGETS = DEBUG|RELEASE - SKUID_IDENTIFIER= ALL - - - FLASH_DEFINITION= $(PROJECT)/OpenBoardPkg.fdf - - FIX_LOAD_TOP_MEMORY_ADDRESS = 0x0 - DEFINE TOP_MEMORY_ADDRESS = 0x0 + DEFINE TOP_MEMORY_ADDRESS = 0x0 # # Default value for OpenBoardPkg.fdf use # DEFINE BIOS_SIZE_OPTION = SIZE_60 + PLATFORM_NAME = $(PLATFORM_PACKAGE) + PLATFORM_GUID = 7324F33D-4E96-4F8B-A550-544DE6162AB7 + PLATFORM_VERSION= 0.1 + DSC_SPECIFICATION = 0x00010005 + OUTPUT_DIRECTORY= Build/$(PROJECT) + SUPPORTED_ARCHITECTURES = IA32|X64 + BUILD_TARGETS = DEBUG|RELEASE + SKUID_IDENTIFIER= ALL + + FLASH_DEFINITION= $(PROJECT)/OpenBoardPkg.fdf + FIX_LOAD_TOP_MEMORY_ADDRESS = 0x0 + + # + # Include PCD configuration for this board. + # + !include AdvancedFeaturePkg/TemporaryBuildWorkaround/TemporaryBuildWorkaround.dsc + !include OpenBoardPkgPcd.dsc + !include AdvancedFeaturePkg/Include/AdvancedFeatures.dsc + # # SKU Identification section - list of all SKU IDs supported by this board. diff --git a/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkgPcd.dsc b/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkgPcd.dsc index c6f5ae7534..7393897249 100644 --- a/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkgPcd.dsc +++ b/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkgPcd.dsc @@ -24,6 +24,7 @@ # Stage 3 - boot to shell only # Stage 4 - boot to OS # Stage 5 - boot to OS with security boot enabled + # Stage 6 - boot with advanced features enabled # gMinPlatformPkgTokenSpaceGuid.PcdBootStage|4 diff --git a/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.fdf b/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.fdf index 0a9b933e40..da94ed0cd1 100644 --- a/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.fdf +++ b/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.fdf @@ -631,6 +631,8 @@ READ_LOCK_CAP = TRUE READ_LOCK_STATUS = TRUE FvNameGuid = 6053D78A-457E-4490-A237-31D0FBE2F305 +!include AdvancedFeaturePkg/Include/PreMemory.fdf + !if gKabylakeOpenBoardPkgTokenSpaceGuid.PcdTbtEnable == TRUE INF $(PLATFORM_BOARD_PACKAGE)/Features/Tbt/TbtInit/Pei/PeiTbtInit.inf !endif @@ -657,6 +659,8 @@ READ_LOCK_CAP = TRUE READ_LOCK_STATUS = TRUE FvNameGuid = BE3DF86F-E464-44A3-83F7-0D27E6B88C27 +!include AdvancedFeaturePkg/Include/PostMemory.fdf + !if gKabylakeOpenBoardPkgTokenSpaceGuid.PcdTbtEnable == TRUE INF $(PLATFORM_BOARD_PACKAGE)/Features/Tbt/TbtInit/Dxe/TbtDxe.inf INF $(PLATFORM_BOARD_PACKAGE)/Features/PciHotPlug/PciHotPlug.inf -- 2.16.2.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You
[edk2-devel] [edk2-platforms][PATCH V2 38/47] SimicsOpenBoardPkg: Use new advanced feature refactor
Updates advanced feature references in SimicsOpenBoardPkg to the new advanced feature packages in Features/Intel. Previously, the advanced features in Platform/Intel were used. SimicsOpenBoardPkg currently uses the SMBIOS and Network advanced features. These are the same features used by the package prior to the advanced feature refactor. Note that SimicsOpenBoardPkg depends upon these advanced features even when the boot stage is less than the advanced feature stage. This bug was not fixed in this commit and is filed to be resolved in the following Bugzilla item: https://bugzilla.tianocore.org/show_bug.cgi?id=2165 Cc: Wei David Y Cc: Agyeman Prince Signed-off-by: Michael Kubacki --- Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.dsc | 11 ++- Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkgPcd.dsc | 12 ++-- Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.fdf | 10 ++ Platform/Intel/SimicsOpenBoardPkg/SmbiosPlatformDxe/SmbiosPlatformDxe.inf | 1 - 4 files changed, 10 insertions(+), 24 deletions(-) diff --git a/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.dsc b/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.dsc index 2f287a4ca4..7576648d57 100644 --- a/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.dsc +++ b/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.dsc @@ -42,8 +42,9 @@ DEFINE NETWORK_ISCSI_ENABLE = FALSE DEFINE NETWORK_ALLOW_HTTP_CONNECTIONS = TRUE + !include AdvancedFeaturePkg/TemporaryBuildWorkaround/TemporaryBuildWorkaround.dsc !include $(PROJECT)/OpenBoardPkgPcd.dsc - !include NetworkPkg/NetworkDefines.dsc.inc + !include AdvancedFeaturePkg/Include/AdvancedFeatures.dsc # @@ -80,7 +81,6 @@ #is completed [Components.X64] !include $(PLATFORM_PACKAGE)/Include/Dsc/CoreDxeInclude.dsc -!include AdvancedFeaturePkg/Include/Dsc/CoreAdvancedDxeInclude.dsc ### # Build Option Includes @@ -285,13 +285,6 @@ $(PLATFORM_PACKAGE)/Flash/SpiFvbService/SpiFvbServiceSmm.inf !endif - ### - # Advanced Feature Package - ### -!if gAdvancedFeaturePkgTokenSpaceGuid.PcdSmbiosEnable == TRUE - AdvancedFeaturePkg/Smbios/SmbiosBasicDxe/SmbiosBasicDxe.inf -!endif - ### # Board Package ### diff --git a/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkgPcd.dsc b/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkgPcd.dsc index cd95755f91..cd98d09f01 100644 --- a/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkgPcd.dsc +++ b/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkgPcd.dsc @@ -96,8 +96,8 @@ ## # Advanced Feature Configuration ## - gAdvancedFeaturePkgTokenSpaceGuid.PcdNetworkEnable|TRUE - gAdvancedFeaturePkgTokenSpaceGuid.PcdSmbiosEnable|TRUE + gNetworkFeaturePkgTokenSpaceGuid.PcdNetworkFeatureEnable|TRUE + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosFeatureEnable|TRUE [PcdsFeatureFlag.X64] ## @@ -252,10 +252,10 @@ ## # Advanced Feature Configuration ## - gAdvancedFeaturePkgTokenSpaceGuid.PcdSmbiosType0StringBiosReleaseDate|"2019-08-09" - gAdvancedFeaturePkgTokenSpaceGuid.PcdSmbiosType0StringBiosVersion|"Ver.1.0.0" - gAdvancedFeaturePkgTokenSpaceGuid.PcdSmbiosType1StringProductName|"QSP UEFI BIOS" - gAdvancedFeaturePkgTokenSpaceGuid.PcdSmbiosType2StringProductName|"QSP UEFI BIOS" + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType0StringBiosReleaseDate|"2019-08-09" + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType0StringBiosVersion|"Ver.1.0.0" + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType1StringProductName|"QSP UEFI BIOS" + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType2StringProductName|"QSP UEFI BIOS" [PcdsDynamicExDefault] ## diff --git a/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.fdf b/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.fdf index ef6b35c92f..e0a1daddee 100644 --- a/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.fdf +++ b/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.fdf @@ -155,7 +155,7 @@ INF MinPlatformPkg/PlatformInit/ReportFv/ReportFvPei.inf INF MinPlatformPkg/PlatformInit/PlatformInitPei/PlatformInitPreMem.inf INF MinPlatformPkg/PlatformInit/SiliconPolicyPei/SiliconPolicyPeiPreMem.inf !include MinPlatformPkg/Include/Fdf/CoreSecurityPreMemoryInclude.fdf -!include AdvancedFeaturePkg/Include/Fdf/CoreAdvancedPreMemoryInclude.fdf +!include
[edk2-devel] [edk2-platforms][PATCH V2 37/47] WhiskeylakeOpenBoardPkg/WhiskeylakeURvp: Enable advanced features
This change enables advanced features to be used by the WhiskeylakeURvp board in WhiskeylakeOpenBoardPkg. Some platform macros in OpenBoardPkg.dsc are consolidated so all values are set at the top of the file before including advanced feature code. Cc: Chasel Chiu Cc: Nate DeSimone Signed-off-by: Michael Kubacki Reviewed-by: Nate DeSimone --- Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoardPkg.dsc| 44 +--- Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoardPkgPcd.dsc | 1 + Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoardPkg.fdf| 4 ++ 3 files changed, 25 insertions(+), 24 deletions(-) diff --git a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoardPkg.dsc b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoardPkg.dsc index ae3fec05ed..47e156be08 100644 --- a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoardPkg.dsc +++ b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoardPkg.dsc @@ -17,36 +17,32 @@ DEFINE PROJECT = $(PLATFORM_BOARD_PACKAGE)/$(BOARD) DEFINE PEI_ARCH = IA32 DEFINE DXE_ARCH = X64 - - # - # Include PCD configuration for this board. - # - !include OpenBoardPkgPcd.dsc - - -# -# Defines Section - statements that will be processed to create a Makefile. -# - -[Defines] - PLATFORM_NAME = $(PLATFORM_PACKAGE) - PLATFORM_GUID = 84D0F5BD-0EF3-4CC0-9B09-F2D0F2AA5C5E - PLATFORM_VERSION= 0.1 - DSC_SPECIFICATION = 0x00010005 - OUTPUT_DIRECTORY= Build/$(PROJECT) - SUPPORTED_ARCHITECTURES = IA32|X64 - BUILD_TARGETS = DEBUG|RELEASE - SKUID_IDENTIFIER= ALL - FLASH_DEFINITION= $(PROJECT)/OpenBoardPkg.fdf - - FIX_LOAD_TOP_MEMORY_ADDRESS = 0x0 - DEFINE TOP_MEMORY_ADDRESS = 0x0 + DEFINE TOP_MEMORY_ADDRESS= 0x0 # # Default value for OpenBoardPkg.fdf use # DEFINE BIOS_SIZE_OPTION = SIZE_70 + PLATFORM_NAME = $(PLATFORM_PACKAGE) + PLATFORM_GUID = 84D0F5BD-0EF3-4CC0-9B09-F2D0F2AA5C5E + PLATFORM_VERSION = 0.1 + DSC_SPECIFICATION = 0x00010005 + OUTPUT_DIRECTORY = Build/$(PROJECT) + SUPPORTED_ARCHITECTURES = IA32|X64 + BUILD_TARGETS = DEBUG|RELEASE + SKUID_IDENTIFIER = ALL + + FLASH_DEFINITION = $(PROJECT)/OpenBoardPkg.fdf + FIX_LOAD_TOP_MEMORY_ADDRESS = 0x0 + + # + # Include PCD configuration for this board. + # + !include AdvancedFeaturePkg/TemporaryBuildWorkaround/TemporaryBuildWorkaround.dsc + !include OpenBoardPkgPcd.dsc + !include AdvancedFeaturePkg/Include/AdvancedFeatures.dsc + # # SKU Identification section - list of all SKU IDs supported by this board. diff --git a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoardPkgPcd.dsc b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoardPkgPcd.dsc index 52471cb25b..906f7b7ade 100644 --- a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoardPkgPcd.dsc +++ b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoardPkgPcd.dsc @@ -24,6 +24,7 @@ # Stage 3 - boot to shell only # Stage 4 - boot to OS # Stage 5 - boot to OS with security boot enabled + # Stage 6 - boot with advanced features enabled # gMinPlatformPkgTokenSpaceGuid.PcdBootStage|4 diff --git a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoardPkg.fdf b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoardPkg.fdf index 130930ad40..f39b41b186 100644 --- a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoardPkg.fdf +++ b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoardPkg.fdf @@ -623,6 +623,8 @@ READ_LOCK_CAP = TRUE READ_LOCK_STATUS = TRUE FvNameGuid = 6053D78A-457E-4490-A237-31D0FBE2F305 +!include AdvancedFeaturePkg/Include/PreMemory.fdf + !if gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdTbtEnable == TRUE INF $(PLATFORM_BOARD_PACKAGE)/Features/Tbt/TbtInit/Pei/PeiTbtInit.inf !endif @@ -649,6 +651,8 @@ READ_LOCK_CAP = TRUE READ_LOCK_STATUS = TRUE FvNameGuid = BE3DF86F-E464-44A3-83F7-0D27E6B88C27 +!include AdvancedFeaturePkg/Include/PostMemory.fdf + !if gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdTbtEnable == TRUE INF $(PLATFORM_BOARD_PACKAGE)/Features/Tbt/TbtInit/Dxe/TbtDxe.inf INF $(PLATFORM_BOARD_PACKAGE)/Features/PciHotPlug/PciHotPlug.inf -- 2.16.2.windows.1
[edk2-devel] [edk2-platforms][PATCH V2 33/47] Platform/Intel: Add advanced feature build support
This change adds the ability for board packages built with build_bios.py to build advanced features located in Features/Intel. Cc: Chasel Chiu Cc: Nate DeSimone Cc: Liming Gao Cc: Agyeman Prince Signed-off-by: Michael Kubacki Reviewed-by: Nate DeSimone --- Platform/Intel/build.cfg | 1 + Platform/Intel/build_bios.py | 3 +++ 2 files changed, 4 insertions(+) diff --git a/Platform/Intel/build.cfg b/Platform/Intel/build.cfg index e42db243f6..86a9115021 100644 --- a/Platform/Intel/build.cfg +++ b/Platform/Intel/build.cfg @@ -12,6 +12,7 @@ WORKSPACE_FSP_BIN = FSP EDK_TOOLS_BIN = edk2-BaseTools-win32 EDK_BASETOOLS = BaseTools WORKSPACE_DRIVERS = edk2-platforms/Drivers +WORKSPACE_FEATURES = edk2-platforms/Features/Intel WORKSPACE_PLATFORM = edk2-platforms/Platform/Intel WORKSPACE_SILICON = edk2-platforms/Silicon/Intel WORKSPACE_PLATFORM_BIN = diff --git a/Platform/Intel/build_bios.py b/Platform/Intel/build_bios.py index ea098de705..1ef35aca0a 100644 --- a/Platform/Intel/build_bios.py +++ b/Platform/Intel/build_bios.py @@ -104,6 +104,8 @@ def pre_build(build_config, build_type="DEBUG", silent=False, toolchain=None): config["WORKSPACE_PLATFORM"]) config["WORKSPACE_SILICON"] = os.path.join(config["WORKSPACE"], config["WORKSPACE_SILICON"]) +config["WORKSPACE_FEATURES"] = os.path.join(config["WORKSPACE"], + config["WORKSPACE_FEATURES"]) config["WORKSPACE_DRIVERS"] = os.path.join(config["WORKSPACE"], config["WORKSPACE_DRIVERS"]) config["WORKSPACE_PLATFORM_BIN"] = \ @@ -117,6 +119,7 @@ def pre_build(build_config, build_type="DEBUG", silent=False, toolchain=None): config["PACKAGES_PATH"] = config["WORKSPACE_PLATFORM"] config["PACKAGES_PATH"] += os.pathsep + config["WORKSPACE_SILICON"] config["PACKAGES_PATH"] += os.pathsep + config["WORKSPACE_SILICON_BIN"] +config["PACKAGES_PATH"] += os.pathsep + config["WORKSPACE_FEATURES"] config["PACKAGES_PATH"] += os.pathsep + config["WORKSPACE_DRIVERS"] config["PACKAGES_PATH"] += os.pathsep + \ os.path.join(config["WORKSPACE"], "FSP") -- 2.16.2.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#51418): https://edk2.groups.io/g/devel/message/51418 Mute This Topic: https://groups.io/mt/63459858/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[edk2-devel] [edk2-platforms][PATCH V2 34/47] Platform/Intel/Readme.md Content update
Updates the advanced feature location referenced in Readme.md to edk2-platforms/Features/Intel. Cc: Dandan Bi Cc: Sai Chaganty Cc: Eric Dong Cc: Nate DeSimone Cc: Liming Gao Signed-off-by: Michael Kubacki Reviewed-by: Nate DeSimone --- Platform/Intel/Readme.md | 14 +++--- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/Platform/Intel/Readme.md b/Platform/Intel/Readme.md index 0f86978fee..02d9517d19 100644 --- a/Platform/Intel/Readme.md +++ b/Platform/Intel/Readme.md @@ -89,8 +89,7 @@ A UEFI firmware implementation using MinPlatformPkg is constructed using the fol The board package follows the standard EDK II package structure with the following additional elements and guidelines: * Only code usable across more than one board at the root level. * Board-specific code in a directory. The directory name should match that of the board supported. -* Features not essential to achieve stage 5 or earlier boots are maintained in a Features folder at the appropriate - level in the package hierarchy. +* Features not essential to achieve stage 5 or earlier boots are maintained in edk2-platforms/Features/Intel. Shared resources in the package root directory can include interfaces described in header files, library instances, firmware modules, binaries, etc. The UEFI firmware implementation is built using the process described below from the @@ -260,16 +259,17 @@ return back to the minimum platform caller. ### **Package Builds** -In some cases, such as AdvancedFeaturePkg, a package may provide a set of functionality that is included in other +In some cases, such as BoardModulePkg, a package may provide a set of functionality that is included in other packages. To test the build of the whole package, the "build" command should be used following the instructions below. 1. Execute edksetup.bat (Windows) or edksetup.sh (Linux). 2. Verify the "WORKSPACE" environment variable is set to the edk2 directory in your workspace. -3. Set the "PACKAGES_PATH" environment variable to include the edk2-platforms/Platform/Intel and edk2-platforms/Silicon/Intel - directories. - * Windows example: set PACKAGES_PATH=c:\Edk2Workspace\edk2-platforms\Platform\Intel;c:\Edk2Workspace\edk2-platforms\Silicon\Intel +3. Set the "PACKAGES_PATH" environment variable to include the edk2-platforms/Platform/Intel, edk2-platforms/Silicon/Intel, + and edk2-platforms/Features/Intel directories. + * Windows example: set PACKAGES_PATH=c:\Edk2Workspace\edk2-platforms\Platform\Intel; + c:\Edk2Workspace\edk2-platforms\Silicon\Intel;c:\Edk2Workspace\edk2-platforms\Features\Intel 4. Build the package by specifying the package DSC as the platform build target from the Platform/Intel or Silicon/Intel directory: - "build -p AdvancedFeaturePkg/AdvancedFeaturePkg.dsc" + "build -p BoardModulePkg/BoardModulePkg.dsc -a IA32 -a X64" ### **Firmware Image Flashing** -- 2.16.2.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#51419): https://edk2.groups.io/g/devel/message/51419 Mute This Topic: https://groups.io/mt/63459961/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[edk2-devel] [edk2-platforms][PATCH V2 36/47] KabylakeOpenBoardPkg/KabylakeRvp3: Enable advanced features
This change enables advanced features to be used by the KabylakeRvp3 board in KabylakeOpenBoardPkg. Some platform macros in OpenBoardPkg.dsc are consolidated so all values are set at the top of the file before including advanced feature code. Cc: Chasel Chiu Cc: Nate DeSimone Signed-off-by: Michael Kubacki Reviewed-by: Nate DeSimone --- Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.dsc| 44 +--- Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkgPcd.dsc | 1 + Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.fdf| 4 ++ 3 files changed, 25 insertions(+), 24 deletions(-) diff --git a/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.dsc b/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.dsc index 831e441d70..50be2bb624 100644 --- a/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.dsc +++ b/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.dsc @@ -15,11 +15,31 @@ DEFINE PROJECT = $(PLATFORM_BOARD_PACKAGE)/$(BOARD) DEFINE PEI_ARCH= IA32 DEFINE DXE_ARCH= X64 + DEFINE TOP_MEMORY_ADDRESS = 0x0 + + # + # Default value for OpenBoardPkg.fdf use + # + DEFINE BIOS_SIZE_OPTION = SIZE_70 + + PLATFORM_NAME = $(PLATFORM_PACKAGE) + PLATFORM_GUID = 8470676C-18E8-467F-B126-28DB1941AA5A + PLATFORM_VERSION= 0.1 + DSC_SPECIFICATION = 0x00010005 + OUTPUT_DIRECTORY= Build/$(PROJECT) + SUPPORTED_ARCHITECTURES = IA32|X64 + BUILD_TARGETS = DEBUG|RELEASE + SKUID_IDENTIFIER= ALL + FLASH_DEFINITION= $(PROJECT)/OpenBoardPkg.fdf + + FIX_LOAD_TOP_MEMORY_ADDRESS = 0x0 # # Include PCD configuration for this board. # + !include AdvancedFeaturePkg/TemporaryBuildWorkaround/TemporaryBuildWorkaround.dsc !include OpenBoardPkgPcd.dsc + !include AdvancedFeaturePkg/Include/AdvancedFeatures.dsc [Defines] !if gIntelFsp2WrapperTokenSpaceGuid.PcdFspModeSelection == 1 @@ -51,30 +71,6 @@ !endif !endif - -# -# Defines Section - statements that will be processed to create a Makefile. -# - -[Defines] - PLATFORM_NAME = $(PLATFORM_PACKAGE) - PLATFORM_GUID = 8470676C-18E8-467F-B126-28DB1941AA5A - PLATFORM_VERSION= 0.1 - DSC_SPECIFICATION = 0x00010005 - OUTPUT_DIRECTORY= Build/$(PROJECT) - SUPPORTED_ARCHITECTURES = IA32|X64 - BUILD_TARGETS = DEBUG|RELEASE - SKUID_IDENTIFIER= ALL - FLASH_DEFINITION= $(PROJECT)/OpenBoardPkg.fdf - - FIX_LOAD_TOP_MEMORY_ADDRESS = 0x0 - DEFINE TOP_MEMORY_ADDRESS = 0x0 - - # - # Default value for OpenBoardPkg.fdf use - # - DEFINE BIOS_SIZE_OPTION = SIZE_70 - # # SKU Identification section - list of all SKU IDs supported by this board. diff --git a/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkgPcd.dsc b/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkgPcd.dsc index 5474edd01c..916b5189fe 100644 --- a/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkgPcd.dsc +++ b/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkgPcd.dsc @@ -24,6 +24,7 @@ # Stage 3 - boot to shell only # Stage 4 - boot to OS # Stage 5 - boot to OS with security boot enabled + # Stage 6 - boot with advanced features enabled # gMinPlatformPkgTokenSpaceGuid.PcdBootStage|4 diff --git a/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.fdf b/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.fdf index 59f764f49c..fc1c6a9c25 100644 --- a/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.fdf +++ b/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.fdf @@ -638,6 +638,8 @@ READ_LOCK_CAP = TRUE READ_LOCK_STATUS = TRUE FvNameGuid = 6053D78A-457E-4490-A237-31D0FBE2F305 +!include AdvancedFeaturePkg/Include/PreMemory.fdf + !if gKabylakeOpenBoardPkgTokenSpaceGuid.PcdTbtEnable == TRUE INF $(PLATFORM_BOARD_PACKAGE)/Features/Tbt/TbtInit/Pei/PeiTbtInit.inf !endif @@ -664,6 +666,8 @@ READ_LOCK_CAP = TRUE READ_LOCK_STATUS = TRUE FvNameGuid = BE3DF86F-E464-44A3-83F7-0D27E6B88C27 +!include AdvancedFeaturePkg/Include/PostMemory.fdf + !if gKabylakeOpenBoardPkgTokenSpaceGuid.PcdTbtEnable == TRUE INF
[edk2-devel] [edk2-platforms][PATCH V2 25/47] KabylakeOpenBoardPkg/KabylakeRvp3: Add PEI_ARCH and DXE_ARCH
This change adds two new macros to OpenBoardPkg.dsc that identify the build architecture for PEI and DXE modules. The intention of this macro is to ensure that all DSC files that compose the package build (such as those included from MinPlatformPkg or an advanced feature package) build phase-specific drivers for the architecture defined by the board package. This is a macro that is required in all Minimum Platform board packages. Cc: Chasel Chiu Cc: Nate DeSimone Signed-off-by: Michael Kubacki Reviewed-by: Nate DeSimone --- Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.dsc | 17 + 1 file changed, 17 insertions(+) diff --git a/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.dsc b/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.dsc index 4b07c0a684..831e441d70 100644 --- a/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.dsc +++ b/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.dsc @@ -13,6 +13,8 @@ DEFINE PLATFORM_BOARD_PACKAGE = KabylakeOpenBoardPkg DEFINE BOARD = KabylakeRvp3 DEFINE PROJECT = $(PLATFORM_BOARD_PACKAGE)/$(BOARD) + DEFINE PEI_ARCH= IA32 + DEFINE DXE_ARCH= X64 # # Include PCD configuration for this board. @@ -102,10 +104,15 @@ ### # Component Includes ### + +# @todo: Change below line to [Components.$(PEI_ARCH)] after https://bugzilla.tianocore.org/show_bug.cgi?id=2308 +#is completed [Components.IA32] !include $(PLATFORM_PACKAGE)/Include/Dsc/CorePeiInclude.dsc !include $(PLATFORM_SI_PACKAGE)/SiPkgPei.dsc +# @todo: Change below line to [Components.$(DXE_ARCH)] after https://bugzilla.tianocore.org/show_bug.cgi?id=2308 +#is completed [Components.X64] !include $(PLATFORM_PACKAGE)/Include/Dsc/CoreDxeInclude.dsc !include $(PLATFORM_SI_PACKAGE)/SiPkgDxe.dsc @@ -266,6 +273,11 @@ TestPointCheckLib|$(PLATFORM_PACKAGE)/Test/Library/TestPointCheckLib/SmmTestPointCheckLib.inf !endif +### +# PEI Components +### +# @todo: Change below line to [Components.$(PEI_ARCH)] after https://bugzilla.tianocore.org/show_bug.cgi?id=2308 +#is completed [Components.IA32] ### # Edk2 Packages @@ -373,6 +385,11 @@ !endif $(PLATFORM_BOARD_PACKAGE)/BiosInfo/BiosInfo.inf +### +# DXE Components +### +# @todo: Change below line to [Components.$(DXE_ARCH)] after https://bugzilla.tianocore.org/show_bug.cgi?id=2308 +#is completed [Components.X64] ### # Edk2 Packages -- 2.16.2.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#51410): https://edk2.groups.io/g/devel/message/51410 Mute This Topic: https://groups.io/mt/63458703/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[edk2-devel] [edk2-platforms][PATCH V2 28/47] SimicsOpenBoardPkg/BoardX58Ich10: Use PEI_ARCH and DXE_ARCH
This change updates OpenBoardPkg.dsc to use the PEI_ARCH and DXE_ARCH specified in the DSC file for the board package components. An EDK II build limitation currently prevents the macros from being able to be used, so a todo has been placed with the action needed when the BaseTools update is completed as described in the following Bugzilla item: https://bugzilla.tianocore.org/show_bug.cgi?id=2308 The intention of this macro is to ensure that all DSC files that compose the package build (such as those included from MinPlatformPkg or an advanced feature package) build phase-specific drivers for the architecture defined by the board package. This is a macro that is required in all Minimum Platform board packages. Cc: Wei David Y Cc: Agyeman Prince Signed-off-by: Michael Kubacki Reviewed-by: Nate DeSimone --- Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.dsc | 14 ++ 1 file changed, 14 insertions(+) diff --git a/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.dsc b/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.dsc index 35a8c7c765..2f287a4ca4 100644 --- a/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.dsc +++ b/Platform/Intel/SimicsOpenBoardPkg/BoardX58Ich10/OpenBoardPkg.dsc @@ -70,10 +70,14 @@ ### # Component Includes ### +# @todo: Change below line to [Components.$(PEI_ARCH)] after https://bugzilla.tianocore.org/show_bug.cgi?id=2308 +#is completed [Components.IA32] !include $(PLATFORM_PACKAGE)/Include/Dsc/CorePeiInclude.dsc !include $(SKT_PKG)/SktPkgPei.dsc +# @todo: Change below line to [Components.$(DXE_ARCH)] after https://bugzilla.tianocore.org/show_bug.cgi?id=2308 +#is completed [Components.X64] !include $(PLATFORM_PACKAGE)/Include/Dsc/CoreDxeInclude.dsc !include AdvancedFeaturePkg/Include/Dsc/CoreAdvancedDxeInclude.dsc @@ -153,6 +157,11 @@ ### SpiFlashCommonLib|$(PCH_PKG)/Library/SmmSpiFlashCommonLib/SmmSpiFlashCommonLib.inf +### +# PEI Components +### +# @todo: Change below line to [Components.$(PEI_ARCH)] after https://bugzilla.tianocore.org/show_bug.cgi?id=2308 +#is completed [Components.IA32] ### # Edk2 Packages @@ -202,6 +211,11 @@ PcdLib|MdePkg/Library/PeiPcdLib/PeiPcdLib.inf } +### +# DXE Components +### +# @todo: Change below line to [Components.$(DXE_ARCH)] after https://bugzilla.tianocore.org/show_bug.cgi?id=2308 +#is completed [Components.X64] ### # Edk2 Packages -- 2.16.2.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#51413): https://edk2.groups.io/g/devel/message/51413 Mute This Topic: https://groups.io/mt/63459244/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[edk2-devel] [edk2-platforms][PATCH V2 32/47] WhiskeylakeOpenBoardPkg/WhiskeylakeURvp: Add FvAdvancedPreMemory
This change adds a standalone firmware volume for pre-memory advanced features called FvAdvancedPreMemory to the flash map. Pre-memory advanced feature modules were previously kept in a child firmware volume of FvAdvanced called FvAdvancedPreMem. This change simplifies the flash layout and separation of pre-memory and post-memory modules. Cc: Chasel Chiu Cc: Nate DeSimone Signed-off-by: Michael Kubacki Reviewed-by: Nate DeSimone --- Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Include/Fdf/FlashMapInclude.fdf | 24 +- Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoardPkg.fdf | 46 +++- 2 files changed, 28 insertions(+), 42 deletions(-) diff --git a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Include/Fdf/FlashMapInclude.fdf b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Include/Fdf/FlashMapInclude.fdf index 9209b9e88a..e0db381942 100644 --- a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Include/Fdf/FlashMapInclude.fdf +++ b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Include/Fdf/FlashMapInclude.fdf @@ -1,12 +1,10 @@ ## @file -# FDF file of Platform. -# +# FDF file for the WhiskeylakeURvp board. # # Copyright (c) 2019, Intel Corporation. All rights reserved. # # SPDX-License-Identifier: BSD-2-Clause-Patent # -# ## #=# @@ -27,23 +25,25 @@ SET gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingSize = 0x2000 SET gMinPlatformPkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareOffset = 0x0002 # Flash addr (0xFF82) SET gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize= 0x0002 # SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedOffset = 0x0004 # Flash addr (0xFF84) -SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedSize= 0x0006 # -SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvSecurityOffset = 0x000A # Flash addr (0xFF8A) +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedSize= 0x0005 # +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvSecurityOffset = 0x0009 # Flash addr (0xFF89) SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvSecuritySize= 0x0007 # -SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvOsBootOffset= 0x0011 # Flash addr (0xFF91) +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvOsBootOffset= 0x0010 # Flash addr (0xFF90) SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvOsBootSize = 0x0009 # -SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvUefiBootOffset = 0x001A # Flash addr (0xFF9A) +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvUefiBootOffset = 0x0019 # Flash addr (0xFF99) SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvUefiBootSize= 0x0019 # -SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvPostMemoryOffset= 0x0033 # Flash addr (0xFFB3) +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvPostMemoryOffset= 0x0032 # Flash addr (0xFFB2) SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvPostMemorySize = 0x0017 # -SET gSiPkgTokenSpaceGuid.PcdFlashMicrocodeFvOffset = 0x004A # Flash addr (0xFFCA) +SET gSiPkgTokenSpaceGuid.PcdFlashMicrocodeFvOffset = 0x0049 # Flash addr (0xFFC9) SET gSiPkgTokenSpaceGuid.PcdFlashMicrocodeFvSize= 0x000B # -SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspSOffset = 0x0055 # Flash addr (0xFFD5) +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspSOffset = 0x0054 # Flash addr (0xFFD4) SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspSSize= 0x0007 # -SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspMOffset = 0x005C # Flash addr (0xFFDC) +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspMOffset = 0x005B # Flash addr (0xFFDB) SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspMSize= 0x000EC000 # -SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspTOffset = 0x006AC000 # Flash addr (0xFFEAC000) +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspTOffset = 0x0069C000 # Flash addr (0xFFE9C000) SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspTSize= 0x00014000 # +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedPreMemoryOffset = 0x006B # Flash addr (0xFFEB) +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedPreMemorySize = 0x0001 # SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvPreMemoryOffset = 0x006C # Flash addr (0xFFEC) SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvPreMemorySize = 0x0014 # diff --git a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoardPkg.fdf
[edk2-devel] [edk2-platforms][PATCH V2 26/47] KabylakeOpenBoardPkg/GalagoPro3: Add PEI_ARCH and DXE_ARCH
This change adds two new macros to OpenBoardPkg.dsc that identify the build architecture for PEI and DXE modules. The intention of this macro is to ensure that all DSC files that compose the package build (such as those included from MinPlatformPkg or an advanced feature package) build phase-specific drivers for the architecture defined by the board package. This is a macro that is required in all Minimum Platform board packages. Cc: Chasel Chiu Cc: Nate DeSimone Signed-off-by: Michael Kubacki Reviewed-by: Nate DeSimone --- Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.dsc | 16 1 file changed, 16 insertions(+) diff --git a/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.dsc b/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.dsc index acdc31e708..d4ca2daa18 100644 --- a/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.dsc +++ b/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.dsc @@ -14,6 +14,8 @@ DEFINE PLATFORM_BOARD_PACKAGE = KabylakeOpenBoardPkg DEFINE BOARD = GalagoPro3 DEFINE PROJECT = $(PLATFORM_BOARD_PACKAGE)/$(BOARD) + DEFINE PEI_ARCH= IA32 + DEFINE DXE_ARCH= X64 # # Include PCD configuration for this board. @@ -74,10 +76,14 @@ ### # Component Includes ### +# @todo: Change below line to [Components.$(PEI_ARCH)] after https://bugzilla.tianocore.org/show_bug.cgi?id=2308 +#is completed [Components.IA32] !include $(PLATFORM_PACKAGE)/Include/Dsc/CorePeiInclude.dsc !include $(PLATFORM_SI_PACKAGE)/SiPkgPei.dsc +# @todo: Change below line to [Components.$(DXE_ARCH)] after https://bugzilla.tianocore.org/show_bug.cgi?id=2308 +#is completed [Components.X64] !include $(PLATFORM_PACKAGE)/Include/Dsc/CoreDxeInclude.dsc !include $(PLATFORM_SI_PACKAGE)/SiPkgDxe.dsc @@ -228,6 +234,11 @@ TestPointCheckLib|$(PLATFORM_PACKAGE)/Test/Library/TestPointCheckLib/SmmTestPointCheckLib.inf !endif +### +# PEI Components +### +# @todo: Change below line to [Components.$(PEI_ARCH)] after https://bugzilla.tianocore.org/show_bug.cgi?id=2308 +#is completed [Components.IA32] ### # Edk2 Packages @@ -301,6 +312,11 @@ !endif $(PLATFORM_BOARD_PACKAGE)/BiosInfo/BiosInfo.inf +### +# DXE Components +### +# @todo: Change below line to [Components.$(DXE_ARCH)] after https://bugzilla.tianocore.org/show_bug.cgi?id=2308 +#is completed [Components.X64] ### # Edk2 Packages -- 2.16.2.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#51411): https://edk2.groups.io/g/devel/message/51411 Mute This Topic: https://groups.io/mt/63458822/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[edk2-devel] [edk2-platforms][PATCH V2 24/47] Features/Intel/AdvancedFeaturePkg: Add FDF include files
Adds FDF files that group all currently available advanced features so they can be conveniently included into board packages. The Minimum Platform defines two firmware volumes for advanced features: FvAdvancedPreMemory and FvAdvanced. This change provides all pre-memory advanced feature modules to be included in FvAdvancedPreMemory via AdvancedFeaturePkg/Include/PreMemory.fdf. All post-memory advanced feature modules to be included in FvAdvanced are available in AdvancedFeaturePkg/Include/PostMemory.fdf. Cc: Sai Chaganty Cc: Liming Gao Signed-off-by: Michael Kubacki Reviewed-by: Nate DeSimone --- Features/Intel/AdvancedFeaturePkg/Include/PostMemory.fdf | 57 Features/Intel/AdvancedFeaturePkg/Include/PreMemory.fdf | 57 2 files changed, 114 insertions(+) diff --git a/Features/Intel/AdvancedFeaturePkg/Include/PostMemory.fdf b/Features/Intel/AdvancedFeaturePkg/Include/PostMemory.fdf new file mode 100644 index 00..57b29a42b9 --- /dev/null +++ b/Features/Intel/AdvancedFeaturePkg/Include/PostMemory.fdf @@ -0,0 +1,57 @@ +## @file +# FDF file for post-memory advanced features. +# +# This file is intended to be included into another package so advanced features +# can be conditionally included in the flash image by enabling the respective +# feature via its FeaturePCD. +# +# Copyright (c) 2019, Intel Corporation. All rights reserved. +# +# SPDX-License-Identifier: BSD-2-Clause-Patent +# +## + +# +# Debug Advanced Features +# +!if gAcpiDebugFeaturePkgTokenSpaceGuid.PcdAcpiDebugFeatureEnable == TRUE + !include Debugging/AcpiDebugFeaturePkg/Include/PostMemory.fdf +!endif +!if gUsb3DebugFeaturePkgTokenSpaceGuid.PcdUsb3DebugFeatureEnable == TRUE + !include Debugging/Usb3DebugFeaturePkg/Include/PostMemory.fdf +!endif + +# +# Network Advanced Features +# +!if gNetworkFeaturePkgTokenSpaceGuid.PcdNetworkFeatureEnable == TRUE + !include Network/NetworkFeaturePkg/Include/PostMemory.fdf +!endif + +# +# Out-of-Band Management Advanced Features +# +!if gIpmiFeaturePkgTokenSpaceGuid.PcdIpmiFeatureEnable == TRUE + !include OutOfBandManagement/IpmiFeaturePkg/Include/PostMemory.fdf +!endif + +# +# Power Management Advanced Features +# +!if gS3FeaturePkgTokenSpaceGuid.PcdS3FeatureEnable == TRUE + !include PowerManagement/S3FeaturePkg/Include/PostMemory.fdf +!endif + +# +# System Information Advanced Features +# +!if gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosFeatureEnable == TRUE + !include SystemInformation/SmbiosFeaturePkg/Include/PostMemory.fdf +!endif + +# +# User Interface Advanced Features +# +!if gUserAuthFeaturePkgTokenSpaceGuid.PcdUserAuthenticationFeatureEnable == TRUE + !include UserInterface/UserAuthFeaturePkg/Include/PostMemory.fdf +!endif diff --git a/Features/Intel/AdvancedFeaturePkg/Include/PreMemory.fdf b/Features/Intel/AdvancedFeaturePkg/Include/PreMemory.fdf new file mode 100644 index 00..20d25dd173 --- /dev/null +++ b/Features/Intel/AdvancedFeaturePkg/Include/PreMemory.fdf @@ -0,0 +1,57 @@ +## @file +# FDF file for pre-memory advanced features. +# +# This file is intended to be included into another package so advanced features +# can be conditionally included in the flash image by enabling the respective +# feature via its FeaturePCD. +# +# Copyright (c) 2019, Intel Corporation. All rights reserved. +# +# SPDX-License-Identifier: BSD-2-Clause-Patent +# +## + +# +# Debug Advanced Features +# +!if gAcpiDebugFeaturePkgTokenSpaceGuid.PcdAcpiDebugFeatureEnable == TRUE + !include Debugging/AcpiDebugFeaturePkg/Include/PreMemory.fdf +!endif +!if gUsb3DebugFeaturePkgTokenSpaceGuid.PcdUsb3DebugFeatureEnable == TRUE + !include Debugging/Usb3DebugFeaturePkg/Include/PreMemory.fdf +!endif + +# +# Network Advanced Features +# +!if gNetworkFeaturePkgTokenSpaceGuid.PcdNetworkFeatureEnable == TRUE + !include Network/NetworkFeaturePkg/Include/PreMemory.fdf +!endif + +# +# Out-of-Band Management Advanced Features +# +!if gIpmiFeaturePkgTokenSpaceGuid.PcdIpmiFeatureEnable == TRUE + !include OutOfBandManagement/IpmiFeaturePkg/Include/PreMemory.fdf +!endif + +# +# Power Management Advanced Features +# +!if gS3FeaturePkgTokenSpaceGuid.PcdS3FeatureEnable == TRUE + !include PowerManagement/S3FeaturePkg/Include/PreMemory.fdf +!endif + +# +# System Information Advanced Features +# +!if gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosFeatureEnable == TRUE + !include SystemInformation/SmbiosFeaturePkg/Include/PreMemory.fdf +!endif + +# +# User Interface Advanced Features +# +!if gUserAuthFeaturePkgTokenSpaceGuid.PcdUserAuthenticationFeatureEnable == TRUE + !include UserInterface/UserAuthFeaturePkg/Include/PreMemory.fdf +!endif -- 2.16.2.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#51409): https://edk2.groups.io/g/devel/message/51409 Mute This Topic: https://groups.io/mt/63458566/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub
[edk2-devel] [edk2-platforms][PATCH V2 29/47] MinPlatformPkg: Add FvAdvancedPreMemory
This change adds a new firmware volume to MinPlatformPkg called FvAdvancedPreMemory. This firmware volume is used to hold advanced feature modules that must be available in pre-memory. Previously, these modules were kept as an uncompressed child FV in FvAdvanced. However, in memory constrained environments before permanent memory is initialized, it is preferable to have a dedicated firmware volume that can simply be installed as a standalone firmware volume to reduce the need for creating FV HOBs for other post-memory advanced features if they are not needed and to simplify the FV layout and FV installation process. Cc: Chasel Chiu Cc: Nate DeSimone Cc: Liming Gao Signed-off-by: Michael Kubacki --- Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec | 3 ++ Platform/Intel/MinPlatformPkg/PlatformInit/Library/PeiReportFvLib/PeiReportFvLib.inf | 42 ++-- Platform/Intel/MinPlatformPkg/PlatformInit/Library/PeiReportFvLib/PeiReportFvLib.c | 24 --- 3 files changed, 44 insertions(+), 25 deletions(-) diff --git a/Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec b/Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec index 6a765d689d..21013cc87c 100644 --- a/Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec +++ b/Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec @@ -168,6 +168,9 @@ SetCacheMtrrLib|Include/Library/SetCacheMtrrLib.h gMinPlatformPkgTokenSpaceGuid.PcdFlashFvSecurityBase|0x|UINT32|0x2010 gMinPlatformPkgTokenSpaceGuid.PcdFlashFvSecuritySize|0x|UINT32|0x2011 gMinPlatformPkgTokenSpaceGuid.PcdFlashFvSecurityOffset|0x|UINT32|0x2012 + gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedPreMemoryBase|0x|UINT32|0x202D + gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedPreMemorySize|0x|UINT32|0x202E + gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedPreMemoryOffset|0x|UINT32|0x202F gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedBase|0x|UINT32|0x2013 gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedSize|0x|UINT32|0x2014 gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedOffset|0x|UINT32|0x2015 diff --git a/Platform/Intel/MinPlatformPkg/PlatformInit/Library/PeiReportFvLib/PeiReportFvLib.inf b/Platform/Intel/MinPlatformPkg/PlatformInit/Library/PeiReportFvLib/PeiReportFvLib.inf index 4d96c9cf31..1ce3034fcc 100644 --- a/Platform/Intel/MinPlatformPkg/PlatformInit/Library/PeiReportFvLib/PeiReportFvLib.inf +++ b/Platform/Intel/MinPlatformPkg/PlatformInit/Library/PeiReportFvLib/PeiReportFvLib.inf @@ -1,7 +1,7 @@ ### @file # Component information file for the Report Firmware Volume (FV) library. # -# Copyright (c) 2018, Intel Corporation. All rights reserved. +# Copyright (c) 2018 - 2019, Intel Corporation. All rights reserved. # # SPDX-License-Identifier: BSD-2-Clause-Patent # @@ -30,22 +30,24 @@ PeiReportFvLib.c [Pcd] - gMinPlatformPkgTokenSpaceGuid.PcdFspWrapperBootMode ## CONSUMES - gMinPlatformPkgTokenSpaceGuid.PcdFlashAreaBaseAddress ## CONSUMES - gMinPlatformPkgTokenSpaceGuid.PcdFlashAreaSize## CONSUMES - gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspMBase ## CONSUMES - gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspMSize ## CONSUMES - gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspSBase ## CONSUMES - gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspSSize ## CONSUMES - gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspUBase ## CONSUMES - gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspUSize ## CONSUMES - gMinPlatformPkgTokenSpaceGuid.PcdFlashFvPostMemoryBase## CONSUMES - gMinPlatformPkgTokenSpaceGuid.PcdFlashFvPostMemorySize## CONSUMES - gMinPlatformPkgTokenSpaceGuid.PcdFlashFvUefiBootBase ## CONSUMES - gMinPlatformPkgTokenSpaceGuid.PcdFlashFvUefiBootSize ## CONSUMES - gMinPlatformPkgTokenSpaceGuid.PcdFlashFvOsBootBase## CONSUMES - gMinPlatformPkgTokenSpaceGuid.PcdFlashFvOsBootSize## CONSUMES - gMinPlatformPkgTokenSpaceGuid.PcdFlashFvSecurityBase ## CONSUMES - gMinPlatformPkgTokenSpaceGuid.PcdFlashFvSecuritySize ## CONSUMES - gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedBase ## CONSUMES - gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedSize ## CONSUMES + gMinPlatformPkgTokenSpaceGuid.PcdFspWrapperBootMode ## CONSUMES + gMinPlatformPkgTokenSpaceGuid.PcdFlashAreaBaseAddress ## CONSUMES + gMinPlatformPkgTokenSpaceGuid.PcdFlashAreaSize ## CONSUMES + gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspMBase## CONSUMES + gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspMSize## CONSUMES + gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspSBase## CONSUMES + gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspSSize## CONSUMES + gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspUBase## CONSUMES +
[edk2-devel] [edk2-platforms][PATCH V2 31/47] KabylakeOpenBoardPkg/GalagoPro3: Add FvAdvancedPreMemory
This change adds a standalone firmware volume for pre-memory advanced features called FvAdvancedPreMemory to the flash map. Pre-memory advanced feature modules were previously kept in a child firmware volume of FvAdvanced called FvAdvancedPreMem. This change simplifies the flash layout and separation of pre-memory and post-memory modules. Cc: Chasel Chiu Cc: Nate DeSimone Signed-off-by: Michael Kubacki Reviewed-by: Nate DeSimone --- Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/Include/Fdf/FlashMapInclude.fdf | 20 + Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.fdf | 46 +++- 2 files changed, 27 insertions(+), 39 deletions(-) diff --git a/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/Include/Fdf/FlashMapInclude.fdf b/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/Include/Fdf/FlashMapInclude.fdf index c7f314ffe4..6cb6d54f55 100644 --- a/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/Include/Fdf/FlashMapInclude.fdf +++ b/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/Include/Fdf/FlashMapInclude.fdf @@ -27,22 +27,24 @@ SET gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize= 0x0002 SET gKabylakeOpenBoardPkgTokenSpaceGuid.PcdFlashNvDebugMessageOffset = 0x0004 # Flash addr (0xFFA6) SET gKabylakeOpenBoardPkgTokenSpaceGuid.PcdFlashNvDebugMessageSize = 0x0001 # SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedOffset = 0x0005 # Flash addr (0xFFA7) -SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedSize= 0x0006 # -SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvSecurityOffset = 0x000B # Flash addr (0xFFAD) +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedSize= 0x0005 # +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvSecurityOffset = 0x000A # Flash addr (0xFFAC) SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvSecuritySize= 0x0007 # -SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvOsBootOffset= 0x0012 # Flash addr (0xFFB4) +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvOsBootOffset= 0x0011 # Flash addr (0xFFB3) SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvOsBootSize = 0x0009 # -SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvUefiBootOffset = 0x001B # Flash addr (0xFFBD) +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvUefiBootOffset = 0x001A # Flash addr (0xFFBC) SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvUefiBootSize= 0x0014 # -SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvPostMemoryOffset= 0x002F # Flash addr (0xFFD1) +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvPostMemoryOffset= 0x002E # Flash addr (0xFFD0) SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvPostMemorySize = 0x000B # -SET gSiPkgTokenSpaceGuid.PcdFlashMicrocodeFvOffset = 0x003A # Flash addr (0xFFDC) +SET gSiPkgTokenSpaceGuid.PcdFlashMicrocodeFvOffset = 0x0039 # Flash addr (0xFFDB) SET gSiPkgTokenSpaceGuid.PcdFlashMicrocodeFvSize= 0x000A # -SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspSOffset = 0x0044 # Flash addr (0xFFE6) +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspSOffset = 0x0043 # Flash addr (0xFFE5) SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspSSize= 0x0006 # -SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspMOffset = 0x004A # Flash addr (0xFFEC) +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspMOffset = 0x0049 # Flash addr (0xFFEB) SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspMSize= 0x000BA000 # -SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspTOffset = 0x0055A000 # Flash addr (0xFFF7A000) +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspTOffset = 0x0054A000 # Flash addr (0xFFF6A000) SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspTSize= 0x6000 # +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedPreMemoryOffset = 0x0055 # Flash addr (0xFFF7) +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedPreMemorySize = 0x0001 # SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvPreMemoryOffset = 0x0056 # Flash addr (0xFFF8) SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvPreMemorySize = 0x0008 # diff --git a/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.fdf b/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.fdf index d5ae9dce41..0a9b933e40 100644 --- a/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.fdf +++ b/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.fdf @@ -177,6 +177,10 @@ gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspTBase|gMinPlatformPkgTokenSpaceGuid.P # FSP_T Section FILE = $(PLATFORM_FSP_BIN_PACKAGE)/Fsp_Rebased_T.fd
[edk2-devel] [edk2-platforms][PATCH V2 27/47] WhiskeylakeOpenBoardPkg/WhiskeylakeURvp: Add PEI_ARCH and DXE_ARCH
This change adds two new macros to OpenBoardPkg.dsc that identify the build architecture for PEI and DXE modules. The intention of this macro is to ensure that all DSC files that compose the package build (such as those included from MinPlatformPkg or an advanced feature package) build phase-specific drivers for the architecture defined by the board package. This is a macro that is required in all Minimum Platform board packages. Cc: Chasel Chiu Cc: Nate DeSimone Signed-off-by: Michael Kubacki Reviewed-by: Nate DeSimone --- Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoardPkg.dsc | 16 1 file changed, 16 insertions(+) diff --git a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoardPkg.dsc b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoardPkg.dsc index 127147c734..ae3fec05ed 100644 --- a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoardPkg.dsc +++ b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoardPkg.dsc @@ -15,6 +15,8 @@ DEFINE PLATFORM_BOARD_PACKAGE= WhiskeylakeOpenBoardPkg DEFINE BOARD = WhiskeylakeURvp DEFINE PROJECT = $(PLATFORM_BOARD_PACKAGE)/$(BOARD) + DEFINE PEI_ARCH = IA32 + DEFINE DXE_ARCH = X64 # # Include PCD configuration for this board. @@ -73,10 +75,14 @@ ### # Component Includes ### +# @todo: Change below line to [Components.$(PEI_ARCH)] after https://bugzilla.tianocore.org/show_bug.cgi?id=2308 +#is completed [Components.IA32] !include $(PLATFORM_PACKAGE)/Include/Dsc/CorePeiInclude.dsc !include $(PLATFORM_SI_PACKAGE)/SiPkgPei.dsc +# @todo: Change below line to [Components.$(DXE_ARCH)] after https://bugzilla.tianocore.org/show_bug.cgi?id=2308 +#is completed [Components.X64] !include $(PLATFORM_PACKAGE)/Include/Dsc/CoreDxeInclude.dsc !include $(PLATFORM_SI_PACKAGE)/SiPkgDxe.dsc @@ -260,6 +266,11 @@ TestPointCheckLib|$(PLATFORM_PACKAGE)/Test/Library/TestPointCheckLib/SmmTestPointCheckLib.inf !endif +### +# PEI Components +### +# @todo: Change below line to [Components.$(PEI_ARCH)] after https://bugzilla.tianocore.org/show_bug.cgi?id=2308 +#is completed [Components.IA32] ### # Edk2 Packages @@ -330,6 +341,11 @@ !endif $(PLATFORM_BOARD_PACKAGE)/BiosInfo/BiosInfo.inf +### +# DXE Components +### +# @todo: Change below line to [Components.$(DXE_ARCH)] after https://bugzilla.tianocore.org/show_bug.cgi?id=2308 +#is completed [Components.X64] ### # Edk2 Packages -- 2.16.2.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#51412): https://edk2.groups.io/g/devel/message/51412 Mute This Topic: https://groups.io/mt/63459061/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[edk2-devel] [edk2-platforms][PATCH V2 23/47] Features/Intel/AdvancedFeaturePkg: Add temporary build workaround
This change adds a temporary build workaround to allow the advanced feature PCDs to be used in conditional statements in DSC files even if they are not referenced in INF files. Support to allow a FeaturePCD to be used in a conditional statement without being referenced in an INF file has been requested in the following Bugzilla item: https://bugzilla.tianocore.org/show_bug.cgi?id=2270 This change can be reverted when that Bugzilla is completed and the change is submitted to edk2. Cc: Sai Chaganty Cc: Liming Gao Signed-off-by: Michael Kubacki Reviewed-by: Nate DeSimone --- Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc | 2 + Features/Intel/AdvancedFeaturePkg/TemporaryBuildWorkaround/TemporaryBuildWorkaround.dsc | 74 Features/Intel/AdvancedFeaturePkg/TemporaryBuildWorkaround/TemporaryBuildWorkaround.inf | 57 +++ Features/Intel/AdvancedFeaturePkg/TemporaryBuildWorkaround/TemporaryBuildWorkaround.c | 31 4 files changed, 164 insertions(+) diff --git a/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc b/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc index 50c0e81048..23e7c6474a 100644 --- a/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc +++ b/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc @@ -30,6 +30,8 @@ PEI_ARCH= IA32 DXE_ARCH= X64 +!include AdvancedFeaturePkg/TemporaryBuildWorkaround/TemporaryBuildWorkaround.dsc + # # Advanced Feature Enable section - all advanced features are enabling for the diff --git a/Features/Intel/AdvancedFeaturePkg/TemporaryBuildWorkaround/TemporaryBuildWorkaround.dsc b/Features/Intel/AdvancedFeaturePkg/TemporaryBuildWorkaround/TemporaryBuildWorkaround.dsc new file mode 100644 index 00..227ae00908 --- /dev/null +++ b/Features/Intel/AdvancedFeaturePkg/TemporaryBuildWorkaround/TemporaryBuildWorkaround.dsc @@ -0,0 +1,74 @@ +## @file +# Build description file for a temporary build workaround. +# +# The feature enable PCD for advanced features must be referenced in an INF +# to be referenced in DSC/FDF files. This DSC only exists in the build to +# allow the PCDs to be referenced. This workaround does not affect the final +# flash image or boot in any way. +# +# The request to update BaseTools to allow a PCD to be referenced in DSC/FDF +# files without requiring the PCD to be referenced in an INF file is tracked +# here: https://bugzilla.tianocore.org/show_bug.cgi?id=2270 +# +# When the BaseTools update is complete, this file can entirely be removed +# from this package. +# +# Copyright (c) 2019, Intel Corporation. All rights reserved. +# +# SPDX-License-Identifier: BSD-2-Clause-Patent +# +## + +# +# BEGIN:Temporary Build Workaround (resolution: https://bugzilla.tianocore.org/show_bug.cgi?id=2270) +# + +# THIS FILE IS TEMPORARY. PLEASE TRY TO LOOK PAST THE "HACKS" ASSOCIATED WITH IT. +# +# With the BaseTools change requested, the changes needed to move to the end state are simply: +# 1. Remove the !include for this file in AdvancedFeatures.dsc +# 2. Remove this directory + +!if $(PLATFORM_NAME) != AdvancedFeaturePkg +# +# AdvancedFeaturePkg initializes all FeaturePCDs to TRUE so they can conveniently be built in one package. +# Board packages will normally only enable (and therefore reference) a small subset of advanced features +# relative to the board. If an INF does not reference a package DEC file (which will be the case if the +# feature is not enabled) then the DSC must set ("define") the PCD for the conditional statements based +# on the PCD to work. +# +# AdvancedFeaturePkg has no problem as it naturally has a need to set al PCDs to TRUE for build. +# The section below sets all PCDs to FALSE in the DSC file so if the feature is not enabled by a board, +# the build will still be successful. +# +[PcdsFeatureFlag] + gAcpiDebugFeaturePkgTokenSpaceGuid.PcdAcpiDebugFeatureEnable |FALSE + gIpmiFeaturePkgTokenSpaceGuid.PcdIpmiFeatureEnable |FALSE + gNetworkFeaturePkgTokenSpaceGuid.PcdNetworkFeatureEnable |FALSE + gS3FeaturePkgTokenSpaceGuid.PcdS3FeatureEnable |FALSE + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosFeatureEnable |FALSE + gUsb3DebugFeaturePkgTokenSpaceGuid.PcdUsb3DebugFeatureEnable |FALSE + gUserAuthFeaturePkgTokenSpaceGuid.PcdUserAuthenticationFeatureEnable |FALSE +!endif + +# +# The LibraryClasses required to build TemporaryBuildWorkaround.inf +# (mostly libraries requiring other libraries) +# +[LibraryClasses] + BaseLib|MdePkg/Library/BaseLib/BaseLib.inf + BaseMemoryLib|MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf + DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf +
[edk2-devel] [edk2-platforms][PATCH V2 21/47] Features/Intel/NetworkFeaturePkg: Add initial package
Adds a new feature package for the Network feature. The Network feature code is actually in edk2/NetworkPkg at this time so this package inclues the content from edk2/NetworkPkg. In the future, it is preferred to move the source code from NetworkPkg to NetworkFeaturePkg. Cc: Sai Chaganty Cc: Liming Gao Signed-off-by: Michael Kubacki --- Features/Intel/Network/NetworkFeaturePkg/NetworkFeaturePkg.dec | 30 Features/Intel/Network/NetworkFeaturePkg/Include/NetworkFeature.dsc | 152 Features/Intel/Network/NetworkFeaturePkg/NetworkFeaturePkg.dsc | 30 Features/Intel/Network/NetworkFeaturePkg/Include/PostMemory.fdf | 10 ++ Features/Intel/Network/NetworkFeaturePkg/Include/PreMemory.fdf | 8 ++ Features/Intel/Network/NetworkFeaturePkg/Readme.md | 100 + 6 files changed, 330 insertions(+) diff --git a/Features/Intel/Network/NetworkFeaturePkg/NetworkFeaturePkg.dec b/Features/Intel/Network/NetworkFeaturePkg/NetworkFeaturePkg.dec new file mode 100644 index 00..670b76e52f --- /dev/null +++ b/Features/Intel/Network/NetworkFeaturePkg/NetworkFeaturePkg.dec @@ -0,0 +1,30 @@ +## @file +# This package provides advanced feature functionality for Network support. +# This package should only depend on EDK II Core packages, IntelSiliconPkg, and MinPlatformPkg. +# +# The DEC files are used by the utilities that parse DSC and +# INF files to generate AutoGen.c and AutoGen.h files +# for the build infrastructure. +# +# Copyright (c) 2019, Intel Corporation. All rights reserved. +# +# SPDX-License-Identifier: BSD-2-Clause-Patent +# +## + +[Defines] + DEC_SPECIFICATION = 0x00010017 + PACKAGE_NAME = NetworkFeaturePkg + PACKAGE_GUID = CA1BF91C-8B5E-40C2-9C4C-DD250D2170A9 + PACKAGE_VERSION = 0.1 + +[Includes] + Include + +[LibraryClasses] + +[Guids] + gNetworkFeaturePkgTokenSpaceGuid = {0x990904ed, 0xb62a, 0x4b46, {0xa2, 0x9d, 0xe4, 0x09, 0xa6, 0x7f, 0x54, 0x68}} + +[PcdsFeatureFlag] + gNetworkFeaturePkgTokenSpaceGuid.PcdNetworkFeatureEnable|FALSE|BOOLEAN|0xA001 diff --git a/Features/Intel/Network/NetworkFeaturePkg/Include/NetworkFeature.dsc b/Features/Intel/Network/NetworkFeaturePkg/Include/NetworkFeature.dsc new file mode 100644 index 00..c59c21ee6c --- /dev/null +++ b/Features/Intel/Network/NetworkFeaturePkg/Include/NetworkFeature.dsc @@ -0,0 +1,152 @@ +## @file +# This is a build description file for the Network advanced feature. +# This file should be included into another package DSC file to build this feature. +# +# The DEC files are used by the utilities that parse DSC and +# INF files to generate AutoGen.c and AutoGen.h files +# for the build infrastructure. +# +# Copyright (c) 2019, Intel Corporation. All rights reserved. +# +# SPDX-License-Identifier: BSD-2-Clause-Patent +# +## + + +# +# Defines Section - statements that will be processed to create a Makefile. +# + +[Defines] +!ifndef $(PEI_ARCH) + !error "PEI_ARCH must be specified to build this feature!" +!endif +!ifndef $(DXE_ARCH) + !error "DXE_ARCH must be specified to build this feature!" +!endif + + !include NetworkPkg/NetworkDefines.dsc.inc + + +# +# PCD Section - list of EDK II PCD Entries modified by the feature. +# + +[PcdsFixedAtBuild] + !include NetworkPkg/NetworkPcds.dsc.inc + + +# +# Library Class section - list of all Library Classes needed by this feature. +# + +[LibraryClasses] + !include NetworkPkg/NetworkLibs.dsc.inc + + ### + # Edk2 Packages + ### + BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf + BaseLib|MdePkg/Library/BaseLib/BaseLib.inf + BaseMemoryLib|MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf + DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf + DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf + FileExplorerLib|MdeModulePkg/Library/FileExplorerLib/FileExplorerLib.inf + HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf + IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf + OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf + PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf + PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf + PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf + PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf +
[edk2-devel] [edk2-platforms][PATCH V2 15/47] Features/Intel/IpmiFeaturePkg: Add modules
This change adds the modules for the IPMI feature to IpmiFeaturePkg. Cc: Sai Chaganty Cc: Liming Gao Signed-off-by: Michael Kubacki --- Features/Intel/OutOfBandManagement/IpmiFeaturePkg/IpmiFeaturePkg.dec | 8 + Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Include/IpmiFeature.dsc | 78 +- Features/Intel/OutOfBandManagement/IpmiFeaturePkg/IpmiFeaturePkg.dsc | 2 + Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Include/PostMemory.fdf | 8 + Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Include/PreMemory.fdf | 3 + Features/Intel/OutOfBandManagement/IpmiFeaturePkg/BmcAcpi/BmcAcpi.inf | 47 Features/Intel/OutOfBandManagement/IpmiFeaturePkg/BmcElog/BmcElog.inf | 33 +++ Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Frb/FrbDxe.inf | 37 +++ Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Frb/FrbPei.inf | 37 +++ Features/Intel/OutOfBandManagement/IpmiFeaturePkg/IpmiFru/IpmiFru.inf | 35 +++ Features/Intel/OutOfBandManagement/IpmiFeaturePkg/IpmiInit/DxeIpmiInit.inf | 34 +++ Features/Intel/OutOfBandManagement/IpmiFeaturePkg/IpmiInit/PeiIpmiInit.inf | 32 +++ Features/Intel/OutOfBandManagement/IpmiFeaturePkg/OsWdt/OsWdt.inf | 33 +++ Features/Intel/OutOfBandManagement/IpmiFeaturePkg/SolStatus/SolStatus.inf | 37 +++ Features/Intel/OutOfBandManagement/IpmiFeaturePkg/BmcAcpi/BmcAcpi.c | 257 Features/Intel/OutOfBandManagement/IpmiFeaturePkg/BmcElog/BmcElog.c | 236 ++ Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Frb/FrbDxe.c | 236 ++ Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Frb/FrbPei.c | 84 +++ Features/Intel/OutOfBandManagement/IpmiFeaturePkg/IpmiFru/IpmiFru.c | 67 + Features/Intel/OutOfBandManagement/IpmiFeaturePkg/IpmiInit/DxeIpmiInit.c | 150 Features/Intel/OutOfBandManagement/IpmiFeaturePkg/IpmiInit/PeiIpmiInit.c | 96 Features/Intel/OutOfBandManagement/IpmiFeaturePkg/OsWdt/OsWdt.c | 112 + Features/Intel/OutOfBandManagement/IpmiFeaturePkg/SolStatus/SolStatus.c | 164 + Features/Intel/OutOfBandManagement/IpmiFeaturePkg/BmcAcpi/BmcSsdt/BmcSsdt.asl | 28 +++ Features/Intel/OutOfBandManagement/IpmiFeaturePkg/BmcAcpi/BmcSsdt/IpmiOprRegions.asi | 58 + 25 files changed, 1909 insertions(+), 3 deletions(-) diff --git a/Features/Intel/OutOfBandManagement/IpmiFeaturePkg/IpmiFeaturePkg.dec b/Features/Intel/OutOfBandManagement/IpmiFeaturePkg/IpmiFeaturePkg.dec index 4c43fc5f49..1426496d28 100644 --- a/Features/Intel/OutOfBandManagement/IpmiFeaturePkg/IpmiFeaturePkg.dec +++ b/Features/Intel/OutOfBandManagement/IpmiFeaturePkg/IpmiFeaturePkg.dec @@ -36,3 +36,11 @@ [PcdsFeatureFlag] gIpmiFeaturePkgTokenSpaceGuid.PcdIpmiFeatureEnable|FALSE|BOOLEAN|0xA001 + +[PcdsFixedAtBuild] + gIpmiFeaturePkgTokenSpaceGuid.PcdMaxSOLChannels|3|UINT8|0xF001 + +[PcdsDynamic, PcdsDynamicEx] + gIpmiFeaturePkgTokenSpaceGuid.PcdFRB2EnabledFlag|TRUE|BOOLEAN|0xD001 + gIpmiFeaturePkgTokenSpaceGuid.PcdFRBTimeoutValue|360|UINT16|0xD002 + gIpmiFeaturePkgTokenSpaceGuid.PcdIpmiIoBaseAddress|0xCA2|UINT16|0xD003 diff --git a/Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Include/IpmiFeature.dsc b/Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Include/IpmiFeature.dsc index c6a385108b..a82f18a68c 100644 --- a/Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Include/IpmiFeature.dsc +++ b/Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Include/IpmiFeature.dsc @@ -18,6 +18,12 @@ # [Defines] +!ifndef $(PEI_ARCH) + !error "PEI_ARCH must be specified to build this feature!" +!endif +!ifndef $(DXE_ARCH) + !error "DXE_ARCH must be specified to build this feature!" +!endif # @@ -32,6 +38,36 @@ BaseMemoryLib|MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf IpmiLib|MdeModulePkg/Library/BaseIpmiLibNull/BaseIpmiLibNull.inf + PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf + TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf + + # + # IPMI Feature Package + # + IpmiCommandLib|OutOfBandManagement/IpmiFeaturePkg/Library/IpmiCommandLib/IpmiCommandLib.inf + +[LibraryClasses.common.PEI_CORE,LibraryClasses.common.PEIM] + ### + # Edk2 Packages +
[edk2-devel] [edk2-platforms][PATCH V2 14/47] Features/Intel/IpmiFeaturePkg: Add libraries
This change adds the libraries required for the IPMI feature to IpmiFeaturePkg. Cc: Sai Chaganty Cc: Liming Gao Signed-off-by: Michael Kubacki --- Features/Intel/OutOfBandManagement/IpmiFeaturePkg/IpmiFeaturePkg.dec | 9 + Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Include/IpmiFeature.dsc | 72 + Features/Intel/OutOfBandManagement/IpmiFeaturePkg/IpmiFeaturePkg.dsc | 5 + Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Library/IpmiCommandLib/IpmiCommandLib.inf | 32 +++ Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Library/IpmiPlatformHookLibNull/IpmiPlatformHookLibNull.inf | 26 ++ Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Include/Library/IpmiCommandLib.h | 235 + Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Include/Library/IpmiPlatformHookLib.h | 23 ++ Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Library/IpmiCommandLib/IpmiCommandLibNetFnApp.c | 248 ++ Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Library/IpmiCommandLib/IpmiCommandLibNetFnChassis.c | 101 +++ Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Library/IpmiCommandLib/IpmiCommandLibNetFnStorage.c | 275 Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Library/IpmiCommandLib/IpmiCommandLibNetFnTransport.c | 81 ++ Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Library/IpmiPlatformHookLibNull/IpmiPlatformHookLibNull.c | 36 +++ 12 files changed, 1143 insertions(+) diff --git a/Features/Intel/OutOfBandManagement/IpmiFeaturePkg/IpmiFeaturePkg.dec b/Features/Intel/OutOfBandManagement/IpmiFeaturePkg/IpmiFeaturePkg.dec index dfae88..4c43fc5f49 100644 --- a/Features/Intel/OutOfBandManagement/IpmiFeaturePkg/IpmiFeaturePkg.dec +++ b/Features/Intel/OutOfBandManagement/IpmiFeaturePkg/IpmiFeaturePkg.dec @@ -22,6 +22,15 @@ [Includes] Include +[LibraryClasses] + ## @libraryclass Provides services to send IPMI commands. + # + IpmiCommandLib|Include/Library/IpmiCommandLib.inf + + ## @libraryclass Provides an API for platform-specific IPMI hooks. + # + IpmiCommandLib|Include/Library/IpmiPlatformHookLib.h + [Guids] gIpmiFeaturePkgTokenSpaceGuid = {0xc05283f6, 0xd6a8, 0x48f3, {0x9b, 0x59, 0xfb, 0xca, 0x71, 0x32, 0x0f, 0x12}} diff --git a/Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Include/IpmiFeature.dsc b/Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Include/IpmiFeature.dsc new file mode 100644 index 00..c6a385108b --- /dev/null +++ b/Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Include/IpmiFeature.dsc @@ -0,0 +1,72 @@ +## @file +# This is a build description file for the Intelligent Platform Management Interface (IPMI) advanced feature. +# This file should be included into another package DSC file to build this feature. +# +# The DEC files are used by the utilities that parse DSC and +# INF files to generate AutoGen.c and AutoGen.h files +# for the build infrastructure. +# +# Copyright (c) 2019, Intel Corporation. All rights reserved. +# +# SPDX-License-Identifier: BSD-2-Clause-Patent +# +## + + +# +# Defines Section - statements that will be processed to create a Makefile. +# + +[Defines] + + +# +# Library Class section - list of all Library Classes needed by this feature. +# + +[LibraryClasses] + ### + # Edk2 Packages + ### + BaseLib|MdePkg/Library/BaseLib/BaseLib.inf + BaseMemoryLib|MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf + DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf + IpmiLib|MdeModulePkg/Library/BaseIpmiLibNull/BaseIpmiLibNull.inf + + +# +# Component section - list of all components that need built for this feature. +# +# Note: The EDK II DSC file is not used to specify how compiled binary images get placed +# into firmware volume images. This section is just a list of modules to compile from +# source into UEFI-compliant binaries. +# It is the FDF file that contains information on combining binary files into firmware +# volume images, whose concept is beyond UEFI and is described in PI specification. +# There may also be modules listed in this section that are not required in the FDF file, +# When a module listed here is excluded from FDF file, then UEFI-compliant binary will be +#
[edk2-devel] [edk2-platforms][PATCH V2 06/47] Features/Intel/OutOfBandManagement: Add Readme.md
Adds the Readme.md file to briefly explain the types of features supported in the OutOfBandManagement feature domain directory. Cc: Sai Chaganty Cc: Liming Gao Signed-off-by: Michael Kubacki --- Features/Intel/OutOfBandManagement/Readme.md | 8 1 file changed, 8 insertions(+) diff --git a/Features/Intel/OutOfBandManagement/Readme.md b/Features/Intel/OutOfBandManagement/Readme.md new file mode 100644 index 00..dc526029a7 --- /dev/null +++ b/Features/Intel/OutOfBandManagement/Readme.md @@ -0,0 +1,8 @@ +# **EDK II Minimum Platform Firmware Out-of-Band Management Advanced Features** + +This feature domain directory contains out-of-band management related advanced features. + +Features may be added to this domain whose primary role and responsibility is related to out-of-band management. These +are features that typically interface with an external controller to enable system maintenance operations such as +monitoring, logging, and recovery control functions independent of the main processors, host CPU firmware (BIOS), and +host operating system. An out-of-band controller is usually available when the system is in a powered down state. -- 2.16.2.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#51391): https://edk2.groups.io/g/devel/message/51391 Mute This Topic: https://groups.io/mt/63456833/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[edk2-devel] [edk2-platforms][PATCH V2 22/47] Features/Intel/AdvancedFeaturePkg: Add package
This change adds AdvancedFeaturePkg to the Features/Intel directory. AdvancedFeaturePkg is a special package that is located at the root level of Features/Intel. All advanced features can be built using the AdvancedFeaturePkg build. To build all advanced features, follow the instructions in the Feature/Intel/Readme.md file. The actual build is performed by executing the following command in the Features/Intel directory: "build -p AdvancedFeaturePkg/AdvancedFeaturePkg.dsc -a IA32 -a X64" Cc: Sai Chaganty Cc: Liming Gao Signed-off-by: Michael Kubacki --- Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dec | 31 +++ Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc | 51 ++ Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeatures.dsc | 56 3 files changed, 138 insertions(+) diff --git a/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dec b/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dec new file mode 100644 index 00..797a1eeb98 --- /dev/null +++ b/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dec @@ -0,0 +1,31 @@ +## @file +# Advanced Feature Package build declaration file. +# +# Advanced features allow a board package to be extended with advanced functionality. +# +# This package should not contain any specific advanced features. The package has two responsibilities: +# 1. Present a consolidated and simplified view of all available advanced features to board packages. +# 2. Provide a simple, single package build for all available advanced features. +# +# The DEC files are used by the utilities that parse DSC and +# INF files to generate AutoGen.c and AutoGen.h files +# for the build infrastructure. +# +# Copyright (c) 2017 - 2019, Intel Corporation. All rights reserved. +# +# SPDX-License-Identifier: BSD-2-Clause-Patent +# +## +[Defines] +DEC_SPECIFICATION = 0x00010017 +PACKAGE_NAME = AdvancedFeaturePkg +PACKAGE_VERSION = 0.1 +PACKAGE_GUID = 086F1F68-76CD-4F40-A712-06939A0BDD12 + +[Includes] +Include + +[Guids] +gAdvancedFeaturePkgTokenSpaceGuid = {0xa8514688, 0x6693, 0x4ab5, {0xaa, 0xc8, 0xcc, 0xa9, 0x8d, 0xde, 0x90, 0xe1}} + +[PcdsFeatureFlag] diff --git a/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc b/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc new file mode 100644 index 00..50c0e81048 --- /dev/null +++ b/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc @@ -0,0 +1,51 @@ +## @file +# Advanced Feature Package build description file. +# +# Advanced features allow a board package to be extended with advanced functionality. +# +# This package should not contain any specific advanced features. The package has two responsibilities: +# 1. Present a consolidated and simplified view of all available advanced features to board packages. +# 2. Provide a simple, single package build for all available advanced features. +# +# Copyright (c) 2017 - 2019, Intel Corporation. All rights reserved. +# +# SPDX-License-Identifier: BSD-2-Clause-Patent +# +## + + +# +# Defines Section - statements that will be processed to create a Makefile. +# + +[Defines] + PLATFORM_NAME = AdvancedFeaturePkg + PLATFORM_GUID = 5E4C05BC-C5F0-4843-BAE1-3AAFE269DB8F + PLATFORM_VERSION= 0.1 + DSC_SPECIFICATION = 0x00010005 + OUTPUT_DIRECTORY= Build/AdvancedFeaturePkg + SUPPORTED_ARCHITECTURES = IA32|X64 + BUILD_TARGETS = DEBUG|RELEASE + SKUID_IDENTIFIER= DEFAULT + PEI_ARCH= IA32 + DXE_ARCH= X64 + + +# +# Advanced Feature Enable section - all advanced features are enabling for the +# AdvancedFeaturePkg build. +# + +[PcdsFeatureFlag] + gAcpiDebugFeaturePkgTokenSpaceGuid.PcdAcpiDebugFeatureEnable|TRUE + gIpmiFeaturePkgTokenSpaceGuid.PcdIpmiFeatureEnable |TRUE + gNetworkFeaturePkgTokenSpaceGuid.PcdNetworkFeatureEnable|TRUE + gS3FeaturePkgTokenSpaceGuid.PcdS3FeatureEnable |TRUE + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosFeatureEnable |TRUE + gUsb3DebugFeaturePkgTokenSpaceGuid.PcdUsb3DebugFeatureEnable|TRUE + gUserAuthFeaturePkgTokenSpaceGuid.PcdUserAuthenticationFeatureEnable|TRUE + +# +# This package builds all advanced features. +# +!include Include/AdvancedFeatures.dsc diff --git a/Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeatures.dsc
[edk2-devel] [edk2-platforms][PATCH V2 17/47] Features/Intel/SmbiosFeaturePkg: Update default strings
Updates the PCD string default values so they are generic. The PCDs should be customized by the package that uses the feature. Cc: Sai Chaganty Cc: Liming Gao Signed-off-by: Michael Kubacki Reviewed-by: Nate DeSimone --- Features/Intel/SystemInformation/SmbiosFeaturePkg/SmbiosFeaturePkg.dec | 30 ++-- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/Features/Intel/SystemInformation/SmbiosFeaturePkg/SmbiosFeaturePkg.dec b/Features/Intel/SystemInformation/SmbiosFeaturePkg/SmbiosFeaturePkg.dec index c06a87aad0..6170f37969 100644 --- a/Features/Intel/SystemInformation/SmbiosFeaturePkg/SmbiosFeaturePkg.dec +++ b/Features/Intel/SystemInformation/SmbiosFeaturePkg/SmbiosFeaturePkg.dec @@ -138,35 +138,35 @@ # # SMBIOS Type 0 BIOS Information Strings # - gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType0StringBiosReleaseDate|"2008-12-23"|VOID*|0xD101 - gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType0StringBiosVersion|"PURLEY CV/CRB BIOS Internal"|VOID*|0xD102 - gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType0StringVendor|"Intel Corporation"|VOID*|0xD103 + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType0StringBiosReleaseDate|"01/01/2019"|VOID*|0xD101 + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType0StringBiosVersion|"1.0"|VOID*|0xD102 + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType0StringVendor|"BIOS Vendor"|VOID*|0xD103 # # SMBIOS Type 1 System Information Strings # - gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType1StringFamily|"Family"|VOID*|0xD104 - gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType1StringManufacturer|"Intel Corporation"|VOID*|0xD105 - gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType1StringProductName|"PURLEY"|VOID*|0xD106 + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType1StringFamily|"System Family"|VOID*|0xD104 + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType1StringManufacturer|"System Manufacturer"|VOID*|0xD105 + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType1StringProductName|"System Product Name"|VOID*|0xD106 gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType1StringSerialNumber|"UNKNOWN"|VOID*|0xD107 - gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType1StringSKUNumber|"SKU Number"|VOID*|0xD108 - gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType1StringVersion|"1.0"|VOID*|0xD109 + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType1StringSKUNumber|"System SKU Number"|VOID*|0xD108 + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType1StringVersion|"System Version"|VOID*|0xD109 # # SMBIOS Type 2 Base Board Information Strings # gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType2StringAssetTag|"Base Board Asset Tag"|VOID*|0xD10A gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType2StringLocationInChassis|"Part Component"|VOID*|0xD10B - gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType2StringManufacturer|"Intel Corporation"|VOID*|0xD10C - gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType2StringProductName|"PURLEY"|VOID*|0xD10D - gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType2StringSerialNumber|"SPRO03200016"|VOID*|0xD10E - gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType2StringVersion|"E63448-400"|VOID*|0xD10F + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType2StringManufacturer|"Base Board Manufacturer"|VOID*|0xD10C + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType2StringProductName|"Base Board Product Name"|VOID*|0xD10D + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType2StringSerialNumber|"UNKNOWN"|VOID*|0xD10E + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType2StringVersion|"Base Board Version"|VOID*|0xD10F # # SMBIOS Type 3 System Enclosure Chassis Strings # gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType3StringAssetTag|"Chassis Asset Tag"|VOID*|0xD111 - gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType3StringManufacturer|"Intel Corporation"|VOID*|0xD112 + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType3StringManufacturer|"Chassis Manufacturer"|VOID*|0xD112 gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType3StringSerialNumber|"UNKNOWN"|VOID*|0xD113 - gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType3StringSKUNumber|"SKU Number"|VOID*|0xD114 - gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType3StringVersion|"0.1"|VOID*|0xD115 + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType3StringSKUNumber|"Chassis SKU Number"|VOID*|0xD114 + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType3StringVersion|"Chassis Version"|VOID*|0xD115 -- 2.16.2.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#51402): https://edk2.groups.io/g/devel/message/51402 Mute This Topic: https://groups.io/mt/63457892/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[edk2-devel] [edk2-platforms][PATCH V2 10/47] Features/Intel/Network: Add Readme.md
Adds the Readme.md file to briefly explain the types of features supported in the Network feature domain directory. Cc: Sai Chaganty Cc: Liming Gao Signed-off-by: Michael Kubacki Reviewed-by: Nate DeSimone --- Features/Intel/Network/Readme.md | 5 + 1 file changed, 5 insertions(+) diff --git a/Features/Intel/Network/Readme.md b/Features/Intel/Network/Readme.md new file mode 100644 index 00..780a1264ac --- /dev/null +++ b/Features/Intel/Network/Readme.md @@ -0,0 +1,5 @@ +# **EDK II Minimum Platform Firmware Network Features** + +This feature domain directory contains network related advanced features. + +Features may be added to this domain whose primary role and responsibility is related to network technologies. -- 2.16.2.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#51395): https://edk2.groups.io/g/devel/message/51395 Mute This Topic: https://groups.io/mt/63457306/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[edk2-devel] [edk2-platforms][PATCH V2 16/47] Features/Intel/SmbiosFeaturePkg: Add initial package
Adds a new feature package for the SMBIOS feature. Cc: Sai Chaganty Cc: Liming Gao Signed-off-by: Michael Kubacki --- Features/Intel/SystemInformation/SmbiosFeaturePkg/SmbiosFeaturePkg.dec | 172 Features/Intel/SystemInformation/SmbiosFeaturePkg/Include/SmbiosFeature.dsc | 115 + Features/Intel/SystemInformation/SmbiosFeaturePkg/SmbiosFeaturePkg.dsc | 30 Features/Intel/SystemInformation/SmbiosFeaturePkg/Include/PostMemory.fdf | 10 ++ Features/Intel/SystemInformation/SmbiosFeaturePkg/Include/PreMemory.fdf | 8 + Features/Intel/SystemInformation/SmbiosFeaturePkg/SmbiosBasicDxe/SmbiosBasicDxe.inf | 83 ++ Features/Intel/SystemInformation/SmbiosFeaturePkg/SmbiosBasicDxe/SmbiosBasic.h | 45 + Features/Intel/SystemInformation/SmbiosFeaturePkg/SmbiosBasicDxe/SmbiosBasicEntryPoint.c | 125 ++ Features/Intel/SystemInformation/SmbiosFeaturePkg/SmbiosBasicDxe/Type0BiosVendorFunction.c | 81 + Features/Intel/SystemInformation/SmbiosFeaturePkg/SmbiosBasicDxe/Type1SystemManufacturerFunction.c | 114 + Features/Intel/SystemInformation/SmbiosFeaturePkg/SmbiosBasicDxe/Type2BaseBoardManufacturerFunction.c | 131 +++ Features/Intel/SystemInformation/SmbiosFeaturePkg/SmbiosBasicDxe/Type32BootInformationFunction.c | 56 +++ Features/Intel/SystemInformation/SmbiosFeaturePkg/SmbiosBasicDxe/Type3ChassisManufacturerFunction.c | 125 ++ Features/Intel/SystemInformation/SmbiosFeaturePkg/Readme.md | 96 +++ 14 files changed, 1191 insertions(+) diff --git a/Features/Intel/SystemInformation/SmbiosFeaturePkg/SmbiosFeaturePkg.dec b/Features/Intel/SystemInformation/SmbiosFeaturePkg/SmbiosFeaturePkg.dec new file mode 100644 index 00..c06a87aad0 --- /dev/null +++ b/Features/Intel/SystemInformation/SmbiosFeaturePkg/SmbiosFeaturePkg.dec @@ -0,0 +1,172 @@ +## @file +# This package provides advanced feature functionality for System Management BIOS (SMBIOS). +# This package should only depend on EDK II Core packages, IntelSiliconPkg, and MinPlatformPkg. +# +# The DEC files are used by the utilities that parse DSC and +# INF files to generate AutoGen.c and AutoGen.h files +# for the build infrastructure. +# +# Copyright (c) 2019, Intel Corporation. All rights reserved. +# +# SPDX-License-Identifier: BSD-2-Clause-Patent +# +## + +[Defines] + DEC_SPECIFICATION = 0x00010017 + PACKAGE_NAME = SmbiosFeaturePkg + PACKAGE_GUID = 8CCEE569-02AD-4844-8725-F4C7966E320A + PACKAGE_VERSION = 0.1 + +[Includes] + Include + +[LibraryClasses] + +[Guids] + gSmbiosFeaturePkgTokenSpaceGuid = {0xc1530658, 0xe234, 0x4c13, {0xb6, 0x82, 0xd3, 0x87, 0x84, 0xf1, 0xd7, 0x16}} + +[PcdsFeatureFlag] + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosFeatureEnable|FALSE|BOOLEAN|0xA001 + +[PcdsDynamic, PcdsDynamicEx] + # + # SMBIOS Type 0 BIOS Information + # + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType0BiosInformation|{0x0}|SMBIOS_TABLE_TYPE0|0xD001 { + + IndustryStandard/SmBios.h + + MdePkg/MdePkg.dec + SystemInformation/SmbiosFeaturePkg/SmbiosFeaturePkg.dec + } + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType0BiosInformation.Vendor|0x1 + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType0BiosInformation.BiosVersion|0x2 + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType0BiosInformation.BiosSegment|0xF000 + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType0BiosInformation.BiosReleaseDate|0x3 + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType0BiosInformation.BiosSize|0xFF + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType0BiosInformation.BiosCharacteristics.PciIsSupported|1 + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType0BiosInformation.BiosCharacteristics.PlugAndPlayIsSupported|1 + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType0BiosInformation.BiosCharacteristics.BiosIsUpgradable|1 + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType0BiosInformation.BiosCharacteristics.BiosShadowingAllowed|1 + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType0BiosInformation.BiosCharacteristics.BootFromCdIsSupported|1 + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType0BiosInformation.BiosCharacteristics.SelectableBootIsSupported|1 + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType0BiosInformation.BiosCharacteristics.EDDSpecificationIsSupported|1 + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType0BiosInformation.BiosCharacteristics.Floppy525_12IsSupported|1 + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType0BiosInformation.BiosCharacteristics.Floppy35_720IsSupported|1 + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosType0BiosInformation.BiosCharacteristics.Floppy35_288IsSupported|1 +
[edk2-devel] [edk2-platforms][PATCH V2 12/47] Features/Intel/S3FeaturePkg: Add initial package
Adds a new feature package for the S3 feature. Cc: Sai Chaganty Cc: Liming Gao Signed-off-by: Michael Kubacki --- Features/Intel/PowerManagement/S3FeaturePkg/S3FeaturePkg.dec | 30 + Features/Intel/PowerManagement/S3FeaturePkg/Include/S3Feature.dsc | 122 Features/Intel/PowerManagement/S3FeaturePkg/S3FeaturePkg.dsc | 30 + Features/Intel/PowerManagement/S3FeaturePkg/Include/PostMemory.fdf | 8 ++ Features/Intel/PowerManagement/S3FeaturePkg/Include/PreMemory.fdf | 10 ++ Features/Intel/PowerManagement/S3FeaturePkg/S3Pei/S3Pei.inf| 35 ++ Features/Intel/PowerManagement/S3FeaturePkg/S3Pei/S3Pei.c | 36 ++ Features/Intel/PowerManagement/S3FeaturePkg/Readme.md | 94 +++ 8 files changed, 365 insertions(+) diff --git a/Features/Intel/PowerManagement/S3FeaturePkg/S3FeaturePkg.dec b/Features/Intel/PowerManagement/S3FeaturePkg/S3FeaturePkg.dec new file mode 100644 index 00..2a723ad3d6 --- /dev/null +++ b/Features/Intel/PowerManagement/S3FeaturePkg/S3FeaturePkg.dec @@ -0,0 +1,30 @@ +## @file +# This package provides advanced feature functionality for S3 support. +# This package should only depend on EDK II Core packages, IntelSiliconPkg, and MinPlatformPkg. +# +# The DEC files are used by the utilities that parse DSC and +# INF files to generate AutoGen.c and AutoGen.h files +# for the build infrastructure. +# +# Copyright (c) 2019, Intel Corporation. All rights reserved. +# +# SPDX-License-Identifier: BSD-2-Clause-Patent +# +## + +[Defines] + DEC_SPECIFICATION = 0x00010017 + PACKAGE_NAME = S3FeaturePkg + PACKAGE_GUID = 600F7249-65BD-44E2-80D7-344BD5250198 + PACKAGE_VERSION = 0.1 + +[Includes] + Include + +[LibraryClasses] + +[Guids] + gS3FeaturePkgTokenSpaceGuid = {0x423c5a51, 0x36e9, 0x4aea, {0x92, 0xdd, 0xdd, 0xae, 0x5b, 0x4a, 0x3d, 0x24}} + +[PcdsFeatureFlag] + gS3FeaturePkgTokenSpaceGuid.PcdS3FeatureEnable|FALSE|BOOLEAN|0xA001 diff --git a/Features/Intel/PowerManagement/S3FeaturePkg/Include/S3Feature.dsc b/Features/Intel/PowerManagement/S3FeaturePkg/Include/S3Feature.dsc new file mode 100644 index 00..647dc3f93a --- /dev/null +++ b/Features/Intel/PowerManagement/S3FeaturePkg/Include/S3Feature.dsc @@ -0,0 +1,122 @@ +## @file +# This is a build description file for the S3 advanced feature. +# This file should be included into another package DSC file to build this feature. +# +# The DEC files are used by the utilities that parse DSC and +# INF files to generate AutoGen.c and AutoGen.h files +# for the build infrastructure. +# +# Copyright (c) 2019, Intel Corporation. All rights reserved. +# +# SPDX-License-Identifier: BSD-2-Clause-Patent +# +## + + +# +# Defines Section - statements that will be processed to create a Makefile. +# + +[Defines] +!ifndef $(PEI_ARCH) + !error "PEI_ARCH must be specified to build this feature!" +!endif +!ifndef $(DXE_ARCH) + !error "DXE_ARCH must be specified to build this feature!" +!endif + + +# +# Library Class section - list of all Library Classes needed by this feature. +# + +[LibraryClasses] + ### + # Edk2 Packages + ### + BaseLib|MdePkg/Library/BaseLib/BaseLib.inf + BaseMemoryLib|MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf + DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf + IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf + PciCf8Lib|MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf + PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf + PciSegmentLib|MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf + +[LibraryClasses.common.PEI_CORE,LibraryClasses.common.PEIM] + ### + # Edk2 Packages + ### + HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf + MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf + PcdLib|MdePkg/Library/PeiPcdLib/PeiPcdLib.inf + PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf + PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf + PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf + + ### + # Silicon Initialization Package + ### + SmmAccessLib|IntelSiliconPkg/Feature/SmmAccess/Library/PeiSmmAccessLib/PeiSmmAccessLib.inf + + +# +# Component section - list of all components that need built for this feature. +# +# Note:
[edk2-devel] [edk2-platforms][PATCH V2 18/47] Features/Intel/AcpiDebugFeaturePkg: Add initial package
Adds a new feature package for the ACPI Debug feature. Cc: Eric Dong Cc: Liming Gao Signed-off-by: Michael Kubacki Reviewed-by: Nate DeSimone --- Features/Intel/Debugging/AcpiDebugFeaturePkg/AcpiDebugFeaturePkg.dec | 39 ++ Features/Intel/Debugging/AcpiDebugFeaturePkg/AcpiDebugFeaturePkg.dsc | 30 ++ Features/Intel/Debugging/AcpiDebugFeaturePkg/Include/AcpiDebugFeature.dsc | 125 + Features/Intel/Debugging/AcpiDebugFeaturePkg/Include/PostMemory.fdf | 11 + Features/Intel/Debugging/AcpiDebugFeaturePkg/Include/PreMemory.fdf | 8 + Features/Intel/Debugging/AcpiDebugFeaturePkg/AcpiDebugDxeSmm/AcpiDebugDxe.inf | 55 +++ Features/Intel/Debugging/AcpiDebugFeaturePkg/AcpiDebugDxeSmm/AcpiDebugSmm.inf | 58 +++ Features/Intel/Debugging/AcpiDebugFeaturePkg/AcpiDebugDxeSmm/AcpiDebug.c | 519 Features/Intel/Debugging/AcpiDebugFeaturePkg/AcpiDebugDxeSmm/AcpiDebug.asl | 102 Features/Intel/Debugging/AcpiDebugFeaturePkg/Readme.md | 121 + 10 files changed, 1068 insertions(+) diff --git a/Features/Intel/Debugging/AcpiDebugFeaturePkg/AcpiDebugFeaturePkg.dec b/Features/Intel/Debugging/AcpiDebugFeaturePkg/AcpiDebugFeaturePkg.dec new file mode 100644 index 00..a74ee3e084 --- /dev/null +++ b/Features/Intel/Debugging/AcpiDebugFeaturePkg/AcpiDebugFeaturePkg.dec @@ -0,0 +1,39 @@ +## @file +# This package provides advanced feature functionality for ACPI Debug support. +# This package should only depend on EDK II Core packages, IntelSiliconPkg, and MinPlatformPkg. +# +# The DEC files are used by the utilities that parse DSC and +# INF files to generate AutoGen.c and AutoGen.h files +# for the build infrastructure. +# +# Copyright (c) 2019, Intel Corporation. All rights reserved. +# +# SPDX-License-Identifier: BSD-2-Clause-Patent +# +## + +[Defines] + DEC_SPECIFICATION = 0x00010017 + PACKAGE_NAME = AcpiDebugFeaturePkg + PACKAGE_GUID = 53E3E908-5DF9-4137-ABB9-6DE162C3898F + PACKAGE_VERSION = 0.1 + +[Includes] + Include + +[LibraryClasses] + +[Guids] + gAcpiDebugFeaturePkgTokenSpaceGuid = {0xaf2582c0, 0x93fe, 0x466d, {0xb6, 0xa4, 0x4d, 0x23, 0x77, 0xf7, 0x82, 0xa7}} + +[PcdsFeatureFlag] + gAcpiDebugFeaturePkgTokenSpaceGuid.PcdAcpiDebugFeatureEnable|FALSE|BOOLEAN|0xA001 + +[PcdsFixedAtBuild,PcdsPatchableInModule,PcdsDynamic,PcdsDynamicEx] + ## This PCD specifies the ACPI debug message buffer size. + gAcpiDebugFeaturePkgTokenSpaceGuid.PcdAcpiDebugBufferSize|0x1|UINT32|0xF001 + +[PcdsDynamic, PcdsDynamicEx] + ## This PCD specifies ACPI debug message buffer address. + # The PCD value will be updated during boot time when the buffer is allocated. + gAcpiDebugFeaturePkgTokenSpaceGuid.PcdAcpiDebugAddress|0|UINT32|0xD001 diff --git a/Features/Intel/Debugging/AcpiDebugFeaturePkg/AcpiDebugFeaturePkg.dsc b/Features/Intel/Debugging/AcpiDebugFeaturePkg/AcpiDebugFeaturePkg.dsc new file mode 100644 index 00..62cc559d8f --- /dev/null +++ b/Features/Intel/Debugging/AcpiDebugFeaturePkg/AcpiDebugFeaturePkg.dsc @@ -0,0 +1,30 @@ +## @file +# This package provides advanced feature functionality for ACPI Debug support. +# This package should only depend on EDK II Core packages, IntelSiliconPkg, and MinPlatformPkg. +# +# The DEC files are used by the utilities that parse DSC and +# INF files to generate AutoGen.c and AutoGen.h files +# for the build infrastructure. +# +# Copyright (c) 2019, Intel Corporation. All rights reserved. +# +# SPDX-License-Identifier: BSD-2-Clause-Patent +# +## + +[Defines] + PLATFORM_NAME = AcpiDebugFeaturePkg + PLATFORM_GUID = F3001DF1-4A5B-42A9-944B-E766BDDC7B99 + PLATFORM_VERSION = 0.1 + DSC_SPECIFICATION = 0x00010005 + OUTPUT_DIRECTORY = Build/$(PLATFORM_NAME) + SUPPORTED_ARCHITECTURES= IA32|X64 + BUILD_TARGETS = DEBUG|RELEASE|NOOPT + SKUID_IDENTIFIER = DEFAULT + PEI_ARCH = IA32 + DXE_ARCH = X64 + +# +# This package always builds the feature. +# +!include Include/AcpiDebugFeature.dsc diff --git a/Features/Intel/Debugging/AcpiDebugFeaturePkg/Include/AcpiDebugFeature.dsc b/Features/Intel/Debugging/AcpiDebugFeaturePkg/Include/AcpiDebugFeature.dsc new file mode 100644 index 00..3e6b1f69c2 --- /dev/null +++ b/Features/Intel/Debugging/AcpiDebugFeaturePkg/Include/AcpiDebugFeature.dsc @@ -0,0 +1,125 @@ +## @file +# This is a build description file for the ACPI Debug advanced feature. +# This file should be included into another package DSC file to build this feature. +# +# The DEC files are used by the utilities that parse DSC and +# INF files to generate AutoGen.c and AutoGen.h files +# for the build infrastructure. +# +# Copyright (c) 2019, Intel Corporation. All rights reserved. +# +# SPDX-License-Identifier: BSD-2-Clause-Patent +# +## +
[edk2-devel] [edk2-platforms][PATCH V2 13/47] Features/Intel/IpmiFeaturePkg: Add initial package
Adds a new feature package for the IPMI feature. This change updates the advanced feature package template for IPMI and adds the updated template to the IpmiFeaturePkg. Cc: Sai Chaganty Cc: Liming Gao Signed-off-by: Michael Kubacki --- Features/Intel/OutOfBandManagement/IpmiFeaturePkg/IpmiFeaturePkg.dec | 29 +++ Features/Intel/OutOfBandManagement/IpmiFeaturePkg/IpmiFeaturePkg.dsc | 24 ++ Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Include/PostMemory.fdf | 8 ++ Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Include/PreMemory.fdf | 8 ++ Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Readme.md | 89 5 files changed, 158 insertions(+) diff --git a/Features/Intel/OutOfBandManagement/IpmiFeaturePkg/IpmiFeaturePkg.dec b/Features/Intel/OutOfBandManagement/IpmiFeaturePkg/IpmiFeaturePkg.dec new file mode 100644 index 00..dfae88 --- /dev/null +++ b/Features/Intel/OutOfBandManagement/IpmiFeaturePkg/IpmiFeaturePkg.dec @@ -0,0 +1,29 @@ +## @file +# This package provides advanced feature functionality to enable the +# Intelligent Platform Management Interface (IPMI). +# This package should only depend on EDK II Core packages, IntelSiliconPkg, and MinPlatformPkg. +# +# The DEC files are used by the utilities that parse DSC and +# INF files to generate AutoGen.c and AutoGen.h files +# for the build infrastructure. +# +# Copyright (c) 2019, Intel Corporation. All rights reserved. +# +# SPDX-License-Identifier: BSD-2-Clause-Patent +# +## + +[Defines] + DEC_SPECIFICATION = 0x00010017 + PACKAGE_NAME = IpmiFeaturePkg + PACKAGE_GUID = AE091910-F6C9-4AB5-B8B4-995E2F0D5166 + PACKAGE_VERSION = 0.1 + +[Includes] + Include + +[Guids] + gIpmiFeaturePkgTokenSpaceGuid = {0xc05283f6, 0xd6a8, 0x48f3, {0x9b, 0x59, 0xfb, 0xca, 0x71, 0x32, 0x0f, 0x12}} + +[PcdsFeatureFlag] + gIpmiFeaturePkgTokenSpaceGuid.PcdIpmiFeatureEnable|FALSE|BOOLEAN|0xA001 diff --git a/Features/Intel/OutOfBandManagement/IpmiFeaturePkg/IpmiFeaturePkg.dsc b/Features/Intel/OutOfBandManagement/IpmiFeaturePkg/IpmiFeaturePkg.dsc new file mode 100644 index 00..1952ba185e --- /dev/null +++ b/Features/Intel/OutOfBandManagement/IpmiFeaturePkg/IpmiFeaturePkg.dsc @@ -0,0 +1,24 @@ +## @file +# This package provides advanced feature functionality to enable the +# Intelligent Platform Management Interface (IPMI). +# This package should only depend on EDK II Core packages, IntelSiliconPkg, and MinPlatformPkg. +# +# The DEC files are used by the utilities that parse DSC and +# INF files to generate AutoGen.c and AutoGen.h files +# for the build infrastructure. +# +# Copyright (c) 2019, Intel Corporation. All rights reserved. +# +# SPDX-License-Identifier: BSD-2-Clause-Patent +# +## + +[Defines] + PLATFORM_NAME = IpmiFeaturePkg + PLATFORM_GUID = 7B2E74D7-9538-4818-B51A-492F3D33BD20 + PLATFORM_VERSION = 0.1 + DSC_SPECIFICATION = 0x00010005 + OUTPUT_DIRECTORY = Build/$(PLATFORM_NAME) + SUPPORTED_ARCHITECTURES= IA32|X64 + BUILD_TARGETS = DEBUG|RELEASE|NOOPT + SKUID_IDENTIFIER = DEFAULT diff --git a/Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Include/PostMemory.fdf b/Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Include/PostMemory.fdf new file mode 100644 index 00..c3847c54c7 --- /dev/null +++ b/Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Include/PostMemory.fdf @@ -0,0 +1,8 @@ +## @file +# FDF file for post-memory modules that enable Intelligent Platform Management Interface. +# +# Copyright (c) 2019, Intel Corporation. All rights reserved. +# +# SPDX-License-Identifier: BSD-2-Clause-Patent +# +## diff --git a/Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Include/PreMemory.fdf b/Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Include/PreMemory.fdf new file mode 100644 index 00..0c82d7eb02 --- /dev/null +++ b/Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Include/PreMemory.fdf @@ -0,0 +1,8 @@ +## @file +# FDF file for pre-memory modules that enable Intelligent Platform Management Interface. +# +# Copyright (c) 2019, Intel Corporation. All rights reserved. +# +# SPDX-License-Identifier: BSD-2-Clause-Patent +# +## diff --git a/Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Readme.md b/Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Readme.md new file mode 100644 index 00..e70f1e850b --- /dev/null +++ b/Features/Intel/OutOfBandManagement/IpmiFeaturePkg/Readme.md @@ -0,0 +1,89 @@ +# Overview +* **Feature Name:** Intelligent Platform Management Interface (IPMI) +* **PI Phase(s) Supported:** PEI, DXE +* **SMM Required?** No + +More Information: +* [IPMI Specification 2nd Generation v2.0](https://www.intel.com/content/dam/www/public/us/en/documents/product-briefs/ipmi-second-gen-interface-spec-v2-rev1-1.pdf) + +## Purpose +The IPMI feature provides firmware functionality that
[edk2-devel] [edk2-platforms][PATCH V2 09/47] Features/Intel/UserInterface: Add Readme.md
Adds the Readme.md file to briefly explain the types of features supported in the UserInterface feature domain directory. Cc: Sai Chaganty Cc: Liming Gao Signed-off-by: Michael Kubacki Reviewed-by: Nate DeSimone --- Features/Intel/UserInterface/Readme.md | 9 + 1 file changed, 9 insertions(+) diff --git a/Features/Intel/UserInterface/Readme.md b/Features/Intel/UserInterface/Readme.md new file mode 100644 index 00..2ef4413ade --- /dev/null +++ b/Features/Intel/UserInterface/Readme.md @@ -0,0 +1,9 @@ +# **EDK II Minimum Platform Firmware User Interface Features** + +This feature domain directory contains user interface related advanced features. + +Features may be added to this domain whose primary role and responsibility is related to user interfaces. This may +include any number of interfaces related to user interaction with the system that require firmware support. High-level +examples of common user interfaces in firmware are console support and Human Interface Infrastructure (HII). These +high-level categories may comprise multiple independent features. It is recommended to reduce individual feature scope +to the minimally required level for the feature to be functional to improve cohesion within the feature package. -- 2.16.2.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#51394): https://edk2.groups.io/g/devel/message/51394 Mute This Topic: https://groups.io/mt/63457198/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[edk2-devel] [edk2-platforms][PATCH V2 08/47] Features/Intel/Debugging: Add Readme.md
Adds the Readme.md file to briefly explain the types of features supported in the Debugging feature domain directory. Note that the domain directory is named "Debugging" as opposed to "Debug" to help indicate that the directory is related to features used for debugging and it is not an output directory for a Debug build target. Cc: Sai Chaganty Cc: Liming Gao Signed-off-by: Michael Kubacki Reviewed-by: Nate DeSimone --- Features/Intel/Debugging/Readme.md | 8 1 file changed, 8 insertions(+) diff --git a/Features/Intel/Debugging/Readme.md b/Features/Intel/Debugging/Readme.md new file mode 100644 index 00..98bb0b9b6c --- /dev/null +++ b/Features/Intel/Debugging/Readme.md @@ -0,0 +1,8 @@ +# **EDK II Minimum Platform Firmware Debug Advanced Features** + +This feature domain directory contains debug related advanced features. Note that the domain directory is named +"Debugging" as opposed to "Debug" to help indicate that the directory is related to features used for debugging and it +is not an output directory for a Debug build target. + +Features may be added to this domain whose primary role and responsibility is related to debug. The type of debug +technology may include hardware or software debug. -- 2.16.2.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#51393): https://edk2.groups.io/g/devel/message/51393 Mute This Topic: https://groups.io/mt/63457066/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[edk2-devel] [edk2-platforms][PATCH V2 11/47] TemplateFeaturePkg: Add initial package
This change adds a new package called TemplateFeaturePkg that should be used as a starting point for the creation of new advanced feature packages. TemplateFeaturePkg is not meant to be built or used directly for functionality. It simply serves as a template to be copied and modified. The advanced feature package creation process is described in detail in Features/Intel/Readme.md. Cc: Sai Chaganty Cc: Nate DeSimone Cc: Liming Gao Signed-off-by: Michael Kubacki Reviewed-by: Nate DeSimone --- Features/Intel/TemplateFeaturePkg/TemplateFeaturePkg.dec | 30 ++ Features/Intel/TemplateFeaturePkg/Include/TemplateFeature.dsc | 113 Features/Intel/TemplateFeaturePkg/TemplateFeaturePkg.dsc | 30 ++ Features/Intel/TemplateFeaturePkg/Include/PostMemory.fdf | 8 ++ Features/Intel/TemplateFeaturePkg/Include/PreMemory.fdf | 8 ++ Features/Intel/TemplateFeaturePkg/Readme.md | 71 6 files changed, 260 insertions(+) diff --git a/Features/Intel/TemplateFeaturePkg/TemplateFeaturePkg.dec b/Features/Intel/TemplateFeaturePkg/TemplateFeaturePkg.dec new file mode 100644 index 00..b37ce8f34a --- /dev/null +++ b/Features/Intel/TemplateFeaturePkg/TemplateFeaturePkg.dec @@ -0,0 +1,30 @@ +## @file +# This package provides advanced feature functionality for support. +# This package should only depend on EDK II Core packages, IntelSiliconPkg, and MinPlatformPkg. +# +# The DEC files are used by the utilities that parse DSC and +# INF files to generate AutoGen.c and AutoGen.h files +# for the build infrastructure. +# +# Copyright (c) 2019, Intel Corporation. All rights reserved. +# +# SPDX-License-Identifier: BSD-2-Clause-Patent +# +## + +[Defines] + DEC_SPECIFICATION = 0x00010017 + PACKAGE_NAME = TemplateFeaturePkg + PACKAGE_GUID = ---- + PACKAGE_VERSION = 0.1 + +[Includes] + Include + +[LibraryClasses] + +[Guids] + gTemplateFeaturePkgTokenSpaceGuid = {0x, 0x, 0x, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}} + +[PcdsFeatureFlag] + gTemplateFeaturePkgTokenSpaceGuid.PcdTemplateFeatureEnable|FALSE|BOOLEAN|0xA001 diff --git a/Features/Intel/TemplateFeaturePkg/Include/TemplateFeature.dsc b/Features/Intel/TemplateFeaturePkg/Include/TemplateFeature.dsc new file mode 100644 index 00..6742eddcf9 --- /dev/null +++ b/Features/Intel/TemplateFeaturePkg/Include/TemplateFeature.dsc @@ -0,0 +1,113 @@ +## @file +# This is a build description file for the advanced feature. +# This file should be included into another package DSC file to build this feature. +# +# The DEC files are used by the utilities that parse DSC and +# INF files to generate AutoGen.c and AutoGen.h files +# for the build infrastructure. +# +# Copyright (c) 2019, Intel Corporation. All rights reserved. +# +# SPDX-License-Identifier: BSD-2-Clause-Patent +# +## + + +# +# Defines Section - statements that will be processed to create a Makefile. +# + +[Defines] +!ifndef $(PEI_ARCH) + !error "PEI_ARCH must be specified to build this feature!" +!endif +!ifndef $(DXE_ARCH) + !error "DXE_ARCH must be specified to build this feature!" +!endif + + +# +# Library Class section - list of all Library Classes needed by this feature. +# + +[LibraryClasses] + + ## Note: This comment block should be removed from the template when the + #template is used. + # + # Library classes should have a comment header that describes the type of + # package the library is used from for organization purposes. + # + # For an advanced feature, these are typically: + #* Edk2 Packages + #* Silicon Initialization Package + #* Platform Package + #* Feature Package + # + # The comment header should follow the format: + # + # ### + # # Edk2 Packages + # ### + + +# +# Component section - list of all components that need built for this feature. +# +# Note: The EDK II DSC file is not used to specify how compiled binary images get placed +# into firmware volume images. This section is just a list of modules to compile from +# source into UEFI-compliant binaries. +# It is the FDF file that contains information on combining binary files into firmware +# volume images, whose concept is beyond UEFI and is described in PI specification. +# There may also be modules listed in this section that are not required in the FDF file, +# When a module listed here is excluded from FDF file, then
[edk2-devel] [edk2-platforms][PATCH V2 07/47] Features/Intel/SystemInformation: Add Readme.md
Adds the Readme.md file to briefly explain the types of features supported in the SystemInformation feature domain directory. Cc: Sai Chaganty Cc: Liming Gao Signed-off-by: Michael Kubacki Reviewed-by: Nate DeSimone --- Features/Intel/SystemInformation/Readme.md | 8 1 file changed, 8 insertions(+) diff --git a/Features/Intel/SystemInformation/Readme.md b/Features/Intel/SystemInformation/Readme.md new file mode 100644 index 00..cdf061d08d --- /dev/null +++ b/Features/Intel/SystemInformation/Readme.md @@ -0,0 +1,8 @@ +# **EDK II Minimum Platform Firmware System Information Advanced Features** + +This feature domain directory contains advanced features that produce system information. + +Features may be added to this domain whose primary role and responsibility is related to producing structures for +system information. The system information structures supported should be standardized in a public document such as +an industry standard specification or white paper. The feature documentation must be referenced in the `Readme.md` +file in the feature package. -- 2.16.2.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#51392): https://edk2.groups.io/g/devel/message/51392 Mute This Topic: https://groups.io/mt/63456953/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[edk2-devel] [edk2-platforms][PATCH V2 04/47] Features/Intel: Add Readme.md
This change adds the initial Readme.md to the root of the Features/ Intel directory. The features are maintained in an Intel directory because they are not tested on other systems. If there is interest to support a feature on systems other than Intel, the feature should be tested on those other systems and the feature can be promoted above the Intel directory. This Readme.md is the most important file in the Features/Intel tree as it provides the desired attributes and definition of advanced features, the advanced feature source layout, and the new feature creation checklist. This is the primary documentation file for new users to understand advanced features. Cc: Dandan Bi Cc: Sai Chaganty Cc: Chasel Chiu Cc: Wei David Y Cc: Nate DeSimone Cc: Eric Dong Cc: Liming Gao Cc: Agyeman Prince Signed-off-by: Michael Kubacki --- Features/Intel/Readme.md | 236 1 file changed, 236 insertions(+) diff --git a/Features/Intel/Readme.md b/Features/Intel/Readme.md new file mode 100644 index 00..9729f90a41 --- /dev/null +++ b/Features/Intel/Readme.md @@ -0,0 +1,236 @@ +# **EDK II Minimum Platform Firmware Advanced Features for Intel Platforms** + +In the EDK II Minimum Platform, advanced features are non-essential features. Essential features are those required +to achieve an earlier boot stage (Stage I through Stage V). The Minimum Platform boot stages are defined in the +[EDK II Minimum Platform Draft Specification](https://edk2-docs.gitbooks.io/edk-ii-minimum-platform-specification/). A +brief overview is also provided in the [Platform/Intel/Readme.md](https://github.com/tianocore/edk2-platforms/blob/master/Platform/Intel/Readme.md). + +An advanced feature must be implemented as highly cohesive and stand-alone software to only support a specific +feature. Advanced features are the primary method to extend platform firmware capabilities in a modular fashion. + +If you would like to quickly get started creating a new advanced feature, you can jump ahead to the +[Add New Advanced Feature Checklist](#Add-New-Advanced-Feature-Checklist) and reference other sections of this +document as needed. + +## Overview + +### Advanced Feature Attributes +Advanced features should be: +* _Cohesive_, the feature should not contain any functionality unrelated to the feature. +* _Complete_, the feature must have a complete design that minimizes dependencies. A feature package cannot directly + depend on another feature package. +* _Easy to Integrate_, the feature should expose well-defined software interfaces to use and configure the feature. + * It should also present a set of simple and well-documented standard EDK II configuration options such as PCDs to + configure the feature. + * In general, features should be self-contained and started by the dispatcher. The board firmware should +be required to perform as few steps as possible to enable the feature. + * All features are required to have a feature enable PCD (`PcdFeatureEnable`). Any effort to enable the feature +besides this PCD should be carefully considered. Default configuration values should apply to the common case. +* _Portable_, the feature is not allowed to depend on other advanced feature or board source code packages. For example, + if Feature A depends on output Feature B, a board integration module should use a generic interface in Feature A + to get the output and pass it to a generic interface in Feature B. Structures should not be shared between feature + packages. Most structures should be defined in a common package such as MdePkg if the structure is industry standard, + IntelSiliconPkg if the structure is specific to Intel silicon initialization, etc. Feature-specific structures are + of course allowed to be defined within a feature package and used by libraries and modules in that package. +* _Self Documenting_, the feature should follow software best practices to allow others to debug the code and + contribute changes. In addition to source code, advanced features must have a Readme.md with sufficient + information for a newcomer to understand the feature. +* _Single Instance_, the feature should not have more than one instance of a source solution. If an existing feature + package does not solve a specific instance of a problem for the feature, the feature package should be re-worked + to consider new requirements instead of duplicating feature code. + + Features should be written for a specific feature technology. Outside of technology restrictions, the feature + should not make arbitrary assumptions about the type of board or system that may integrate the feature. Any + board or hardware-specific details that may vary in design should be given to the feature through a defined + and documented software interface. + +### Advanced Feature Packages +Feature portability is a key aspect of board scalability. To maintain high cohesion within a feature package and
[edk2-devel] [edk2-platforms][PATCH V2 02/47] DebugFeaturePkg: Package DSC style cleanup
This change refactors DebugFeaturePkg.dsc to consolidate redundant sections and better group file content to improve maintainability and readability. This pattern is being applied in all Minimum Platform package DSC files. Cc: Eric Dong Cc: Liming Gao Signed-off-by: Michael Kubacki Reviewed-by: Nate DeSimone --- Platform/Intel/DebugFeaturePkg/DebugFeaturePkg.dsc | 55 +--- 1 file changed, 37 insertions(+), 18 deletions(-) diff --git a/Platform/Intel/DebugFeaturePkg/DebugFeaturePkg.dsc b/Platform/Intel/DebugFeaturePkg/DebugFeaturePkg.dsc index 8e5ff4c9a3..efe705bd76 100644 --- a/Platform/Intel/DebugFeaturePkg/DebugFeaturePkg.dsc +++ b/Platform/Intel/DebugFeaturePkg/DebugFeaturePkg.dsc @@ -1,6 +1,6 @@ ## @file # This package provides the modules that build for debug feature. -# This DebugFeaturePkg should only depend on EDKII Core packages and MinPlatformPkg. +# This package should only depend on EDKII Core packages and MinPlatformPkg. # # The DEC files are used by the utilities that parse DSC and # INF files to generate AutoGen.c and AutoGen.h files @@ -23,46 +23,58 @@ SKUID_IDENTIFIER = DEFAULT [LibraryClasses] - # - # Entry point - # - UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf + ### + # Edk2 Packages + ### BaseLib|MdePkg/Library/BaseLib/BaseLib.inf BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf - PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf + DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf + DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf + DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf + PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf - UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf + PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf - PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf - DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf - DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf - DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf + UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf + UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf UefiLib|MdePkg/Library/UefiLib/UefiLib.inf UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf [LibraryClasses.common.PEIM] + ### + # Edk2 Packages + ### HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf - #Usb3DebugPortLib|DebugFeaturePkg/Library/Usb3DebugPortLib/Usb3DebugPortLibPeiIoMmu.inf - -[LibraryClasses.IA32.PEIM, LibraryClasses.X64.PEIM] PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf [LibraryClasses.common.DXE_DRIVER] + ### + # Edk2 Packages + ### HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf [LibraryClasses.common.UEFI_DRIVER] + ### + # Edk2 Packages + ### HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf [LibraryClasses.common.DXE_RUNTIME_DRIVER] + ### + # Edk2 Packages + ### HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf [LibraryClasses.common.DXE_SMM_DRIVER] + ### + # Edk2 Packages + ### HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf MemoryAllocationLib|MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf SmmServicesTableLib|MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf @@ -87,13 +99,20 @@ ### [Components] - DebugFeaturePkg/Library/Usb3DebugPortParameterLibPcd/Usb3DebugPortParameterLibPcd.inf - DebugFeaturePkg/Library/Usb3DebugPortLib/Usb3DebugPortLibNull.inf - DebugFeaturePkg/Library/Usb3DebugPortLib/Usb3DebugPortLibPeiIoMmu.inf +
[edk2-devel] [edk2-platforms][PATCH V2 00/47] Intel Advanced Feature Refactor
RFC:https://edk2.groups.io/g/devel/message/49880 V2 Changes: 1. Reordered the patch series to the following high-level order: 1. Clean up existing advanced feature DSC files 2. Add new Readme.md files 3. Add new advanced feature packages in Features/Intel 4. Make changes in board packages in Platform/Intel to use the new features 5. Enable the advanced features in the board packages in Platform/Intel 6. Remove the original set of advanced features in Platform/Intel 7. Update Maintainers.txt for the changes This is done to allow closed source platforms to switch their advanced features from the set in Platform/Intel to Features/Intel after line #3 and before line #6. 2. [edk2-platforms][PATCH V1 28/49] Features/Intel/NetworkFeaturePkg: Add initial package 1. Filled in the "Purpose" section of the feature Readme.md. 3. [edk2-platforms][PATCH V1 27/49] Features/Intel/UserAuthFeaturePkg: Add initial package 1. Filled in the "Purpose" section of the feature Readme.md. 4. [edk2-platforms][PATCH V1 25/49] Features/Intel/Usb3DebugFeaturePkg: Add initial package 1. Filled in the "Purpose" section of the feature Readme.md. 5. [edk2-platforms][PATCH V1 22/49] DebugFeaturePkg: Remove the ACPI Debug feature 1. Filled in the "Purpose" section of the feature Readme.md. 6. [edk2-platforms][PATCH V1 20/49] Features/Intel/SmbiosFeaturePkg: Add initial package 1. Filled in the "Purpose" section of the feature Readme.md. 2. Updated copyright years. 7. [edk2-platforms][PATCH V1 18/49] Features/Intel/IpmiFeaturePkg: Add modules 1. Updated copyright years. 8. [edk2-platforms][PATCH V1 16/49] Features/Intel/IpmiFeaturePkg: Add initial package 1. Filled in the "Purpose" section of the feature Readme.md. 9. [edk2-platforms][PATCH V1 14/49] Features/Intel: Add S3FeaturePkg 1. Filled in the "Purpose" section of the feature Readme.md. 10. [edk2-platforms][PATCH V1 04/49] Features/Intel: Add Readme.md 1. Added a Linux example for setting the PACKAGES_PATH value in Features/Intel/Readme.md This patch series introduces a consistent design for Intel advanced features. Advanced features in this context refer to the definition stated in the EDK II Minimum Platform specification. Information regarding this feature design is provided in Features/Intel/Readme.md. An RFC was sent to the mailing list on 11/1/2019 that stated the intention of creating the Features directory in edk2-platforms for this purpose and that change is implemented in this patch series. Testing performed: * Feature packages and board packages build successfully * Board packages boot successfully to their supported OS * Board package Stage 4 and Stage 6 tested The actual feature source implementation that previously existed was not functionally modified. Any issues reported by PatchCheck.py were fixed. Future changes will be made to individually address improving the quality of each feature and to add new features. This patch series is intended to provide a foundation for future changes to the advanced feature design as an incremental improvement over the current state. The contents of this patch series is on the following branch: https://github.com/makubacki/edk2-platforms/tree/advanced_feature_reorg_v2 Cc: Agyeman Prince Cc: Chasel Chiu Cc: Dandan Bi Cc: Eric Dong Cc: Isaac W Oram Cc: Liming Gao Cc: Nate DeSimone Cc: Sai Chaganty Cc: Wei David Y Signed-off-by: Michael Kubacki Michael Kubacki (47): AdvancedFeaturePkg: Package DSC style cleanup DebugFeaturePkg: Package DSC style cleanup UserInterfaceFeaturePkg: Package DSC style cleanup Features/Intel: Add Readme.md Features/Intel/PowerManagement: Add Readme.md Features/Intel/OutOfBandManagement: Add Readme.md Features/Intel/SystemInformation: Add Readme.md Features/Intel/Debugging: Add Readme.md Features/Intel/UserInterface: Add Readme.md Features/Intel/Network: Add Readme.md TemplateFeaturePkg: Add initial package Features/Intel/S3FeaturePkg: Add initial package Features/Intel/IpmiFeaturePkg: Add initial package Features/Intel/IpmiFeaturePkg: Add libraries Features/Intel/IpmiFeaturePkg: Add modules Features/Intel/SmbiosFeaturePkg: Add initial package Features/Intel/SmbiosFeaturePkg: Update default strings Features/Intel/AcpiDebugFeaturePkg: Add initial package Features/Intel/Usb3DebugFeaturePkg: Add initial package Features/Intel/UserAuthFeaturePkg: Add initial package Features/Intel/NetworkFeaturePkg: Add initial package Features/Intel/AdvancedFeaturePkg: Add package Features/Intel/AdvancedFeaturePkg: Add temporary build workaround Features/Intel/AdvancedFeaturePkg: Add FDF include files KabylakeOpenBoardPkg/KabylakeRvp3: Add PEI_ARCH and DXE_ARCH KabylakeOpenBoardPkg/GalagoPro3: Add PEI_ARCH and DXE_ARCH WhiskeylakeOpenBoardPkg/WhiskeylakeURvp: Add PEI_ARCH and DXE_ARCH SimicsOpenB
[edk2-devel] [edk2-platforms][PATCH V2 01/47] AdvancedFeaturePkg: Package DSC style cleanup
This change refactors AdvancedFeaturePkg.dsc to consolidate redundant sections and better group file content to improve maintainability and readability. This pattern is being applied in all Minimum Platform package DSC files. Cc: Sai Chaganty Cc: Liming Gao Signed-off-by: Michael Kubacki Reviewed-by: Nate DeSimone --- Platform/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc | 133 +++- 1 file changed, 71 insertions(+), 62 deletions(-) diff --git a/Platform/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc b/Platform/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc index b2e7ab8302..b83e72b48c 100644 --- a/Platform/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc +++ b/Platform/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc @@ -1,5 +1,5 @@ ## @file -# Platform description. +# Advanced Feature Package build description file. # # Copyright (c) 2017 - 2019, Intel Corporation. All rights reserved. # @@ -24,8 +24,7 @@ # -# SKU Identification section - list of all SKU IDs supported by this -# Platform. +# SKU Identification section - list of all SKU IDs supported. # [SkuIds] @@ -33,88 +32,93 @@ # -# Pcd Section - list of all EDK II PCD Entries defined by this Platform +# Pcd Section - list of all EDK II PCD Entries defined by this package. # - + [PcdsFeatureFlag] # -# Library Class section - list of all Library Classes needed by this Platform. +# Library Class section - list of all Library Classes needed by this package. # [LibraryClasses.common] - - PeiCoreEntryPoint|MdePkg/Library/PeiCoreEntryPoint/PeiCoreEntryPoint.inf - PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf - DxeCoreEntryPoint|MdePkg/Library/DxeCoreEntryPoint/DxeCoreEntryPoint.inf - UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf - UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf - SerialPortLib|MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf - PeCoffExtraActionLib|MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeCoffExtraActionLibNull.inf - - # - # Basic - # + ### + # Edk2 Packages + ### BaseLib|MdePkg/Library/BaseLib/BaseLib.inf BaseMemoryLib|MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf - - PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf + BasePciLibPciExpress|MdePkg/Library/BasePciLibPciExpress/BasePciLibPciExpress.inf + CacheMaintenanceLib|MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf CpuLib|MdePkg/Library/BaseCpuLib/BaseCpuLib.inf + DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf + DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf + DxeCoreEntryPoint|MdePkg/Library/DxeCoreEntryPoint/DxeCoreEntryPoint.inf + DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf + DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf + HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf - PciSegmentLib|MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf - PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf - BasePciLibPciExpress|MdePkg/Library/BasePciLibPciExpress/BasePciLibPciExpress.inf -# PciLib|MdePkg/Library/BasePciLibPciExpress/BasePciLibPciExpress.inf + PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf PciCf8Lib|MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf PciExpressLib|MdePkg/Library/BasePciExpressLib/BasePciExpressLib.inf - CacheMaintenanceLib|MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf - PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf + PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf + PciSegmentLib|MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf + PeCoffExtraActionLib|MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeCoffExtraActionLibNull.inf PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf + PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf + PeiCoreEntryPoint|MdePkg/Library/PeiCoreEntryPoint/PeiCoreEntryPoint.inf + PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf + PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf +
[edk2-devel] [edk2-platforms][PATCH V2 03/47] UserInterfaceFeaturePkg: Package DSC style cleanup
This change refactors UserInterfaceFeaturePkg.dsc to consolidate redundant sections and better group file content to improve maintainability and readability. This pattern is being applied in all Minimum Platform package DSC files. Cc: Dandan Bi Cc: Liming Gao Signed-off-by: Michael Kubacki Reviewed-by: Nate DeSimone --- Platform/Intel/UserInterfaceFeaturePkg/UserInterfaceFeaturePkg.dsc | 45 ++-- 1 file changed, 33 insertions(+), 12 deletions(-) diff --git a/Platform/Intel/UserInterfaceFeaturePkg/UserInterfaceFeaturePkg.dsc b/Platform/Intel/UserInterfaceFeaturePkg/UserInterfaceFeaturePkg.dsc index 6c5f77b59b..bd09052f3c 100644 --- a/Platform/Intel/UserInterfaceFeaturePkg/UserInterfaceFeaturePkg.dsc +++ b/Platform/Intel/UserInterfaceFeaturePkg/UserInterfaceFeaturePkg.dsc @@ -1,5 +1,6 @@ ## @file # This package provides UI related modules. +# This package should only depend on EDKII Core packages and MinPlatformPkg. # # The DEC files are used by the utilities that parse DSC and # INF files to generate AutoGen.c and AutoGen.h files @@ -22,32 +23,45 @@ SKUID_IDENTIFIER = DEFAULT [LibraryClasses] - UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf + ### + # Edk2 Packages + ### BaseLib|MdePkg/Library/BaseLib/BaseLib.inf BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf - PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf - IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf - UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf - UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf - UefiLib|MdePkg/Library/UefiLib/UefiLib.inf - UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf - HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf - DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf - TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf - PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf + DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf + HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf + IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf + PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf + PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf + TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf + UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf + UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf + UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf + UefiLib|MdePkg/Library/UefiLib/UefiLib.inf + UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf + + # + # User Interface Feature Package + # PlatformPasswordLib|UserInterfaceFeaturePkg/Library/PlatformPasswordLibNull/PlatformPasswordLibNull.inf UserPasswordLib|UserInterfaceFeaturePkg/Library/UserPasswordLib/UserPasswordLib.inf [LibraryClasses.common.DXE_DRIVER] + ### + # Edk2 Packages + ### MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf [LibraryClasses.common.DXE_SMM_DRIVER] + ### + # Edk2 Packages + ### + BaseCryptLib|CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf MemoryAllocationLib|MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf SmmServicesTableLib|MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf - BaseCryptLib|CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf ### # @@ -68,10 +82,17 @@ # ### [Components] + # + # User Interface Feature Package + # + + # Add library instances here that are not included in package components and should be tested + # in the package build. UserInterfaceFeaturePkg/Library/PlatformPasswordLibNull/PlatformPasswordLibNull.inf UserInterfaceFeaturePkg/Library/UserPasswordLib/UserPasswordLib.inf UserInterfaceFeaturePkg/Library/UserPasswordUiLib/UserPasswordUiLib.inf + # Add components here that should be included in the package build.
[edk2-devel] [edk2-platforms][PATCH V2 05/47] Features/Intel/PowerManagement: Add Readme.md
Adds the Readme.md file to briefly explain the types of features supported in the PowerManagement feature domain directory. Cc: Sai Chaganty Cc: Liming Gao Signed-off-by: Michael Kubacki Reviewed-by: Nate DeSimone --- Features/Intel/PowerManagement/Readme.md | 10 ++ 1 file changed, 10 insertions(+) diff --git a/Features/Intel/PowerManagement/Readme.md b/Features/Intel/PowerManagement/Readme.md new file mode 100644 index 00..f539fbd2ec --- /dev/null +++ b/Features/Intel/PowerManagement/Readme.md @@ -0,0 +1,10 @@ +# **EDK II Minimum Platform Firmware Power Management Advanced Features** + +This feature domain directory contains power management related advanced features. + +Features may be added to this domain whose primary role and responsibility is related to power management including +support for various power states such as device power states (Dx), system sleep states (Sx), processor power states (Cx), +performance states (Px), etc. Firmware power management responsibilities are largely defined by the +[Advanced Configuration Configuration and Power Interface Specification](https://uefi.org/specifications) though features +in this domain may be written to other specifications or not defined in a specification at all. In any case, the +`Readme.md` file in the feature package should reference all relevant documentation to the feature. -- 2.16.2.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#51390): https://edk2.groups.io/g/devel/message/51390 Mute This Topic: https://groups.io/mt/63456720/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [edk2-platforms][PATCH V1 00/49] Intel Advanced Feature Refactor
Yes, I reordered the patch series this way in V2 and I will update the closed source platforms before the old advanced feature dependencies are removed. Thanks, Michael > -Original Message- > From: Bi, Dandan > Sent: Monday, November 18, 2019 12:41 AM > To: Kubacki, Michael A ; > devel@edk2.groups.io > Cc: Agyeman, Prince ; Chiu, Chasel > ; Dong, Eric ; Oram, Isaac W > ; Gao, Liming ; Desimone, > Nathaniel L ; Chaganty, Rangasai V > ; Wei, David Y > Subject: RE: [edk2-platforms][PATCH V1 00/49] Intel Advanced Feature > Refactor > > Hi Michael, > > One minor comment, could we add the features into Features/ folder firstly > and then update consumer platforms if have (open platforms and close > source platforms) to use the ones in the new location, at last delete the old > ones in Platform/Intel folder? > > > Thanks, > Dandan > > -Original Message- > > From: Kubacki, Michael A > > Sent: Wednesday, November 13, 2019 11:27 AM > > To: devel@edk2.groups.io > > Cc: Agyeman, Prince ; Chiu, Chasel > > ; Bi, Dandan ; Dong, Eric > > ; Oram, Isaac W ; Gao, > > Liming ; Desimone, Nathaniel L > > ; Chaganty, Rangasai V > > ; Wei, David Y > > Subject: [edk2-platforms][PATCH V1 00/49] Intel Advanced Feature > Refactor > > > > RFC:https://edk2.groups.io/g/devel/message/49880 > > > > This patch series introduces a consistent design for Intel advanced > features. > > > > Advanced features in this context refer to the definition stated in > > the EDK II Minimum Platform specification. Information regarding > > this feature design is provided in Features/Intel/Readme.md. > > > > An RFC was sent to the mailing list on 11/1/2019 that stated the > > intention of creating the Features directory in edk2-platforms for > > this purpose and that change is implemented in this patch series. > > > > Testing performed: > > * Feature packages and board packages build successfully > > * Board packages boot successfully to their supported OS > > * Board package Stage 4 and Stage 6 tested > > > > The actual feature source implementation was not functionally > > modified. Any issues reported by PatchCheck.py were fixed. > > Future changes will be made to individually address improving the > > quality of each feature and to add new features. > > > > This patch series is intended to provide a foundation for future > > changes to the advanced feature design as an incremental improvement > > over the current state and should not be considered the final state. > > > > Cc: Agyeman Prince > > Cc: Chasel Chiu > > Cc: Dandan Bi > > Cc: Eric Dong > > Cc: Isaac W Oram > > Cc: Liming Gao > > Cc: Nate DeSimone > > Cc: Sai Chaganty > > Cc: Wei David Y > > Signed-off-by: Michael Kubacki > > > > Michael Kubacki (49): > > AdvancedFeaturePkg: Package DSC style cleanup > > DebugFeaturePkg: Package DSC style cleanup > > UserInterfaceFeaturePkg: Package DSC style cleanup > > Features/Intel: Add Readme.md > > Features/Intel/PowerManagement: Add Readme.md > > Features/Intel/OutOfBandManagement: Add Readme.md > > Features/Intel/SystemInformation: Add Readme.md > > Features/Intel/Debug: Add Readme.md > > Features/Intel/UserInterface: Add Readme.md > > Features/Intel/Network: Add Readme.md > > TemplateFeaturePkg: Add initial package > > SimicsOpenBoardPkg: Remove advanced feature references > > AdvancedFeaturePkg: Remove the S3 feature > > Features/Intel: Add S3FeaturePkg > > AdvancedFeaturePkg: Remove the IPMI feature > > Features/Intel/IpmiFeaturePkg: Add initial package > > Features/Intel/IpmiFeaturePkg: Add libraries > > Features/Intel/IpmiFeaturePkg: Add modules > > AdvancedFeaturePkg: Remove the SMBIOS feature > > Features/Intel/SmbiosFeaturePkg: Add initial package > > Features/Intel/SmbiosFeaturePkg: Update default strings > > DebugFeaturePkg: Remove the ACPI Debug feature > > Features/Intel/AcpiDebugFeaturePkg: Add initial package > > DebugFeaturePkg: Remove the USB3 Debug feature > > Features/Intel/Usb3DebugFeaturePkg: Add initial package > > UserInterfaceFeaturePkg: Remove the User Authentication feature > > Features/Intel/UserAuthFeaturePkg: Add initial package > > Features/Intel/NetworkFeaturePkg: Add initial package > > AdvancedFeaturePkg: Remove remaining contents > > AdvancedFeaturePkg: Move to Features/Intel > > AdvancedFeaturePkg: Add feature build support > > AdvancedFeaturePkg: Add tempora
Re: [edk2-devel] [PATCH V1 2/2] MdeModulePkg PeiCore: Improve comment semantics
Hi Philippe, Thanks for your suggestions. I incorporated some of the suggestions into the V2 series. Thanks, Michael > -Original Message- > From: devel@edk2.groups.io On Behalf Of Philippe > Mathieu-Daudé > Sent: Wednesday, November 27, 2019 3:49 AM > To: devel@edk2.groups.io; Kubacki, Michael A > > Cc: Bi, Dandan ; Gao, Liming ; > Wang, Jian J ; Wu, Hao A > Subject: Re: [edk2-devel] [PATCH V1 2/2] MdeModulePkg PeiCore: Improve > comment semantics > > On 11/27/19 5:06 AM, Kubacki, Michael A via Groups.Io wrote: > > Clarifies wording in several PeiCore comments to improve > > "Clarify"? > I believe an implied subject noun led to some confusion so I just explicitly included that in the V2 message. > > reading comprehension. > > > > Cc: Dandan Bi > > Cc: Liming Gao > > Cc: Jian J Wang > > Cc: Hao A Wu > > Signed-off-by: Michael Kubacki > > --- > > MdeModulePkg/Core/Pei/FwVol/FwVol.h | 4 ++-- > > MdeModulePkg/Core/Pei/PeiMain.h | 11 +- > > MdeModulePkg/Core/Pei/Dependency/Dependency.c | 4 ++-- > > MdeModulePkg/Core/Pei/Dispatcher/Dispatcher.c | 4 ++-- > > MdeModulePkg/Core/Pei/FwVol/FwVol.c | 23 ++-- > > MdeModulePkg/Core/Pei/Memory/MemoryServices.c | 4 ++-- > > 6 files changed, 26 insertions(+), 24 deletions(-) > > > > diff --git a/MdeModulePkg/Core/Pei/FwVol/FwVol.h > > b/MdeModulePkg/Core/Pei/FwVol/FwVol.h > > index 263f0d7a56..8aaf84870b 100644 > > --- a/MdeModulePkg/Core/Pei/FwVol/FwVol.h > > +++ b/MdeModulePkg/Core/Pei/FwVol/FwVol.h > > @@ -303,9 +303,9 @@ FindFileEx ( > > ); > > > > /** > > - Report the information for a new discovered FV in unknown format. > > + Report the information for a newly discovered FV in an unknown format. > > > > - If the EFI_PEI_FIRMWARE_VOLUME_PPI has not been installed for > > specific FV format, but > > + If the EFI_PEI_FIRMWARE_VOLUME_PPI has not been installed for a > > + third-party FV format, but > > the FV in this FV format has been discovered, then the information of > this FV > > will be cached into PEI_CORE_INSTANCE's UnknownFvInfo array. > > Also a notification would be installed for unknown FV format GUID, > > if EFI_PEI_FIRMWARE_VOLUME_PPI diff --git > > a/MdeModulePkg/Core/Pei/PeiMain.h > b/MdeModulePkg/Core/Pei/PeiMain.h > > index 3f61247a0f..96d6df0485 100644 > > --- a/MdeModulePkg/Core/Pei/PeiMain.h > > +++ b/MdeModulePkg/Core/Pei/PeiMain.h > > @@ -1217,8 +1217,8 @@ PeiFfsGetVolumeInfo ( > > ); > > > > /** > > - This routine enable a PEIM to register itself to shadow when PEI > > Foundation > > - discovery permanent memory. > > + This routine enables a PEIM to register itself for shadow when the > > + PEI Foundation discovers permanent memory. > > > > @param FileHandle File handle of a PEIM. > > > > @@ -1314,12 +1314,13 @@ ProcessFvFile ( > > ); > > > > /** > > - Get instance of PEI_CORE_FV_HANDLE for next volume according to > given index. > > + Gets a PEI_CORE_FV_HANDLE instance for the next volume according to > the given index. > > "Get"? > I left as-is in V2. You can see similar usage in the majority of function descriptions in BaseLib.h for example. > > > > - This routine also will install FvInfo PPI for FV HOB in PI ways. > > + This routine also will install an instance of the FvInfo PPI for > > + the FV HOB as defined in the PI specification. > > > > @param PrivatePointer of PEI_CORE_INSTANCE > > - @param Instance The index of FV want to be searched. > > + @param Instance The index of the FV to search. > > Maybe without "The" and trailing dot? > Done in V2. > > > > @return Instance of PEI_CORE_FV_HANDLE. > > **/ > > diff --git a/MdeModulePkg/Core/Pei/Dependency/Dependency.c > > b/MdeModulePkg/Core/Pei/Dependency/Dependency.c > > index 9a8353aef2..b53e5f2686 100644 > > --- a/MdeModulePkg/Core/Pei/Dependency/Dependency.c > > +++ b/MdeModulePkg/Core/Pei/Dependency/Dependency.c > > @@ -2,8 +2,8 @@ > > PEI Dispatcher Dependency Evaluator > > > > This routine evaluates a dependency expression > > (DEPENDENCY_EXPRESSION) to determine > > - if a driver can be scheduled for execution. The criteria for > > - schedulability is that the dependency expression is satisfied. > > + if a driver can be scheduled for execution. The criteria to be > > + scheduled is
[edk2-devel] [PATCH V2 2/2] MdeModulePkg PeiCore: Improve comment semantics
This patch clarifies wording in several PeiCore comments to improve reading comprehension. Cc: Dandan Bi Cc: Liming Gao Cc: Jian J Wang Cc: Hao A Wu Signed-off-by: Michael Kubacki --- MdeModulePkg/Core/Pei/FwVol/FwVol.h | 9 MdeModulePkg/Core/Pei/PeiMain.h | 11 + MdeModulePkg/Core/Pei/Dependency/Dependency.c | 4 ++-- MdeModulePkg/Core/Pei/Dispatcher/Dispatcher.c | 4 ++-- MdeModulePkg/Core/Pei/FwVol/FwVol.c | 24 +++- MdeModulePkg/Core/Pei/Memory/MemoryServices.c | 4 ++-- 6 files changed, 30 insertions(+), 26 deletions(-) diff --git a/MdeModulePkg/Core/Pei/FwVol/FwVol.h b/MdeModulePkg/Core/Pei/FwVol/FwVol.h index 263f0d7a56..7241c01b8c 100644 --- a/MdeModulePkg/Core/Pei/FwVol/FwVol.h +++ b/MdeModulePkg/Core/Pei/FwVol/FwVol.h @@ -303,11 +303,12 @@ FindFileEx ( ); /** - Report the information for a new discovered FV in unknown format. + Report the information for a newly discovered FV in an unknown format. + + If the EFI_PEI_FIRMWARE_VOLUME_PPI has not been installed for a third-party FV format, but + the FV has been discovered, then the information of this FV will be cached into PEI_CORE_INSTANCE's + UnknownFvInfo array. - If the EFI_PEI_FIRMWARE_VOLUME_PPI has not been installed for specific FV format, but - the FV in this FV format has been discovered, then the information of this FV - will be cached into PEI_CORE_INSTANCE's UnknownFvInfo array. Also a notification would be installed for unknown FV format GUID, if EFI_PEI_FIRMWARE_VOLUME_PPI is installed later by platform's PEIM, the original unknown FV will be processed by using new installed EFI_PEI_FIRMWARE_VOLUME_PPI. diff --git a/MdeModulePkg/Core/Pei/PeiMain.h b/MdeModulePkg/Core/Pei/PeiMain.h index 3f61247a0f..6431bdaaac 100644 --- a/MdeModulePkg/Core/Pei/PeiMain.h +++ b/MdeModulePkg/Core/Pei/PeiMain.h @@ -1217,8 +1217,8 @@ PeiFfsGetVolumeInfo ( ); /** - This routine enable a PEIM to register itself to shadow when PEI Foundation - discovery permanent memory. + This routine enables a PEIM to register itself for shadow when the PEI Foundation + discovers permanent memory. @param FileHandle File handle of a PEIM. @@ -1314,12 +1314,13 @@ ProcessFvFile ( ); /** - Get instance of PEI_CORE_FV_HANDLE for next volume according to given index. + Gets a PEI_CORE_FV_HANDLE instance for the next volume according to the given index. - This routine also will install FvInfo PPI for FV HOB in PI ways. + This routine also will install an instance of the FvInfo PPI for the FV HOB + as defined in the PI specification. @param PrivatePointer of PEI_CORE_INSTANCE - @param Instance The index of FV want to be searched. + @param Instance Index of the FV to search @return Instance of PEI_CORE_FV_HANDLE. **/ diff --git a/MdeModulePkg/Core/Pei/Dependency/Dependency.c b/MdeModulePkg/Core/Pei/Dependency/Dependency.c index 9a8353aef2..b53e5f2686 100644 --- a/MdeModulePkg/Core/Pei/Dependency/Dependency.c +++ b/MdeModulePkg/Core/Pei/Dependency/Dependency.c @@ -2,8 +2,8 @@ PEI Dispatcher Dependency Evaluator This routine evaluates a dependency expression (DEPENDENCY_EXPRESSION) to determine - if a driver can be scheduled for execution. The criteria for - schedulability is that the dependency expression is satisfied. + if a driver can be scheduled for execution. The criteria to be scheduled is + that the dependency expression is satisfied. Copyright (c) 2006 - 2019, Intel Corporation. All rights reserved. SPDX-License-Identifier: BSD-2-Clause-Patent diff --git a/MdeModulePkg/Core/Pei/Dispatcher/Dispatcher.c b/MdeModulePkg/Core/Pei/Dispatcher/Dispatcher.c index c9f2a91264..a18ac47f61 100644 --- a/MdeModulePkg/Core/Pei/Dispatcher/Dispatcher.c +++ b/MdeModulePkg/Core/Pei/Dispatcher/Dispatcher.c @@ -1347,8 +1347,8 @@ DepexSatisfied ( } /** - This routine enable a PEIM to register itself to shadow when PEI Foundation - discovery permanent memory. + This routine enables a PEIM to register itself for shadow when the PEI Foundation + discovers permanent memory. @param FileHandle File handle of a PEIM. diff --git a/MdeModulePkg/Core/Pei/FwVol/FwVol.c b/MdeModulePkg/Core/Pei/FwVol/FwVol.c index c21eb9c039..b3661146f2 100644 --- a/MdeModulePkg/Core/Pei/FwVol/FwVol.c +++ b/MdeModulePkg/Core/Pei/FwVol/FwVol.c @@ -593,7 +593,7 @@ FirmwareVolumeInfoPpiNotifyCallback ( } // - // Locate the corresponding FV_PPI according to founded FV's format GUID + // Locate the corresponding FV_PPI according to the format GUID of the FV found // Status = PeiServicesLocatePpi ( , @@ -1533,7 +1533,7 @@ ProcessFvFile ( ); // -// Inform the extracted FvImage to FV HOB consumer phase, i.e. DXE phase +// Expose the extracted FvImage to the FV HOB consumer phase, i.e. DXE phase // BuildFvHob ( (EFI_PHYSICAL_ADDRESS) (UINTN)
[edk2-devel] [PATCH V2 1/2] MdeModulePkg PeiCore: Fix typos
Cc: Dandan Bi Cc: Liming Gao Cc: Jian J Wang Cc: Hao A Wu Signed-off-by: Michael Kubacki --- MdeModulePkg/Core/Pei/PeiMain.inf | 10 ++-- MdeModulePkg/Core/Pei/FwVol/FwVol.h | 20 MdeModulePkg/Core/Pei/PeiMain.h | 40 MdeModulePkg/Core/Pei/Dependency/Dependency.c | 8 ++-- MdeModulePkg/Core/Pei/Dispatcher/Dispatcher.c | 48 +-- MdeModulePkg/Core/Pei/FwVol/FwVol.c | 50 ++-- MdeModulePkg/Core/Pei/Hob/Hob.c | 4 +- MdeModulePkg/Core/Pei/Image/Image.c | 10 ++-- MdeModulePkg/Core/Pei/Memory/MemoryServices.c | 16 +++ MdeModulePkg/Core/Pei/PeiMain/PeiMain.c | 2 +- MdeModulePkg/Core/Pei/Ppi/Ppi.c | 4 +- MdeModulePkg/Core/Pei/Security/Security.c | 12 ++--- 12 files changed, 112 insertions(+), 112 deletions(-) diff --git a/MdeModulePkg/Core/Pei/PeiMain.inf b/MdeModulePkg/Core/Pei/PeiMain.inf index 7c482dacfc..6e25cc4023 100644 --- a/MdeModulePkg/Core/Pei/PeiMain.inf +++ b/MdeModulePkg/Core/Pei/PeiMain.inf @@ -69,12 +69,12 @@ [Guids] gPeiAprioriFileNameGuid ## SOMETIMES_CONSUMES ## File - ## PRODUCES ## UNDEFINED # Install ppi - ## CONSUMES ## UNDEFINED # Locate ppi + ## PRODUCES ## UNDEFINED # Install PPI + ## CONSUMES ## UNDEFINED # Locate PPI gEfiFirmwareFileSystem2Guid - ## PRODUCES ## UNDEFINED # Install ppi - ## CONSUMES ## UNDEFINED # Locate ppi - ## CONSUMES ## GUID # Used to compare with FV's file system guid and get the FV's file system format + ## PRODUCES ## UNDEFINED # Install PPI + ## CONSUMES ## UNDEFINED # Locate PPI + ## CONSUMES ## GUID # Used to compare with FV's file system GUID and get the FV's file system format gEfiFirmwareFileSystem3Guid [Ppis] diff --git a/MdeModulePkg/Core/Pei/FwVol/FwVol.h b/MdeModulePkg/Core/Pei/FwVol/FwVol.h index ca80e84e0f..263f0d7a56 100644 --- a/MdeModulePkg/Core/Pei/FwVol/FwVol.h +++ b/MdeModulePkg/Core/Pei/FwVol/FwVol.h @@ -1,7 +1,7 @@ /** @file The internal header file for firmware volume related definitions. -Copyright (c) 2009 - 2018, Intel Corporation. All rights reserved. +Copyright (c) 2009 - 2019, Intel Corporation. All rights reserved. SPDX-License-Identifier: BSD-2-Clause-Patent **/ @@ -303,12 +303,12 @@ FindFileEx ( ); /** - Report the information for a new discoveried FV in unknown format. + Report the information for a new discovered FV in unknown format. - If the EFI_PEI_FIRMWARE_VOLUME_PPI has not been installed for specifical FV format, but - the FV in this FV format has been discoveried, then the information of this FV + If the EFI_PEI_FIRMWARE_VOLUME_PPI has not been installed for specific FV format, but + the FV in this FV format has been discovered, then the information of this FV will be cached into PEI_CORE_INSTANCE's UnknownFvInfo array. - Also a notification would be installed for unknown FV format guid, if EFI_PEI_FIRMWARE_VOLUME_PPI + Also a notification would be installed for unknown FV format GUID, if EFI_PEI_FIRMWARE_VOLUME_PPI is installed later by platform's PEIM, the original unknown FV will be processed by using new installed EFI_PEI_FIRMWARE_VOLUME_PPI. @@ -325,14 +325,14 @@ AddUnknownFormatFvInfo ( ); /** - Find the FV information according to FV format guid. + Find the FV information according to FV format GUID. - This routine also will remove the FV information found by given FV format guid from + This routine also will remove the FV information found by given FV format GUID from PrivateData->UnknownFvInfo[]. @param PrivateData Point to instance of PEI_CORE_INSTANCE - @param Format Point to given FV format guid - @param FvInfo On return, the pointer of FV information buffer in given FV format guid + @param Format Point to given FV format GUID + @param FvInfo On return, the pointer of FV information buffer in given FV format GUID @param FvInfoSize On return, the size of FV information buffer. @param AuthenticationStatus On return, the authentication status of FV information buffer. @@ -352,7 +352,7 @@ FindUnknownFormatFvInfo ( Notification callback function for EFI_PEI_FIRMWARE_VOLUME_PPI. When a EFI_PEI_FIRMWARE_VOLUME_PPI is installed to support new FV format, this - routine is called to process all discoveried FVs in this format. + routine is called to process all discovered FVs in this format. @param PeiServices An indirect pointer to the EFI_PEI_SERVICES table published by the PEI Foundation @param NotifyDescriptor Address of the notification descriptor data structure. diff --git a/MdeModulePkg/Core/Pei/PeiMain.h b/MdeModulePkg/Core/Pei/PeiMain.h index f2aa97c664..3f61247a0f 100644 --- a/MdeModulePkg/Core/Pei/PeiMain.h +++ b/MdeModulePkg/Core/Pei/PeiMain.h @@ -47,7 +47,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent /// /// It
[edk2-devel] [PATCH V2 0/2] MdeModulePkg PeiCore: Fix grammatical errors
V2 Changes: * "The index of the FV to search." to "Index of the FV to search" in the "Instance" parameter of ProcessFvFile () * Removed "in this FV format" in the function description of AddUnknownFormatFvInfo () * Explicitly stated the implied subject noun in the commit message of patch 2/2 This patch series fixes grammatical errors in the PeiCore module. Originally, this was sent as a single patch which received two Reviewed-by responses: https://edk2.groups.io/g/devel/message/50841 However, a suggestion was made to split the patch into syntactical and semantical changes. That suggestion is implemented in this series. The Reviewed-by responses were not carried forward so the maintainers can evaluate this series as a whole. The previous patch has been dropped. Cc: Dandan Bi Cc: Liming Gao Cc: Jian J Wang Cc: Hao A Wu Signed-off-by: Michael Kubacki Michael Kubacki (2): MdeModulePkg PeiCore: Fix typos MdeModulePkg PeiCore: Improve comment semantics MdeModulePkg/Core/Pei/PeiMain.inf | 10 +-- MdeModulePkg/Core/Pei/FwVol/FwVol.h | 23 +++ MdeModulePkg/Core/Pei/PeiMain.h | 49 +++ MdeModulePkg/Core/Pei/Dependency/Dependency.c | 12 ++-- MdeModulePkg/Core/Pei/Dispatcher/Dispatcher.c | 52 MdeModulePkg/Core/Pei/FwVol/FwVol.c | 64 ++-- MdeModulePkg/Core/Pei/Hob/Hob.c | 4 +- MdeModulePkg/Core/Pei/Image/Image.c | 10 +-- MdeModulePkg/Core/Pei/Memory/MemoryServices.c | 18 +++--- MdeModulePkg/Core/Pei/PeiMain/PeiMain.c | 2 +- MdeModulePkg/Core/Pei/Ppi/Ppi.c | 4 +- MdeModulePkg/Core/Pei/Security/Security.c | 12 ++-- 12 files changed, 132 insertions(+), 128 deletions(-) -- 2.16.2.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#51373): https://edk2.groups.io/g/devel/message/51373 Mute This Topic: https://groups.io/mt/62875486/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [edk2-platforms][PATCH V1 1/2] KabylakeSiliconPkg: Remove ResetSystemLib.h override
This dependency existed prior to this change (and still does exist). It was obfuscated in such a way that contributed to this problem. See the previous library header path: \Silicon\Intel\KabylakeSiliconPkg\SampleCode\MdeModulePkg\Include\Library\ResetSystemLib.h The fact KabylakeSiliconPkg implements a MdeModulePkg library API introduces the dependency on MdeModulePkg. Hiding a redundant definition of the API locally does not eliminate the dependency in any meaningful way. I think the practice of "freezing" an API with a local copy only works if the codebase is locked onto a specific stable tag in which the upstream API is not expected to change. Zhichao rightfully added the new function definition to the KabylakeSiliconPkg library class implementation because a board package consumer would expect a ResetSystemLib library class instance to be compliant with the API defined in MdeModulePkg and link the ResetSystem () function. The only problem was a set of circumstances that led to the duplicate symbol definition for ResetSystem () with PchResetLib. So I view the task of eliminating the package dependency as a larger separate effort outside the scope of this change. But I do not agree with maintaining redundant local copies of edk2 APIs in packages in edk2-platforms. Thanks, Michael > -Original Message- > From: Chaganty, Rangasai V > Sent: Tuesday, November 26, 2019 10:43 PM > To: Kubacki, Michael A ; > devel@edk2.groups.io > Cc: Chiu, Chasel ; Desimone, Nathaniel L > ; Gao, Zhichao > Subject: RE: [edk2-platforms][PATCH V1 1/2] KabylakeSiliconPkg: Remove > ResetSystemLib.h override > > This change is introducing SiliconPkg's dependency on MdeModulePkg. > SiliconPkg dependencies should be limited to a selected few packages and > this seems to be an unnecessary addition to the dependency list. > The reset interfaces are providing generic reset services and perhaps better > suited in packages like MdePkg. > > -Original Message- > From: Kubacki, Michael A > Sent: Tuesday, November 26, 2019 6:57 PM > To: devel@edk2.groups.io > Cc: Chaganty, Rangasai V ; Chiu, Chasel > ; Desimone, Nathaniel L > ; Gao, Zhichao > Subject: [edk2-platforms][PATCH V1 1/2] KabylakeSiliconPkg: Remove > ResetSystemLib.h override > > REF:https://bugzilla.tianocore.org/show_bug.cgi?id=2375 > > Removes a stale ResetSystemLib.h override in KabylakeSiliconPkg that does > not contain the prototype for ResetSystem () and ResetPlatformSpecific (). > > The ResetSystemLib.h file from MdeModulePkg will be used. Any INF files > that did not include the MdeModulePkg.dec under [Packages] were updated > to do so. > > Cc: Sai Chaganty > Cc: Chasel Chiu > Cc: Nate DeSimone > Cc: Zhichao Gao > Signed-off-by: Michael Kubacki > --- > > Silicon/Intel/KabylakeSiliconPkg/Pch/Library/DxeResetSystemLib/DxeResetS > ystemLib.inf | 3 +- > > Silicon/Intel/KabylakeSiliconPkg/Pch/Library/DxeRuntimeResetSystemLib/Dx > eRuntimeResetSystemLib.inf | 3 +- > > Silicon/Intel/KabylakeSiliconPkg/Pch/Library/PeiPchResetLib/PeiPchResetLib. > inf | 3 +- > > Silicon/Intel/KabylakeSiliconPkg/Pch/Library/PeiResetSystemLib/PeiResetSys > temLib.inf | 3 +- > > Silicon/Intel/KabylakeSiliconPkg/SampleCode/MdeModulePkg/Include/Libra > ry/ResetSystemLib.h | 62 > 5 files changed, 8 insertions(+), 66 deletions(-) > > diff --git > a/Silicon/Intel/KabylakeSiliconPkg/Pch/Library/DxeResetSystemLib/DxeRese > tSystemLib.inf > b/Silicon/Intel/KabylakeSiliconPkg/Pch/Library/DxeResetSystemLib/DxeRese > tSystemLib.inf > index aa8877140a..46313bf35f 100644 > --- > a/Silicon/Intel/KabylakeSiliconPkg/Pch/Library/DxeResetSystemLib/DxeRese > tSystemLib.inf > +++ b/Silicon/Intel/KabylakeSiliconPkg/Pch/Library/DxeResetSystemLib/Dxe > +++ ResetSystemLib.inf > @@ -1,7 +1,7 @@ > ## @file > # Component description file for Intel Ich7 Reset System Library. > # > -# Copyright (c) 2017, Intel Corporation. All rights reserved. > +# Copyright (c) 2017 - 2019, Intel Corporation. All rights > +reserved. > # > # SPDX-License-Identifier: BSD-2-Clause-Patent # @@ -35,6 +35,7 @@ > PchCycleDecodingLib > > [Packages] > MdePkg/MdePkg.dec > +MdeModulePkg/MdeModulePkg.dec > KabylakeSiliconPkg/SiPkg.dec > > > diff --git > a/Silicon/Intel/KabylakeSiliconPkg/Pch/Library/DxeRuntimeResetSystemLib/ > DxeRuntimeResetSystemLib.inf > b/Silicon/Intel/KabylakeSiliconPkg/Pch/Library/DxeRuntimeResetSystemLib/ > DxeRuntimeResetSystemLib.inf > index 6b27661603..c7fad31c71 100644 > --- > a/Silicon/Intel/KabylakeSiliconPkg/Pch/Library/DxeRuntimeResetSystemLib/ > DxeRuntimeResetSystemLib.inf > +++ >
[edk2-devel] [PATCH V1 0/2] MdeModulePkg PeiCore: Fix grammatical errors
This patch series fixes grammatical errors in the PeiCore module. Originally, this was sent as a single patch which received two Reviewed-by responses: https://edk2.groups.io/g/devel/message/50841 However, a suggestion was made to split the patch into syntactical and semantical changes. That suggestion is implemented in this series. The Reviewed-by responses were not carried forward so the maintainers can evaluate this series as a whole. The previous patch has been dropped. Cc: Dandan Bi Cc: Liming Gao Cc: Jian J Wang Cc: Hao A Wu Signed-off-by: Michael Kubacki Michael Kubacki (2): MdeModulePkg PeiCore: Fix typos MdeModulePkg PeiCore: Improve comment semantics MdeModulePkg/Core/Pei/PeiMain.inf | 10 ++-- MdeModulePkg/Core/Pei/FwVol/FwVol.h | 20 +++ MdeModulePkg/Core/Pei/PeiMain.h | 49 +++ MdeModulePkg/Core/Pei/Dependency/Dependency.c | 12 ++-- MdeModulePkg/Core/Pei/Dispatcher/Dispatcher.c | 52 MdeModulePkg/Core/Pei/FwVol/FwVol.c | 63 ++-- MdeModulePkg/Core/Pei/Hob/Hob.c | 4 +- MdeModulePkg/Core/Pei/Image/Image.c | 10 ++-- MdeModulePkg/Core/Pei/Memory/MemoryServices.c | 18 +++--- MdeModulePkg/Core/Pei/PeiMain/PeiMain.c | 2 +- MdeModulePkg/Core/Pei/Ppi/Ppi.c | 4 +- MdeModulePkg/Core/Pei/Security/Security.c | 12 ++-- 12 files changed, 129 insertions(+), 127 deletions(-) -- 2.16.2.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#51324): https://edk2.groups.io/g/devel/message/51324 Mute This Topic: https://groups.io/mt/62227956/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[edk2-devel] [PATCH V1 2/2] MdeModulePkg PeiCore: Improve comment semantics
Clarifies wording in several PeiCore comments to improve reading comprehension. Cc: Dandan Bi Cc: Liming Gao Cc: Jian J Wang Cc: Hao A Wu Signed-off-by: Michael Kubacki --- MdeModulePkg/Core/Pei/FwVol/FwVol.h | 4 ++-- MdeModulePkg/Core/Pei/PeiMain.h | 11 +- MdeModulePkg/Core/Pei/Dependency/Dependency.c | 4 ++-- MdeModulePkg/Core/Pei/Dispatcher/Dispatcher.c | 4 ++-- MdeModulePkg/Core/Pei/FwVol/FwVol.c | 23 ++-- MdeModulePkg/Core/Pei/Memory/MemoryServices.c | 4 ++-- 6 files changed, 26 insertions(+), 24 deletions(-) diff --git a/MdeModulePkg/Core/Pei/FwVol/FwVol.h b/MdeModulePkg/Core/Pei/FwVol/FwVol.h index 263f0d7a56..8aaf84870b 100644 --- a/MdeModulePkg/Core/Pei/FwVol/FwVol.h +++ b/MdeModulePkg/Core/Pei/FwVol/FwVol.h @@ -303,9 +303,9 @@ FindFileEx ( ); /** - Report the information for a new discovered FV in unknown format. + Report the information for a newly discovered FV in an unknown format. - If the EFI_PEI_FIRMWARE_VOLUME_PPI has not been installed for specific FV format, but + If the EFI_PEI_FIRMWARE_VOLUME_PPI has not been installed for a third-party FV format, but the FV in this FV format has been discovered, then the information of this FV will be cached into PEI_CORE_INSTANCE's UnknownFvInfo array. Also a notification would be installed for unknown FV format GUID, if EFI_PEI_FIRMWARE_VOLUME_PPI diff --git a/MdeModulePkg/Core/Pei/PeiMain.h b/MdeModulePkg/Core/Pei/PeiMain.h index 3f61247a0f..96d6df0485 100644 --- a/MdeModulePkg/Core/Pei/PeiMain.h +++ b/MdeModulePkg/Core/Pei/PeiMain.h @@ -1217,8 +1217,8 @@ PeiFfsGetVolumeInfo ( ); /** - This routine enable a PEIM to register itself to shadow when PEI Foundation - discovery permanent memory. + This routine enables a PEIM to register itself for shadow when the PEI Foundation + discovers permanent memory. @param FileHandle File handle of a PEIM. @@ -1314,12 +1314,13 @@ ProcessFvFile ( ); /** - Get instance of PEI_CORE_FV_HANDLE for next volume according to given index. + Gets a PEI_CORE_FV_HANDLE instance for the next volume according to the given index. - This routine also will install FvInfo PPI for FV HOB in PI ways. + This routine also will install an instance of the FvInfo PPI for the FV HOB + as defined in the PI specification. @param PrivatePointer of PEI_CORE_INSTANCE - @param Instance The index of FV want to be searched. + @param Instance The index of the FV to search. @return Instance of PEI_CORE_FV_HANDLE. **/ diff --git a/MdeModulePkg/Core/Pei/Dependency/Dependency.c b/MdeModulePkg/Core/Pei/Dependency/Dependency.c index 9a8353aef2..b53e5f2686 100644 --- a/MdeModulePkg/Core/Pei/Dependency/Dependency.c +++ b/MdeModulePkg/Core/Pei/Dependency/Dependency.c @@ -2,8 +2,8 @@ PEI Dispatcher Dependency Evaluator This routine evaluates a dependency expression (DEPENDENCY_EXPRESSION) to determine - if a driver can be scheduled for execution. The criteria for - schedulability is that the dependency expression is satisfied. + if a driver can be scheduled for execution. The criteria to be scheduled is + that the dependency expression is satisfied. Copyright (c) 2006 - 2019, Intel Corporation. All rights reserved. SPDX-License-Identifier: BSD-2-Clause-Patent diff --git a/MdeModulePkg/Core/Pei/Dispatcher/Dispatcher.c b/MdeModulePkg/Core/Pei/Dispatcher/Dispatcher.c index c9f2a91264..a18ac47f61 100644 --- a/MdeModulePkg/Core/Pei/Dispatcher/Dispatcher.c +++ b/MdeModulePkg/Core/Pei/Dispatcher/Dispatcher.c @@ -1347,8 +1347,8 @@ DepexSatisfied ( } /** - This routine enable a PEIM to register itself to shadow when PEI Foundation - discovery permanent memory. + This routine enables a PEIM to register itself for shadow when the PEI Foundation + discovers permanent memory. @param FileHandle File handle of a PEIM. diff --git a/MdeModulePkg/Core/Pei/FwVol/FwVol.c b/MdeModulePkg/Core/Pei/FwVol/FwVol.c index c21eb9c039..a9fa476846 100644 --- a/MdeModulePkg/Core/Pei/FwVol/FwVol.c +++ b/MdeModulePkg/Core/Pei/FwVol/FwVol.c @@ -593,7 +593,7 @@ FirmwareVolumeInfoPpiNotifyCallback ( } // - // Locate the corresponding FV_PPI according to founded FV's format GUID + // Locate the corresponding FV_PPI according to the format GUID of the FV found // Status = PeiServicesLocatePpi ( , @@ -1533,7 +1533,7 @@ ProcessFvFile ( ); // -// Inform the extracted FvImage to FV HOB consumer phase, i.e. DXE phase +// Expose the extracted FvImage to the FV HOB consumer phase, i.e. DXE phase // BuildFvHob ( (EFI_PHYSICAL_ADDRESS) (UINTN) FvHeader, @@ -2087,12 +2087,13 @@ FvHandleToCoreHandle ( } /** - Get instance of PEI_CORE_FV_HANDLE for next volume according to given index. + Gets a PEI_CORE_FV_HANDLE instance for the next volume according to the given index. - This routine also will install FvInfo PPI
[edk2-devel] [PATCH V1 1/2] MdeModulePkg PeiCore: Fix typos
Cc: Dandan Bi Cc: Liming Gao Cc: Jian J Wang Cc: Hao A Wu Signed-off-by: Michael Kubacki --- MdeModulePkg/Core/Pei/PeiMain.inf | 10 ++-- MdeModulePkg/Core/Pei/FwVol/FwVol.h | 20 MdeModulePkg/Core/Pei/PeiMain.h | 40 MdeModulePkg/Core/Pei/Dependency/Dependency.c | 8 ++-- MdeModulePkg/Core/Pei/Dispatcher/Dispatcher.c | 48 +-- MdeModulePkg/Core/Pei/FwVol/FwVol.c | 50 ++-- MdeModulePkg/Core/Pei/Hob/Hob.c | 4 +- MdeModulePkg/Core/Pei/Image/Image.c | 10 ++-- MdeModulePkg/Core/Pei/Memory/MemoryServices.c | 16 +++ MdeModulePkg/Core/Pei/PeiMain/PeiMain.c | 2 +- MdeModulePkg/Core/Pei/Ppi/Ppi.c | 4 +- MdeModulePkg/Core/Pei/Security/Security.c | 12 ++--- 12 files changed, 112 insertions(+), 112 deletions(-) diff --git a/MdeModulePkg/Core/Pei/PeiMain.inf b/MdeModulePkg/Core/Pei/PeiMain.inf index 7c482dacfc..6e25cc4023 100644 --- a/MdeModulePkg/Core/Pei/PeiMain.inf +++ b/MdeModulePkg/Core/Pei/PeiMain.inf @@ -69,12 +69,12 @@ [Guids] gPeiAprioriFileNameGuid ## SOMETIMES_CONSUMES ## File - ## PRODUCES ## UNDEFINED # Install ppi - ## CONSUMES ## UNDEFINED # Locate ppi + ## PRODUCES ## UNDEFINED # Install PPI + ## CONSUMES ## UNDEFINED # Locate PPI gEfiFirmwareFileSystem2Guid - ## PRODUCES ## UNDEFINED # Install ppi - ## CONSUMES ## UNDEFINED # Locate ppi - ## CONSUMES ## GUID # Used to compare with FV's file system guid and get the FV's file system format + ## PRODUCES ## UNDEFINED # Install PPI + ## CONSUMES ## UNDEFINED # Locate PPI + ## CONSUMES ## GUID # Used to compare with FV's file system GUID and get the FV's file system format gEfiFirmwareFileSystem3Guid [Ppis] diff --git a/MdeModulePkg/Core/Pei/FwVol/FwVol.h b/MdeModulePkg/Core/Pei/FwVol/FwVol.h index ca80e84e0f..263f0d7a56 100644 --- a/MdeModulePkg/Core/Pei/FwVol/FwVol.h +++ b/MdeModulePkg/Core/Pei/FwVol/FwVol.h @@ -1,7 +1,7 @@ /** @file The internal header file for firmware volume related definitions. -Copyright (c) 2009 - 2018, Intel Corporation. All rights reserved. +Copyright (c) 2009 - 2019, Intel Corporation. All rights reserved. SPDX-License-Identifier: BSD-2-Clause-Patent **/ @@ -303,12 +303,12 @@ FindFileEx ( ); /** - Report the information for a new discoveried FV in unknown format. + Report the information for a new discovered FV in unknown format. - If the EFI_PEI_FIRMWARE_VOLUME_PPI has not been installed for specifical FV format, but - the FV in this FV format has been discoveried, then the information of this FV + If the EFI_PEI_FIRMWARE_VOLUME_PPI has not been installed for specific FV format, but + the FV in this FV format has been discovered, then the information of this FV will be cached into PEI_CORE_INSTANCE's UnknownFvInfo array. - Also a notification would be installed for unknown FV format guid, if EFI_PEI_FIRMWARE_VOLUME_PPI + Also a notification would be installed for unknown FV format GUID, if EFI_PEI_FIRMWARE_VOLUME_PPI is installed later by platform's PEIM, the original unknown FV will be processed by using new installed EFI_PEI_FIRMWARE_VOLUME_PPI. @@ -325,14 +325,14 @@ AddUnknownFormatFvInfo ( ); /** - Find the FV information according to FV format guid. + Find the FV information according to FV format GUID. - This routine also will remove the FV information found by given FV format guid from + This routine also will remove the FV information found by given FV format GUID from PrivateData->UnknownFvInfo[]. @param PrivateData Point to instance of PEI_CORE_INSTANCE - @param Format Point to given FV format guid - @param FvInfo On return, the pointer of FV information buffer in given FV format guid + @param Format Point to given FV format GUID + @param FvInfo On return, the pointer of FV information buffer in given FV format GUID @param FvInfoSize On return, the size of FV information buffer. @param AuthenticationStatus On return, the authentication status of FV information buffer. @@ -352,7 +352,7 @@ FindUnknownFormatFvInfo ( Notification callback function for EFI_PEI_FIRMWARE_VOLUME_PPI. When a EFI_PEI_FIRMWARE_VOLUME_PPI is installed to support new FV format, this - routine is called to process all discoveried FVs in this format. + routine is called to process all discovered FVs in this format. @param PeiServices An indirect pointer to the EFI_PEI_SERVICES table published by the PEI Foundation @param NotifyDescriptor Address of the notification descriptor data structure. diff --git a/MdeModulePkg/Core/Pei/PeiMain.h b/MdeModulePkg/Core/Pei/PeiMain.h index f2aa97c664..3f61247a0f 100644 --- a/MdeModulePkg/Core/Pei/PeiMain.h +++ b/MdeModulePkg/Core/Pei/PeiMain.h @@ -47,7 +47,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent /// /// It
[edk2-devel] [edk2-platforms][PATCH V1 2/2] KabylakeSiliconPkg: Remove redundant ResetSystem() implementation
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=2375 The following commits introduced a new implementation of ResetSystem () in ResetLib instances in KabylakeSiliconPkg: * 2393cff0d4 * 07fd95c9ca * 0ad2f057d8 * a6e61d43c9 The PchResetLib instance PeiPchResetLib links against ResetLib and already contained a definition of ResetSystem (). This resulted in a build failure in VS2017 due to multiple definitions of a symbol being provided to the linker. The failure did not reproduce in VS2015 so it persisted until now. This change removes the pre-existing implementation of ResetSystem () in PchReset.c as it is now linked by the implementation in the ResetLib instance. Cc: Sai Chaganty Cc: Chasel Chiu Cc: Nate DeSimone Cc: Zhichao Gao Signed-off-by: Michael Kubacki --- Silicon/Intel/KabylakeSiliconPkg/Pch/Library/PeiPchResetLib/PchReset.c | 55 Silicon/Intel/KabylakeSiliconPkg/Pch/Library/PeiResetSystemLib/PeiResetSystemLib.c | 5 ++ 2 files changed, 5 insertions(+), 55 deletions(-) diff --git a/Silicon/Intel/KabylakeSiliconPkg/Pch/Library/PeiPchResetLib/PchReset.c b/Silicon/Intel/KabylakeSiliconPkg/Pch/Library/PeiPchResetLib/PchReset.c index 20e5d36892..c3963164c1 100644 --- a/Silicon/Intel/KabylakeSiliconPkg/Pch/Library/PeiPchResetLib/PchReset.c +++ b/Silicon/Intel/KabylakeSiliconPkg/Pch/Library/PeiPchResetLib/PchReset.c @@ -18,61 +18,6 @@ SPDX-License-Identifier: BSD-2-Clause-Patent #include #include -VOID -EFIAPI -ResetPlatformSpecific ( - IN UINTNDataSize, - IN VOID *ResetData OPTIONAL - ); - - -/** - Resets the entire platform. - - @param[in] ResetTypeUEFI defined reset type. - @param[in] ResetStatus The status code for the reset. - @param[in] DataSize The size of ResetData in bytes. - @param[in] ResetDataOptional element used to introduce a platform specific reset. - The exact type of the reset is defined by the EFI_GUID that follows - the Null-terminated Unicode string. - -**/ -VOID -EFIAPI -ResetSystem ( - IN EFI_RESET_TYPE ResetType, - IN EFI_STATUS ResetStatus, - IN UINTN DataSize, - IN VOID *ResetData OPTIONAL - ) -{ - switch (ResetType) { - case EfiResetWarm: -ResetWarm (); -break; - - case EfiResetCold: -ResetCold (); -break; - - case EfiResetShutdown: -ResetShutdown (); -return; - - case EfiResetPlatformSpecific: -ResetPlatformSpecific (DataSize, ResetData); -return; - - default: -return; - } - - // - // Given we should have reset getting here would be bad - // - ASSERT (FALSE); -} - /** Execute Pch Reset from the host controller. diff --git a/Silicon/Intel/KabylakeSiliconPkg/Pch/Library/PeiResetSystemLib/PeiResetSystemLib.c b/Silicon/Intel/KabylakeSiliconPkg/Pch/Library/PeiResetSystemLib/PeiResetSystemLib.c index 6f12abf111..a3db100619 100644 --- a/Silicon/Intel/KabylakeSiliconPkg/Pch/Library/PeiResetSystemLib/PeiResetSystemLib.c +++ b/Silicon/Intel/KabylakeSiliconPkg/Pch/Library/PeiResetSystemLib/PeiResetSystemLib.c @@ -317,5 +317,10 @@ ResetSystem ( default: return; } + + // + // Given we should have reset getting here would be bad + // + ASSERT (FALSE); } -- 2.16.2.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#51321): https://edk2.groups.io/g/devel/message/51321 Mute This Topic: https://groups.io/mt/62194129/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[edk2-devel] [edk2-platforms][PATCH V1 1/2] KabylakeSiliconPkg: Remove ResetSystemLib.h override
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=2375 Removes a stale ResetSystemLib.h override in KabylakeSiliconPkg that does not contain the prototype for ResetSystem () and ResetPlatformSpecific (). The ResetSystemLib.h file from MdeModulePkg will be used. Any INF files that did not include the MdeModulePkg.dec under [Packages] were updated to do so. Cc: Sai Chaganty Cc: Chasel Chiu Cc: Nate DeSimone Cc: Zhichao Gao Signed-off-by: Michael Kubacki --- Silicon/Intel/KabylakeSiliconPkg/Pch/Library/DxeResetSystemLib/DxeResetSystemLib.inf | 3 +- Silicon/Intel/KabylakeSiliconPkg/Pch/Library/DxeRuntimeResetSystemLib/DxeRuntimeResetSystemLib.inf | 3 +- Silicon/Intel/KabylakeSiliconPkg/Pch/Library/PeiPchResetLib/PeiPchResetLib.inf | 3 +- Silicon/Intel/KabylakeSiliconPkg/Pch/Library/PeiResetSystemLib/PeiResetSystemLib.inf | 3 +- Silicon/Intel/KabylakeSiliconPkg/SampleCode/MdeModulePkg/Include/Library/ResetSystemLib.h | 62 5 files changed, 8 insertions(+), 66 deletions(-) diff --git a/Silicon/Intel/KabylakeSiliconPkg/Pch/Library/DxeResetSystemLib/DxeResetSystemLib.inf b/Silicon/Intel/KabylakeSiliconPkg/Pch/Library/DxeResetSystemLib/DxeResetSystemLib.inf index aa8877140a..46313bf35f 100644 --- a/Silicon/Intel/KabylakeSiliconPkg/Pch/Library/DxeResetSystemLib/DxeResetSystemLib.inf +++ b/Silicon/Intel/KabylakeSiliconPkg/Pch/Library/DxeResetSystemLib/DxeResetSystemLib.inf @@ -1,7 +1,7 @@ ## @file # Component description file for Intel Ich7 Reset System Library. # -# Copyright (c) 2017, Intel Corporation. All rights reserved. +# Copyright (c) 2017 - 2019, Intel Corporation. All rights reserved. # # SPDX-License-Identifier: BSD-2-Clause-Patent # @@ -35,6 +35,7 @@ PchCycleDecodingLib [Packages] MdePkg/MdePkg.dec +MdeModulePkg/MdeModulePkg.dec KabylakeSiliconPkg/SiPkg.dec diff --git a/Silicon/Intel/KabylakeSiliconPkg/Pch/Library/DxeRuntimeResetSystemLib/DxeRuntimeResetSystemLib.inf b/Silicon/Intel/KabylakeSiliconPkg/Pch/Library/DxeRuntimeResetSystemLib/DxeRuntimeResetSystemLib.inf index 6b27661603..c7fad31c71 100644 --- a/Silicon/Intel/KabylakeSiliconPkg/Pch/Library/DxeRuntimeResetSystemLib/DxeRuntimeResetSystemLib.inf +++ b/Silicon/Intel/KabylakeSiliconPkg/Pch/Library/DxeRuntimeResetSystemLib/DxeRuntimeResetSystemLib.inf @@ -1,7 +1,7 @@ ## @file # Component description file for Intel Ich7 Reset System Library. # -# Copyright (c) 2017, Intel Corporation. All rights reserved. +# Copyright (c) 2017 - 2019, Intel Corporation. All rights reserved. # # SPDX-License-Identifier: BSD-2-Clause-Patent # @@ -36,6 +36,7 @@ PchCycleDecodingLib [Packages] MdePkg/MdePkg.dec +MdeModulePkg/MdeModulePkg.dec KabylakeSiliconPkg/SiPkg.dec diff --git a/Silicon/Intel/KabylakeSiliconPkg/Pch/Library/PeiPchResetLib/PeiPchResetLib.inf b/Silicon/Intel/KabylakeSiliconPkg/Pch/Library/PeiPchResetLib/PeiPchResetLib.inf index b04f4006ef..29f69078a4 100644 --- a/Silicon/Intel/KabylakeSiliconPkg/Pch/Library/PeiPchResetLib/PeiPchResetLib.inf +++ b/Silicon/Intel/KabylakeSiliconPkg/Pch/Library/PeiPchResetLib/PeiPchResetLib.inf @@ -1,7 +1,7 @@ ## @file # Component description file for PCH Reset Lib Pei Phase # -# Copyright (c) 2017, Intel Corporation. All rights reserved. +# Copyright (c) 2017 - 2019, Intel Corporation. All rights reserved. # # SPDX-License-Identifier: BSD-2-Clause-Patent # @@ -28,6 +28,7 @@ ResetSystemLib [Packages] MdePkg/MdePkg.dec +MdeModulePkg/MdeModulePkg.dec KabylakeSiliconPkg/SiPkg.dec [Sources] diff --git a/Silicon/Intel/KabylakeSiliconPkg/Pch/Library/PeiResetSystemLib/PeiResetSystemLib.inf b/Silicon/Intel/KabylakeSiliconPkg/Pch/Library/PeiResetSystemLib/PeiResetSystemLib.inf index 18a92a6f18..3c6ff78863 100644 --- a/Silicon/Intel/KabylakeSiliconPkg/Pch/Library/PeiResetSystemLib/PeiResetSystemLib.inf +++ b/Silicon/Intel/KabylakeSiliconPkg/Pch/Library/PeiResetSystemLib/PeiResetSystemLib.inf @@ -1,7 +1,7 @@ ## @file # Component description file for Intel Ich7 Reset System Library. # -# Copyright (c) 2017, Intel Corporation. All rights reserved. +# Copyright (c) 2017 - 2019, Intel Corporation. All rights reserved. # # SPDX-License-Identifier: BSD-2-Clause-Patent # @@ -32,6 +32,7 @@ PchCycleDecodingLib [Packages] MdePkg/MdePkg.dec +MdeModulePkg/MdeModulePkg.dec KabylakeSiliconPkg/SiPkg.dec diff --git a/Silicon/Intel/KabylakeSiliconPkg/SampleCode/MdeModulePkg/Include/Library/ResetSystemLib.h b/Silicon/Intel/KabylakeSiliconPkg/SampleCode/MdeModulePkg/Include/Library/ResetSystemLib.h deleted file mode 100644 index 75d3e15ed7..00 --- a/Silicon/Intel/KabylakeSiliconPkg/SampleCode/MdeModulePkg/Include/Library/ResetSystemLib.h +++ /dev/null @@ -1,62 +0,0 @@ -/** @file - System reset Library Services. This library class defines a set of - methods that reset the whole system. - -Copyright (c) 2005 - 2010, Intel Corporation. All rights reserved.
[edk2-devel] [edk2-platforms][PATCH V1 0/2] KabylakeSiliconPkg: Remove redundant ResetSystem() implementation
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=2375 This patch series: 1. Removes a ResetSystemLib.h override in KabylakeSiliconPkg 2. Removes a redundant implementation of ResetSystem () The redundant ResetSystem () implementation causes a build failure in VS2017. The build failure does not reproduce in VS2015. The new ResetSystem () implementation that led to the issue was introduced in the following commits: * 2393cff0d4 * 07fd95c9ca * 0ad2f057d8 * a6e61d43c9 Cc: Sai Chaganty Cc: Chasel Chiu Cc: Nate DeSimone Cc: Zhichao Gao Signed-off-by: Michael Kubacki Michael Kubacki (2): KabylakeSiliconPkg: Remove ResetSystemLib.h override KabylakeSiliconPkg: Remove redundant ResetSystem() implementation Silicon/Intel/KabylakeSiliconPkg/Pch/Library/DxeResetSystemLib/DxeResetSystemLib.inf | 3 +- Silicon/Intel/KabylakeSiliconPkg/Pch/Library/DxeRuntimeResetSystemLib/DxeRuntimeResetSystemLib.inf | 3 +- Silicon/Intel/KabylakeSiliconPkg/Pch/Library/PeiPchResetLib/PeiPchResetLib.inf | 3 +- Silicon/Intel/KabylakeSiliconPkg/Pch/Library/PeiResetSystemLib/PeiResetSystemLib.inf | 3 +- Silicon/Intel/KabylakeSiliconPkg/SampleCode/MdeModulePkg/Include/Library/ResetSystemLib.h | 62 Silicon/Intel/KabylakeSiliconPkg/Pch/Library/PeiPchResetLib/PchReset.c | 55 - Silicon/Intel/KabylakeSiliconPkg/Pch/Library/PeiResetSystemLib/PeiResetSystemLib.c | 5 ++ 7 files changed, 13 insertions(+), 121 deletions(-) delete mode 100644 Silicon/Intel/KabylakeSiliconPkg/SampleCode/MdeModulePkg/Include/Library/ResetSystemLib.h -- 2.16.2.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#51319): https://edk2.groups.io/g/devel/message/51319 Mute This Topic: https://groups.io/mt/62194047/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[edk2-devel] Author Garbled in edk2 Log
Hi Liming, I notice that after you applied my most recent patch locally and sent the Pull Request, the author email is garbled in git log: Kubacki, Michael A Whereas in the original patch it is: Michael Kubacki Doing a quick grep across the edk2 log, I see quite a few other instances leading to inconsistent author history. Is there a known cause? I'd like to request that maintainers check that the author field matches the patch before sending Pull Requests. Author: Kubacki, Michael A Author: Kubacki, Michael A Author: Chu, Maggie Author: Albecki, Mateusz Author: Sun, Zailiang Author: Carsey, Jaben Author: Kinney, Michael D Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Feng, YunhuaX Author: Feng, YunhuaX Author: Feng, YunhuaX Author: Carsey, Jaben Author: Feng, YunhuaX Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Feng, YunhuaX Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Carsey, Jaben Author: Feng, YunhuaX Author: Carsey, Jaben Author: Carsey, Jaben Author: Feng, YunhuaX Author: Feng, YunhuaX Author: Feng, YunhuaX Author: Feng, YunhuaX Author: Feng, YunhuaX Author: Feng, YunhuaX Author: Feng, YunhuaX Author: Feng, YunhuaX Author: Feng, YunhuaX Author: Feng, YunhuaX Author: Feng, YunhuaX Author: Feng, YunhuaX Author: Feng, YunhuaX Author: Feng, YunhuaX Author: Feng, YunhuaX Author: Feng, YunhuaX Author: Bi, Dandan Thanks, Michael -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#51262): https://edk2.groups.io/g/devel/message/51262 Mute This Topic: https://groups.io/mt/61955332/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [edk2-wiki][patch] Move feature BootGuard TOCTOU vulnerability to next edk2 stable tag
Reviewed-by: Michael Kubacki > -Original Message- > From: devel@edk2.groups.io On Behalf Of Liming > Gao > Sent: Wednesday, November 20, 2019 11:41 PM > To: devel@edk2.groups.io > Cc: Kubacki, Michael A > Subject: [edk2-devel] [edk2-wiki][patch] Move feature BootGuard TOCTOU > vulnerability to next edk2 stable tag > > This feature doesn't catch 201911 stable tag. > Plan to defer this feature to next stable tag. > > Signed-off-by: Liming Gao > Cc: Michael Kubacki > --- > EDK-II-Release-Planning.md | 1 - > 1 file changed, 1 deletion(-) > > diff --git a/EDK-II-Release-Planning.md b/EDK-II-Release-Planning.md index > 704e956..dabda3c 100644 > --- a/EDK-II-Release-Planning.md > +++ b/EDK-II-Release-Planning.md > @@ -22,7 +22,6 @@ > * [Allow PCDs to be used in conditional statements if not referenced in an > INF](https://bugzilla.tianocore.org/show_bug.cgi?id=2270) > * [Add Support Laml and Lasa for TPM2 > ACPI](https://bugzilla.tianocore.org/show_bug.cgi?id=978) > * [Add PCI Device Security > Support](https://bugzilla.tianocore.org/show_bug.cgi?id=2303) > -* [BootGuard TOCTOU vulnerability (CVE-2019- > 11098)](https://bugzilla.tianocore.org/show_bug.cgi?id=1614) > * [Invalid server certificate accepted in HTTPS Boot (CVE-2019- > 14553)](https://bugzilla.tianocore.org/show_bug.cgi?id=960) > * [MdeModulePkg: Enable/Disable S3BootScript > dynamically](https://bugzilla.tianocore.org/show_bug.cgi?id=2212) > * [Enable Phase 1 of Continuous Integration (CI) on the edk2 > repository](https://bugzilla.tianocore.org/show_bug.cgi?id=2315) > -- > 2.13.0.windows.1 > > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#51260): https://edk2.groups.io/g/devel/message/51260 Mute This Topic: https://groups.io/mt/61064696/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[edk2-devel] [edk2-platforms][PATCH V1 1/1] Maintainers.txt: Update maintainers for Simics packages
David Y Wei is no longer available as a maintainer. David is removed as a maintainer for the following packages: * Platform/Intel/SimicsOpenBoardPkg * Silicon/Intel/SimicsIch10Pkg * Silicon/Intel/SimicsX58SktPkg Cc: Nate DeSimone Cc: Agyeman Prince Signed-off-by: Michael Kubacki --- Maintainers.txt | 3 --- 1 file changed, 3 deletions(-) diff --git a/Maintainers.txt b/Maintainers.txt index cb7ae0a95d..98373acc85 100644 --- a/Maintainers.txt +++ b/Maintainers.txt @@ -180,7 +180,6 @@ M: Nate DeSimone Platform/Intel/SimicsOpenBoardPkg F: Platform/Intel/SimicsOpenBoardPkg/ -M: Wei David Y M: Agyeman Prince Platform/Intel/Tools @@ -217,12 +216,10 @@ M: Sai Chaganty Silicon/Intel/SimicsX58SktPkg F: Silicon/Intel/SimicsX58SktPkg/ -M: Wei David Y M: Agyeman Prince Silicon/Intel/SimicsIch10Pkg F: Silicon/Intel/SimicsIch10Pkg/ -M: Wei David Y M: Agyeman Prince Silicon/Intel/Tools -- 2.16.2.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#51255): https://edk2.groups.io/g/devel/message/51255 Mute This Topic: https://groups.io/mt/61951351/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [edk2-platforms] [PATCH V2 13/14] KabylakeOpenBoardPkg: Remove SecFspWrapperPlatformSecLib override
Reviewed-by: Michael Kubacki > -Original Message- > From: Desimone, Nathaniel L > Sent: Thursday, November 21, 2019 12:59 AM > To: devel@edk2.groups.io > Cc: Chiu, Chasel ; Kubacki, Michael A > ; Jeremy Soller > Subject: [edk2-platforms] [PATCH V2 13/14] KabylakeOpenBoardPkg: > Remove SecFspWrapperPlatformSecLib override > > Cc: Chasel Chiu > Cc: Michael Kubacki > Cc: Jeremy Soller > Signed-off-by: Nate DeSimone > --- > .../FspWrapperPlatformSecLib.c| 186 - > .../SecFspWrapperPlatformSecLib/FsptCoreUpd.h | 40 -- > .../SecFspWrapperPlatformSecLib/Ia32/Fsp.h| 42 -- > .../Ia32/PeiCoreEntry.nasm| 130 --- > .../Ia32/SecEntry.nasm| 361 -- > .../Ia32/Stack.nasm | 72 > .../PlatformInit.c| 47 --- > .../SecFspWrapperPlatformSecLib.inf | 97 - > .../SecGetPerformance.c | 89 - > .../SecPlatformInformation.c | 78 > .../SecRamInitData.c | 36 -- > .../SecTempRamDone.c | 73 > .../GalagoPro3/OpenBoardPkg.dsc | 2 +- > .../KabylakeRvp3/OpenBoardPkg.dsc | 2 +- > 14 files changed, 2 insertions(+), 1253 deletions(-) delete mode 100644 > Platform/Intel/KabylakeOpenBoardPkg/FspWrapper/Library/SecFspWrapper > PlatformSecLib/FspWrapperPlatformSecLib.c > delete mode 100644 > Platform/Intel/KabylakeOpenBoardPkg/FspWrapper/Library/SecFspWrapper > PlatformSecLib/FsptCoreUpd.h > delete mode 100644 > Platform/Intel/KabylakeOpenBoardPkg/FspWrapper/Library/SecFspWrapper > PlatformSecLib/Ia32/Fsp.h > delete mode 100644 > Platform/Intel/KabylakeOpenBoardPkg/FspWrapper/Library/SecFspWrapper > PlatformSecLib/Ia32/PeiCoreEntry.nasm > delete mode 100644 > Platform/Intel/KabylakeOpenBoardPkg/FspWrapper/Library/SecFspWrapper > PlatformSecLib/Ia32/SecEntry.nasm > delete mode 100644 > Platform/Intel/KabylakeOpenBoardPkg/FspWrapper/Library/SecFspWrapper > PlatformSecLib/Ia32/Stack.nasm > delete mode 100644 > Platform/Intel/KabylakeOpenBoardPkg/FspWrapper/Library/SecFspWrapper > PlatformSecLib/PlatformInit.c > delete mode 100644 > Platform/Intel/KabylakeOpenBoardPkg/FspWrapper/Library/SecFspWrapper > PlatformSecLib/SecFspWrapperPlatformSecLib.inf > delete mode 100644 > Platform/Intel/KabylakeOpenBoardPkg/FspWrapper/Library/SecFspWrapper > PlatformSecLib/SecGetPerformance.c > delete mode 100644 > Platform/Intel/KabylakeOpenBoardPkg/FspWrapper/Library/SecFspWrapper > PlatformSecLib/SecPlatformInformation.c > delete mode 100644 > Platform/Intel/KabylakeOpenBoardPkg/FspWrapper/Library/SecFspWrapper > PlatformSecLib/SecRamInitData.c > delete mode 100644 > Platform/Intel/KabylakeOpenBoardPkg/FspWrapper/Library/SecFspWrapper > PlatformSecLib/SecTempRamDone.c > > diff --git > a/Platform/Intel/KabylakeOpenBoardPkg/FspWrapper/Library/SecFspWrapp > erPlatformSecLib/FspWrapperPlatformSecLib.c > b/Platform/Intel/KabylakeOpenBoardPkg/FspWrapper/Library/SecFspWrap > perPlatformSecLib/FspWrapperPlatformSecLib.c > deleted file mode 100644 > index d40eecae95..00 > --- > a/Platform/Intel/KabylakeOpenBoardPkg/FspWrapper/Library/SecFspWrapp > erPlatformSecLib/FspWrapperPlatformSecLib.c > +++ /dev/null > @@ -1,186 +0,0 @@ > -/** @file- Provide FSP wrapper platform sec related function.--Copyright > (c) 2017 - 2019, Intel Corporation. All rights reserved.-SPDX-License- > Identifier: BSD-2-Clause-Patent--**/--#include --#include > -#include - > #include -#include > -#include -#include > --#include -#include > -#include -#include > --/**- This interface conveys state information out of the > Security (SEC) phase into PEI.-- @param[in] PeiServices > Pointer to > the PEI Services Table.- @param[in,out] StructureSize Pointer to > the > variable describing size of the input buffer.- @param[out] > PlatformInformationRecord Pointer to the > EFI_SEC_PLATFORM_INFORMATION_RECORD.-- @retval EFI_SUCCESS > The data was successfully returned.- @retval EFI_BUFFER_TOO_SMALL The > buffer was too small.--**/-EFI_STATUS-EFIAPI-SecPlatformInformation (- IN > CONST EFI_PEI_SERVICES **PeiServices,- IN OUT UINT64 > *StructureSize,- OUT EFI_SEC_PLATFORM_INFORMATION_RECORD > *PlatformInformationRecord- );--/**- This interface conveys performance > information out of the Security (SEC) phase into PEI.-- This service is > published by the SEC phase. The SEC phase handoff has an optional- > EFI_PEI_PPI_DESCRIPTOR list as its final argument when control is passed >
Re: [edk2-devel] [edk2-platforms] [PATCH V2 14/14] MinPlatformPkg: Remove BoardInitLib dependency from PlatformSecLib
Reviewed-by: Michael Kubacki > -Original Message- > From: Desimone, Nathaniel L > Sent: Thursday, November 21, 2019 12:59 AM > To: devel@edk2.groups.io > Cc: Kubacki, Michael A ; Chiu, Chasel > ; Gao, Liming > Subject: [edk2-platforms] [PATCH V2 14/14] MinPlatformPkg: Remove > BoardInitLib dependency from PlatformSecLib > > SecFspWrapperPlatformSecLib contains the implementation of > SecPlatformDisableTemporaryMemory(), which SecMain in UefiCpuPkg will > call as part of its implementation of EFI_PEI_TEMPORARY_RAM_DONE_PPI. > For platforms that use FSP, the implementation of > SecPlatformDisableTemporaryMemory() can be made generic since the > chipset specifics will be contained in FspTempRamExit(). > > The Minimum Platform Specification provides the BoardPkg two interface > hook points, BoardInitBeforeTempRamExit() and > BoardInitAfterTempRamExit() which must be called during > SecPlatformDisableTemporaryMemory(). Due to > EFI_PEI_TEMPORARY_RAM_DONE_PPI being a special case of a PPI that is > implemented in SEC, these two functions are the only ones in BoardInitLib > that need to be called by SEC. > > Linking BoardInitLib with SEC places many restrictions on the implementation > of that library. The features available to SEC phase code are very minimal. > Since this code runs during PEI phase, these restrictions are not actually > required. > > Instead of directly linking with BoardInitLib, > SecPlatformDisableTemporaryMemory() shall call BoardInitLib indirectly > through a PPI (PLATFORM_INIT_TEMP_RAM_EXIT_PPI.) This PPI is produced > by PlatformInitPreMem, which implements the other BoardInitLib calls > already, so this change should also slightly reduce the size of the final > binary > image since less PE/COFF images will need to link with BoardInitLib. > > Cc: Michael Kubacki > Cc: Chasel Chiu > Cc: Liming Gao > Signed-off-by: Nate DeSimone > --- > .../SecFspWrapperPlatformSecLib.inf | 2 +- > .../SecTempRamDone.c | 36 +++-- > .../Include/Ppi/PlatformInitTempRamExitPpi.h | 55 ++ > .../Intel/MinPlatformPkg/MinPlatformPkg.dec | 2 + > .../PlatformInitPei/PlatformInitPreMem.c | 76 ++- > .../PlatformInitPei/PlatformInitPreMem.inf| 1 + > 6 files changed, 159 insertions(+), 13 deletions(-) create mode 100644 > Platform/Intel/MinPlatformPkg/Include/Ppi/PlatformInitTempRamExitPpi.h > > diff --git > a/Platform/Intel/MinPlatformPkg/FspWrapper/Library/SecFspWrapperPlatf > ormSecLib/SecFspWrapperPlatformSecLib.inf > b/Platform/Intel/MinPlatformPkg/FspWrapper/Library/SecFspWrapperPlatf > ormSecLib/SecFspWrapperPlatformSecLib.inf > index 02c720c73d..4f3fa9fa34 100644 > --- > a/Platform/Intel/MinPlatformPkg/FspWrapper/Library/SecFspWrapperPlatf > ormSecLib/SecFspWrapperPlatformSecLib.inf > +++ > b/Platform/Intel/MinPlatformPkg/FspWrapper/Library/SecFspWrapperPlat > +++ formSecLib/SecFspWrapperPlatformSecLib.inf > @@ -69,7 +69,6 @@ >SerialPortLib FspWrapperPlatformLib FspWrapperApiLib- BoardInitLib > SecBoardInitLib TestPointCheckLib PeiServicesTablePointerLib@@ -80,6 > +79,7 @@ >gTopOfTemporaryRamPpiGuid ## PRODUCES > gEfiPeiFirmwareVolumeInfoPpiGuid## PRODUCES > gFspTempRamExitPpiGuid ## CONSUMES+ > gPlatformInitTempRamExitPpiGuid ## CONSUMES [Pcd] > gUefiCpuPkgTokenSpaceGuid.PcdPeiTemporaryRamStackSize ## > CONSUMESdiff --git > a/Platform/Intel/MinPlatformPkg/FspWrapper/Library/SecFspWrapperPlatf > ormSecLib/SecTempRamDone.c > b/Platform/Intel/MinPlatformPkg/FspWrapper/Library/SecFspWrapperPlatf > ormSecLib/SecTempRamDone.c > index 922e4ec204..b22cf57d6c 100644 > --- > a/Platform/Intel/MinPlatformPkg/FspWrapper/Library/SecFspWrapperPlatf > ormSecLib/SecTempRamDone.c > +++ > b/Platform/Intel/MinPlatformPkg/FspWrapper/Library/SecFspWrapperPlat > +++ formSecLib/SecTempRamDone.c > @@ -10,6 +10,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent > #include #include > +#include > #include #include @@ - > 17,7 +18,6 @@ SPDX-License-Identifier: BSD-2-Clause-Patent #include > #include > #include -#include > #include /**@@ -29,14 +29,35 @@ > SecPlatformDisableTemporaryMemory ( >VOID ) {- EFI_STATUSStatus;- VOID > *TempRamExitParam;- CONST EFI_PEI_SERVICES**PeiServices;- > FSP_TEMP_RAM_EXIT_PPI *TempRamExitPpi;+ EFI_STATUS > Status;+ VOID *TempRamExitParam;+ CONST > EFI_PEI_SERVICES**PeiServices;+ FSP_TEMP_RAM_EXIT_PPI > *TempRamExitPpi;+ PLATFORM_INIT_TEMP_RAM_EXIT_PPI > *PlatformInitTempRamExitPpi;DEBUG ((DEBUG_INFO, >
Re: [edk2-devel] [edk2-platforms] [PATCH V2 11/14] MinPlatformPkg: Coding style cleanups in MinPlatformPkg.dec
Reviewed-by: Michael Kubacki > -Original Message- > From: Desimone, Nathaniel L > Sent: Thursday, November 21, 2019 12:59 AM > To: devel@edk2.groups.io > Cc: Kubacki, Michael A ; Chiu, Chasel > ; Gao, Liming > Subject: [edk2-platforms] [PATCH V2 11/14] MinPlatformPkg: Coding style > cleanups in MinPlatformPkg.dec > > Cc: Michael Kubacki > Cc: Chasel Chiu > Cc: Liming Gao > Signed-off-by: Nate DeSimone > --- > .../Intel/MinPlatformPkg/MinPlatformPkg.dec | 283 +- > 1 file changed, 140 insertions(+), 143 deletions(-) > > diff --git a/Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec > b/Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec > index fb069145ce..6ef0219129 100644 > --- a/Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec > +++ b/Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec > @@ -14,186 +14,184 @@ > > > > > [Defines] > > -DEC_SPECIFICATION = 0x00010017 > > -PACKAGE_NAME = MinPlatformPkg > > -PACKAGE_VERSION = 0.1 > > -PACKAGE_GUID = 463B3B00-0D18-4a5f-90C0-D5B851D2574B > > - > > + DEC_SPECIFICATION = 0x00010017 > > + PACKAGE_NAME = MinPlatformPkg > > + PACKAGE_VERSION = 0.1 > > + PACKAGE_GUID = 463B3B00-0D18-4a5f-90C0-D5B851D2574B > > > > [Includes] > > -Include > > + Include > > > > [Ppis] > > -gEdkiiSiliconInitializedPpiGuid = {0x82a72dc8, 0x61ec, 0x403e, {0xb1, 0x5a, > 0x8d, 0x7a, 0x3a, 0x71, 0x84, 0x98}} > > + gEdkiiSiliconInitializedPpiGuid = {0x82a72dc8, 0x61ec, 0x403e, {0xb1, > 0x5a, > 0x8d, 0x7a, 0x3a, 0x71, 0x84, 0x98}} > > > > -gPeiBaseMemoryTestPpiGuid = { 0xb6ec423c, 0x21d2, 0x490d, { 0x85, > 0xc6, 0xdd, 0x58, 0x64, 0xea, 0xa6, 0x74 } } > > -gPeiPlatformMemorySizePpiGuid = { 0x9a7ef41e, 0xc140, 0x4bd1, { 0xb8, > 0x84, 0x1e, 0x11, 0x24, 0x0b, 0x4c, 0xe6 } } > > + gPeiBaseMemoryTestPpiGuid = {0xb6ec423c, 0x21d2, 0x490d, {0x85, > 0xc6, 0xdd, 0x58, 0x64, 0xea, 0xa6, 0x74}} > > + gPeiPlatformMemorySizePpiGuid = {0x9a7ef41e, 0xc140, 0x4bd1, {0xb8, > 0x84, 0x1e, 0x11, 0x24, 0x0b, 0x4c, 0xe6}} > > > > [Guids] > > -gMinPlatformPkgTokenSpaceGuid = {0x69d13bf0, 0xaf91, 0x4d96, > {0xaa, 0x9f, 0x21, 0x84, 0xc5, 0xce, 0x3b, 0xc0}} > > + gMinPlatformPkgTokenSpaceGuid = {0x69d13bf0, 0xaf91, 0x4d96, {0xaa, > 0x9f, 0x21, 0x84, 0xc5, 0xce, 0x3b, 0xc0}} > > > > -gAdapterInfoPlatformTestPointGuid = {0x5381e3ea, 0xb77, 0x4580, {0xad, > 0xdf, 0xa9, 0x1c, 0x8, 0x3b, 0xf2, 0x97}} > > + gAdapterInfoPlatformTestPointGuid = {0x5381e3ea, 0x0b77, 0x4580, > {0xad, 0xdf, 0xa9, 0x1c, 0x08, 0x3b, 0xf2, 0x97}} > > > > -gBoardDetectGuid = {0x1792429d, 0x9d94, 0x4e08, {0xa0, 0x99, 0x73, > 0xa2, 0x86, 0xae, 0xb4, 0x35}} > > -gBoardPreMemInitGuid = {0x191dcfcf, 0xe16e, 0x43bb, {0x9b, 0xc3, 0x6e, > 0xee, 0x6f, 0xab, 0x3a, 0x27}} > > -gBoardPostMemInitGuid = {0xa0e933ea, 0xa69, 0x47fb, {0xb2, 0xab, > 0xa1, 0x6f, 0x71, 0x2d, 0x6f, 0x58}} > > -gBoardNotificationInitGuid = {0x78dbcabf, 0xc544, 0x4e6f, {0xaf, 0x3a, 0x71, > 0x17, 0xd9, 0x42, 0x4e, 0xd1}} > > + gBoardDetectGuid = {0x1792429d, 0x9d94, 0x4e08, {0xa0, > 0x99, > 0x73, 0xa2, 0x86, 0xae, 0xb4, 0x35}} > > + gBoardPreMemInitGuid = {0x191dcfcf, 0xe16e, 0x43bb, {0x9b, > 0xc3, > 0x6e, 0xee, 0x6f, 0xab, 0x3a, 0x27}} > > + gBoardPostMemInitGuid = {0xa0e933ea, 0xa69, 0x47fb, {0xb2, > 0xab, > 0xa1, 0x6f, 0x71, 0x2d, 0x6f, 0x58}} > > + gBoardNotificationInitGuid= {0x78dbcabf, 0xc544, 0x4e6f, {0xaf, > 0x3a, > 0x71, 0x17, 0xd9, 0x42, 0x4e, 0xd1}} > > > > -gBoardAcpiTableGuid= {0xd70e9f57, 0x69f, 0x4bef, {0x96, 0xc0, 0x84, > 0x74, 0xf4, 0xa2, 0x5f, 0x3a}} > > -gBoardAcpiEnableGuid = {0x9727b610, 0xf645, 0x4429, {0x89, 0x21, 0x2c, > 0x2b, 0x58, 0xdc, 0xbb, 0xa}} > > + gBoardAcpiTableGuid = {0xd70e9f57, 0x69f, 0x4bef, {0x96, > 0xc0, > 0x84, 0x74, 0xf4, 0xa2, 0x5f, 0x3a}} > > + gBoardAcpiEnableGuid = {0x9727b610, 0xf645, 0x4429, {0x89, > 0x21, > 0x2c, 0x2b, 0x58, 0xdc, 0xbb, 0x0a}} > > > > -gDefaultDataFileGuid= { 0x1ae42876, 0x008f, 0x4161, > { 0xb2, > 0xb7, 0x1c, 0x0d, 0x15, 0xc5, 0xef, 0x43 }} > > -gDefaultDataOptSizeFileGuid = { 0x003e7b41, 0x98a2, 0x4be2, { > 0xb2, 0x7a, 0x6c, 0x30, 0xc7, 0x65, 0x52, 0x25 }} > > + gDefaultDataFileGuid = {0x1ae42876, 0x008f, 0x4161, {0xb2, > 0xb7, > 0x1c, 0x0d, 0x15, 0xc5, 0xef, 0x43}} > > + gDefaultDataOptSizeFileGuid = {0x003e7b41,
Re: [edk2-devel] [edk2-platforms] [PATCH V2 09/14] WhiskeylakeOpenBoardPkg: Remove SecFspWrapperPlatformSecLib override
Reviewed-by: Michael Kubacki > -Original Message- > From: Desimone, Nathaniel L > Sent: Thursday, November 21, 2019 12:59 AM > To: devel@edk2.groups.io > Cc: Chiu, Chasel ; Kubacki, Michael A > > Subject: [edk2-platforms] [PATCH V2 09/14] WhiskeylakeOpenBoardPkg: > Remove SecFspWrapperPlatformSecLib override > > Cc: Chasel Chiu > Cc: Michael Kubacki > Signed-off-by: Nate DeSimone > --- > .../FspWrapperPlatformSecLib.c| 163 > .../SecFspWrapperPlatformSecLib/FsptCoreUpd.h | 40 -- > .../SecFspWrapperPlatformSecLib/Ia32/Fsp.h| 43 --- > .../Ia32/PeiCoreEntry.nasm| 130 --- > .../Ia32/SecEntry.nasm| 361 -- > .../Ia32/Stack.nasm | 72 > .../PlatformInit.c| 54 --- > .../SecFspWrapperPlatformSecLib.inf | 97 - > .../SecGetPerformance.c | 90 - > .../SecPlatformInformation.c | 79 > .../SecRamInitData.c | 37 -- > .../SecTempRamDone.c | 48 --- > .../WhiskeylakeURvp/OpenBoardPkg.dsc | 2 +- > 13 files changed, 1 insertion(+), 1215 deletions(-) delete mode 100644 > Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/SecFspWra > pperPlatformSecLib/FspWrapperPlatformSecLib.c > delete mode 100644 > Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/SecFspWra > pperPlatformSecLib/FsptCoreUpd.h > delete mode 100644 > Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/SecFspWra > pperPlatformSecLib/Ia32/Fsp.h > delete mode 100644 > Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/SecFspWra > pperPlatformSecLib/Ia32/PeiCoreEntry.nasm > delete mode 100644 > Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/SecFspWra > pperPlatformSecLib/Ia32/SecEntry.nasm > delete mode 100644 > Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/SecFspWra > pperPlatformSecLib/Ia32/Stack.nasm > delete mode 100644 > Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/SecFspWra > pperPlatformSecLib/PlatformInit.c > delete mode 100644 > Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/SecFspWra > pperPlatformSecLib/SecFspWrapperPlatformSecLib.inf > delete mode 100644 > Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/SecFspWra > pperPlatformSecLib/SecGetPerformance.c > delete mode 100644 > Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/SecFspWra > pperPlatformSecLib/SecPlatformInformation.c > delete mode 100644 > Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/SecFspWra > pperPlatformSecLib/SecRamInitData.c > delete mode 100644 > Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/SecFspWra > pperPlatformSecLib/SecTempRamDone.c > > diff --git > a/Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/SecFspWr > apperPlatformSecLib/FspWrapperPlatformSecLib.c > b/Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/SecFspWr > apperPlatformSecLib/FspWrapperPlatformSecLib.c > deleted file mode 100644 > index a767289bc5..00 > --- > a/Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/SecFspWr > apperPlatformSecLib/FspWrapperPlatformSecLib.c > +++ /dev/null > @@ -1,163 +0,0 @@ > -/** @file- Provide FSP wrapper platform sec related function.--- Copyright > (c) 2019, Intel Corporation. All rights reserved.- > SPDX-License-Identifier: > BSD-2-Clause-Patent-**/--#include --#include > -#include - > #include -#include > -#include -- > #include -#include - > #include -#include --/**- This > interface conveys state information out of the Security (SEC) phase into PEI.- > - @param[in] PeiServices Pointer to the PEI Services > Table.- > @param[in,out] StructureSize Pointer to the variable describing > size of > the input buffer.- @param[out]PlatformInformationRecord Pointer to the > EFI_SEC_PLATFORM_INFORMATION_RECORD.-- @retval EFI_SUCCESS > The data was successfully returned.- @retval EFI_BUFFER_TOO_SMALL The > buffer was too small.--**/-EFI_STATUS-EFIAPI-SecPlatformInformation (- IN > CONST EFI_PEI_SERVICES **PeiServices,- IN OUT UINT64 > *StructureSize,- OUT EFI_SEC_PLATFORM_INFORMATION_RECORD > *PlatformInformationRecord- );--/**- This interface conveys performance > information out of the Security (SEC) phase into PEI.-- This service is > published by the SEC phase. The SEC phase handoff has an optional- > EFI_PEI_PPI_DESCRIPTOR list as its final argument when control is passed > from SEC into the- PEI Foundation. As such, if the plat
Re: [edk2-devel] [edk2-platforms] [PATCH V2 05/14] CoffeeLakeSiliconPkg: TcoWdtHob.h Cleanup
Reviewed-by: Michael Kubacki > -Original Message- > From: Desimone, Nathaniel L > Sent: Thursday, November 21, 2019 12:59 AM > To: devel@edk2.groups.io > Cc: Chiu, Chasel ; Kubacki, Michael A > ; Chaganty, Rangasai V > > Subject: [edk2-platforms] [PATCH V2 05/14] CoffeeLakeSiliconPkg: > TcoWdtHob.h Cleanup > > Removes duplicate EFI_HOB_GENERIC_HEADER and EFI_HOB_GUID_TYPE > definitions from TcoWdtHob.h > > Cc: Chasel Chiu > Cc: Michael Kubacki > Cc: Sai Chaganty > Signed-off-by: Nate DeSimone > --- > .../Include/Guid/TcoWdtHob.h | 23 ++- > 1 file changed, 2 insertions(+), 21 deletions(-) > > diff --git a/Silicon/Intel/CoffeelakeSiliconPkg/Include/Guid/TcoWdtHob.h > b/Silicon/Intel/CoffeelakeSiliconPkg/Include/Guid/TcoWdtHob.h > index 5bf2527963..9e83ed49c1 100644 > --- a/Silicon/Intel/CoffeelakeSiliconPkg/Include/Guid/TcoWdtHob.h > +++ b/Silicon/Intel/CoffeelakeSiliconPkg/Include/Guid/TcoWdtHob.h > @@ -7,35 +7,16 @@ > #ifndef __TCO_WDT_HOB_H__ #define __TCO_WDT_HOB_H__ +#include > + #define TCO_WDT_HOB_GUID \ { \ 0x3e405418, 0xd8c, 0x4f1a, > { 0xb0, 0x55, 0xbe, 0xf9, 0x8, 0x41, 0x46, 0x8d } \ } -#ifndef _PEI_HOB_H_- > #ifndef __HOB__H__-#ifndef __PI_HOB_H__-typedef struct > _EFI_HOB_GENERIC_HEADER {- UINT16 HobType;- UINT16 HobLength;- > UINT32 Reserved;-} EFI_HOB_GENERIC_HEADER;--typedef struct > _EFI_HOB_GUID_TYPE {- EFI_HOB_GENERIC_HEADER Header;- EFI_GUID > Name;- //- // Guid specific data goes here- //-} EFI_HOB_GUID_TYPE;- > #endif-#endif-#endif- typedef struct { EFI_HOB_GUID_TYPE Header; > UINT8 TcoRebootHappened; } TCO_WDT_HOB; #endif--- > 2.24.0.windows.2 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#51149): https://edk2.groups.io/g/devel/message/51149 Mute This Topic: https://groups.io/mt/61073529/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [edk2-platforms] [PATCH V2 03/14] KabylakeSiliconPkg: Cleanup old comments
The copyright year should be updated in SiliconInit.c With that change: Reviewed-by: Michael Kubacki > -Original Message- > From: Desimone, Nathaniel L > Sent: Thursday, November 21, 2019 12:59 AM > To: devel@edk2.groups.io > Cc: Chiu, Chasel ; Kubacki, Michael A > ; Chaganty, Rangasai V > > Subject: [edk2-platforms] [PATCH V2 03/14] KabylakeSiliconPkg: Cleanup old > comments > > Cc: Chasel Chiu > Cc: Michael Kubacki > Cc: Sai Chaganty > Signed-off-by: Nate DeSimone > --- > .../Library/PeiSiliconInitLib/SiliconInit.c | 3 +++ > .../Library/PeiSiliconInitLib/SiliconInitPreMem.c | 4 +--- > 2 files changed, 4 insertions(+), 3 deletions(-) > > diff --git > a/Silicon/Intel/KabylakeSiliconPkg/Library/PeiSiliconInitLib/SiliconInit.c > b/Silicon/Intel/KabylakeSiliconPkg/Library/PeiSiliconInitLib/SiliconInit.c > index d09bec0489..2057973d4b 100644 > --- a/Silicon/Intel/KabylakeSiliconPkg/Library/PeiSiliconInitLib/SiliconInit.c > +++ b/Silicon/Intel/KabylakeSiliconPkg/Library/PeiSiliconInitLib/Silicon > +++ Init.c > @@ -199,6 +199,9 @@ ClearIchSmiAndWake ( >return EFI_SUCCESS; } +/**+ Late Silicon Initialization+**/ VOID > LateSiliconInit ( VOIDdiff --git > a/Silicon/Intel/KabylakeSiliconPkg/Library/PeiSiliconInitLib/SiliconInitPreMe > m.c > b/Silicon/Intel/KabylakeSiliconPkg/Library/PeiSiliconInitLib/SiliconInitPreMe > m.c > index 65a67a6795..6af9e0fcfc 100644 > --- > a/Silicon/Intel/KabylakeSiliconPkg/Library/PeiSiliconInitLib/SiliconInitPreMe > m.c > +++ b/Silicon/Intel/KabylakeSiliconPkg/Library/PeiSiliconInitLib/Silicon > +++ InitPreMem.c > @@ -31,9 +31,8 @@ SPDX-License-Identifier: BSD-2-Clause-Patent #include > #include - > //@todo it should be moved to Si Pkg. /**- Early Platform PCH initialization+ > Early Silicon initialization **/ VOID EarlySiliconInit (@@ -233,4 +232,3 @@ > SiliconInit ( >} }--- > 2.24.0.windows.2 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#51147): https://edk2.groups.io/g/devel/message/51147 Mute This Topic: https://groups.io/mt/61073532/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [edk2-platforms] [PATCH V2 07/14] WhiskeylakeOpenBoardPkg: Add SiliconInitLib APIs to BoardInitLib
Reviewed-by: Michael Kubacki > -Original Message- > From: Desimone, Nathaniel L > Sent: Thursday, November 21, 2019 12:59 AM > To: devel@edk2.groups.io > Cc: Chiu, Chasel ; Kubacki, Michael A > > Subject: [edk2-platforms] [PATCH V2 07/14] WhiskeylakeOpenBoardPkg: > Add SiliconInitLib APIs to BoardInitLib > > Cc: Chasel Chiu > Cc: Michael Kubacki > Signed-off-by: Nate DeSimone > --- > .../BoardInitLib/PeiBoardInitPostMemLib.inf | 1 + > .../BoardInitLib/PeiBoardInitPreMemLib.inf| 1 + > .../PeiMultiBoardInitPostMemLib.inf | 1 + > .../PeiMultiBoardInitPreMemLib.inf| 2 +- > .../PeiWhiskeylakeURvpInitPostMemLib.c| 6 +- > .../PeiWhiskeylakeURvpInitPreMemLib.c | 89 ++- > .../BoardInitLib/WhiskeylakeURvpInit.h| 1 + > .../WhiskeylakeURvp/OpenBoardPkg.dsc | 5 ++ > 8 files changed, 24 insertions(+), 82 deletions(-) > > diff --git > a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boa > rdInitLib/PeiBoardInitPostMemLib.inf > b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boa > rdInitLib/PeiBoardInitPostMemLib.inf > index 9bf4d127c5..affc5c56ad 100644 > --- > a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boa > rdInitLib/PeiBoardInitPostMemLib.inf > +++ > b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boa > rdInitLib/PeiBoardInitPostMemLib.inf > @@ -26,6 +26,7 @@ >HdaVerbTableLib > >MemoryAllocationLib > >PcdLib > > + SiliconInitLib > > > > [Packages] > >MinPlatformPkg/MinPlatformPkg.dec > > diff --git > a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boa > rdInitLib/PeiBoardInitPreMemLib.inf > b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boa > rdInitLib/PeiBoardInitPreMemLib.inf > index 4ab80f9eb3..40e20285e0 100644 > --- > a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boa > rdInitLib/PeiBoardInitPreMemLib.inf > +++ > b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boa > rdInitLib/PeiBoardInitPreMemLib.inf > @@ -23,6 +23,7 @@ >BaseMemoryLib > >MemoryAllocationLib > >PcdLib > > + SiliconInitLib > > > > [Packages] > >MinPlatformPkg/MinPlatformPkg.dec > > diff --git > a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boa > rdInitLib/PeiMultiBoardInitPostMemLib.inf > b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boa > rdInitLib/PeiMultiBoardInitPostMemLib.inf > index c043e32638..21dc2f70c0 100644 > --- > a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boa > rdInitLib/PeiMultiBoardInitPostMemLib.inf > +++ > b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boa > rdInitLib/PeiMultiBoardInitPostMemLib.inf > @@ -30,6 +30,7 @@ >PeiPlatformHookLib > >PeiPolicyInitLib > >PchInfoLib > > + SiliconInitLib > > > > [Packages] > >MinPlatformPkg/MinPlatformPkg.dec > > diff --git > a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boa > rdInitLib/PeiMultiBoardInitPreMemLib.inf > b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boa > rdInitLib/PeiMultiBoardInitPreMemLib.inf > index cd0315377a..7389f1dfcd 100644 > --- > a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boa > rdInitLib/PeiMultiBoardInitPreMemLib.inf > +++ > b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boa > rdInitLib/PeiMultiBoardInitPreMemLib.inf > @@ -31,6 +31,7 @@ >PeiPlatformHookLib > >PeiPolicyInitLib > >PlatformHookLib > > + SiliconInitLib > >StallPpiLib > > > > [Packages] > > @@ -57,7 +58,6 @@ > > > [Guids] > >gPchGeneralPreMemConfigGuid ## CONSUMES > > - gTcoWdtHobGuid## CONSUMES > > > > [Pcd] > >gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdLpcSioConfigDefaultPort > > diff --git > a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boa > rdInitLib/PeiWhiskeylakeURvpInitPostMemLib.c > b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boa > rdInitLib/PeiWhiskeylakeURvpInitPostMemLib.c > index 9413620a4a..248a6657d5 100644 > --- > a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boa > rdInitLib/PeiWhiskeylakeURvpInitPostMemLib.c > +++ > b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boa > rdInitLib/PeiWhiskeylakeURvpInitPostMemLib.c > @@ -430,6 +430,10 @@ WhiskeylakeURvpBoardInitBeforeSiliconIni
Re: [edk2-devel] [edk2-platforms] [PATCH V2 12/14] KabylakeOpenBoardPkg: Add support for PcdFspDispatchModeUseFspPeiMain
Reviewed-by: Michael Kubacki > -Original Message- > From: Desimone, Nathaniel L > Sent: Thursday, November 21, 2019 12:59 AM > To: devel@edk2.groups.io > Cc: Chiu, Chasel ; Kubacki, Michael A > > Subject: [edk2-platforms] [PATCH V2 12/14] KabylakeOpenBoardPkg: Add > support for PcdFspDispatchModeUseFspPeiMain > > If PcdFspDispatchModeUseFspPeiMain is FALSE, then the BoardPkg should > include PeiMain in FvPreMemory. > > Cc: Chasel Chiu > Cc: Michael Kubacki > Signed-off-by: Nate DeSimone > --- > .../KabylakeRvp3/OpenBoardPkg.fdf | 5 +++-- > .../KabylakeRvp3/OpenBoardPkgPcd.dsc | 20 +++ > 2 files changed, 23 insertions(+), 2 deletions(-) > > diff --git > a/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.fdf > b/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.fdf > index 98eb7dcb5a..3b3b153b68 100644 > --- > a/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.fdf > +++ > b/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.fdf > @@ -229,10 +229,11 @@ READ_LOCK_STATUS = TRUE > FvNameGuid = FC8FE6B5-CD9B-411E-BD8F-31824D0CDE3D INF > UefiCpuPkg/SecCore/SecCore.inf-!if > (gMinPlatformPkgTokenSpaceGuid.PcdFspWrapperBootMode == FALSE) || > (gIntelFsp2WrapperTokenSpaceGuid.PcdFspModeSelection == 1)+!if > (gMinPlatformPkgTokenSpaceGuid.PcdFspWrapperBootMode == FALSE) || > (gMinPlatformPkgTokenSpaceGuid.PcdFspDispatchModeUseFspPeiMain == > FALSE) || (gIntelFsp2WrapperTokenSpaceGuid.PcdFspModeSelection == 1) > # # PeiMain is needed only for FSP API mode or EDK2 build,-# in FSP dispatch > mode the one inside FSP Binary is launched.+# in FSP dispatch mode the one > inside FSP Binary is launched+# unless requested otherwise > (PcdFspDispatchModeUseFspPeiMain == FALSE). # INF > MdeModulePkg/Core/Pei/PeiMain.inf !endifdiff --git > a/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkgPcd. > dsc > b/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkgPcd. > dsc > index 580504cbc1..5474edd01c 100644 > --- > a/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkgPcd. > dsc > +++ > b/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkgPcd. > d > +++ sc > @@ -39,6 +39,26 @@ ># gMinPlatformPkgTokenSpaceGuid.PcdFspWrapperBootMode|TRUE + > #+ # FALSE: The PEI Main included in FvPreMemory is used to dispatch all > PEIMs+ #(both inside FSP and outside FSP).+ #Pros:+ # > * PEI > Main is re-built from source and is always the latest version+ # * > Platform code can link any desired LibraryClass to PEI Main+ # > (Ex: > Custom DebugLib instance, SerialPortLib, etc.)+ #Cons:+ # > * The PEI > Main being used to execute FSP PEIMs is not the PEI Main+ #that > the > FSP PEIMs were tested with, adding risk of breakage.+ # * Two > copies of > PEI Main will exist in the final binary,+ ##1 in FSP-M, #2 in > FvPreMemory. The copy in FSP-M is never+ #executed, wasting > space.+ #+ # TRUE: The PEI Main included in FSP is used to dispatch > all PEIMs+ #(both inside FSP and outside FSP). PEI Main will not be > included in+ #FvPreMemory. This is the default and is the recommended > choice.+ #+ > gMinPlatformPkgTokenSpaceGuid.PcdFspDispatchModeUseFspPeiMain|TR > UE+ # # FSP Base address PCD will be updated in FDF basing on flash map. > #-- > 2.24.0.windows.2 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#51156): https://edk2.groups.io/g/devel/message/51156 Mute This Topic: https://groups.io/mt/61073539/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [edk2-platforms] [PATCH V2 06/14] CoffeelakeSiliconPkg: Add SiliconInitLib
Reviewed-by: Michael Kubacki > -Original Message- > From: Desimone, Nathaniel L > Sent: Thursday, November 21, 2019 12:59 AM > To: devel@edk2.groups.io > Cc: Chiu, Chasel ; Kubacki, Michael A > ; Chaganty, Rangasai V > > Subject: [edk2-platforms] [PATCH V2 06/14] CoffeelakeSiliconPkg: Add > SiliconInitLib > > SiliconInitLib contains Silicon Init APIs that can be reused by BoardInitLib. > It is > expected that several implementations of BoardInitLib exist for a given SOC, > these APIs allow the various BoardInitLib implementations to reuse common > silicon initialization code. This matches the implementation already found in > KabylakeSiliconPkg. This change also adds halting the TCO watch dog timer to > PEI, which was previously done in SEC. > > Cc: Chasel Chiu > Cc: Michael Kubacki > Cc: Sai Chaganty > Signed-off-by: Nate DeSimone > --- > .../Include/Library/SiliconInitLib.h | 28 + > .../PeiSiliconInitLib/PeiSiliconInitLib.inf | 46 > .../Library/PeiSiliconInitLib/SiliconInit.c | 19 +++ > .../PeiSiliconInitLib/SiliconInitPreMem.c | 109 ++ > 4 files changed, 202 insertions(+) > create mode 100644 > Silicon/Intel/CoffeelakeSiliconPkg/Include/Library/SiliconInitLib.h > create mode 100644 > Silicon/Intel/CoffeelakeSiliconPkg/Library/PeiSiliconInitLib/PeiSiliconInitLib.in > f > create mode 100644 > Silicon/Intel/CoffeelakeSiliconPkg/Library/PeiSiliconInitLib/SiliconInit.c > create mode 100644 > Silicon/Intel/CoffeelakeSiliconPkg/Library/PeiSiliconInitLib/SiliconInitPreMem > .c > > diff --git > a/Silicon/Intel/CoffeelakeSiliconPkg/Include/Library/SiliconInitLib.h > b/Silicon/Intel/CoffeelakeSiliconPkg/Include/Library/SiliconInitLib.h > new file mode 100644 > index 00..a3411126a7 > --- /dev/null > +++ b/Silicon/Intel/CoffeelakeSiliconPkg/Include/Library/SiliconInitLib. > +++ h > @@ -0,0 +1,28 @@ > +/** @file++Copyright (c) 2019, Intel Corporation. All rights > +reserved.+SPDX-License-Identifier: > +BSD-2-Clause-Patent++**/++#ifndef _SILICON_INIT_LIB_H_+#define > +_SILICON_INIT_LIB_H_++#include ++VOID+EarlySiliconInit (+ > +VOID+ );++VOID+SiliconInit (+ VOID+ );++VOID+LateSiliconInit (+ > +VOID+ );++#endif > \ No newline at end of file > diff --git > a/Silicon/Intel/CoffeelakeSiliconPkg/Library/PeiSiliconInitLib/PeiSiliconInitLib. > inf > b/Silicon/Intel/CoffeelakeSiliconPkg/Library/PeiSiliconInitLib/PeiSiliconInitLib. > inf > new file mode 100644 > index 00..1534a24dd2 > --- /dev/null > +++ b/Silicon/Intel/CoffeelakeSiliconPkg/Library/PeiSiliconInitLib/PeiSi > +++ liconInitLib.inf > @@ -0,0 +1,46 @@ > +### @file+#+# Copyright (c) 2019, Intel Corporation. All rights > reserved.+#+# SPDX-License-Identifier: BSD-2-Clause- > Patent+#+###++[Defines]+ INF_VERSION= 0x00010017+ > BASE_NAME = SiliconInitLib+ FILE_GUID >= 82F2ACF0- > 2EBE-48C8-AC58-9D0F8BC1E16E+ VERSION_STRING = 1.0+ > MODULE_TYPE= PEIM+ LIBRARY_CLASS = > SiliconInitLib|SEC PEIM+#+# The following information is for reference only > and not required by the build tools.+#+# VALID_ARCHITECTURES = IA32 X64 > IPF EBC+#++[LibraryClasses]+ BaseLib+ BaseMemoryLib+ DebugLib+ > HobLib+ IoLib+ PcdLib+ PeiServicesLib+ PchCycleDecodingLib+ > PmcLib++[Packages]+ MdePkg/MdePkg.dec+ > CoffeelakeSiliconPkg/SiPkg.dec++[Sources]+ SiliconInit.c+ > SiliconInitPreMem.c++[Guids]+ gTcoWdtHobGuid ## > CONSUMES++[Pcd]+ gSiPkgTokenSpaceGuid.PcdAcpiBaseAddress ## > CONSUMES+ gSiPkgTokenSpaceGuid.PcdTcoBaseAddress ## > CONSUMESdiff --git > a/Silicon/Intel/CoffeelakeSiliconPkg/Library/PeiSiliconInitLib/SiliconInit.c > b/Silicon/Intel/CoffeelakeSiliconPkg/Library/PeiSiliconInitLib/SiliconInit.c > new file mode 100644 > index 00..1c15e0e54e > --- /dev/null > +++ b/Silicon/Intel/CoffeelakeSiliconPkg/Library/PeiSiliconInitLib/Silic > +++ onInit.c > @@ -0,0 +1,19 @@ > +/** @file+ Silicon Init APIs for MinPlatform BoardInitLib > +implementations.++Copyright (c) 2019, Intel Corporation. All rights > +reserved.+SPDX-License-Identifier: > +BSD-2-Clause-Patent++**/++#include ++/**+ Late Silicon > +Initialization+**/+VOID+LateSiliconInit (+ VOID+ )+{+}diff --git > +a/Silicon/Intel/CoffeelakeSiliconPkg/Library/PeiSiliconInitLib/SiliconI > +nitPreMem.c > +b/Silicon/Intel/CoffeelakeSiliconPkg/Library/PeiSiliconInitLib/SiliconI > +nitPreMem.c > new file mode 100644 > index 00..ab98b6ccc5 > --- /dev/null > +++ b/Silicon/Intel/CoffeelakeSiliconPkg/Library/PeiSiliconInitLib/Silic > +++ onInitPreMem.c
Re: [edk2-devel] [edk2-platforms] [PATCH V2 04/14] CoffeeLakeSiliconPkg: Move TcoWdtHob.h
Reviewed-by: Michael Kubacki > -Original Message- > From: devel@edk2.groups.io On Behalf Of Nate > DeSimone > Sent: Thursday, November 21, 2019 12:59 AM > To: devel@edk2.groups.io > Cc: Chiu, Chasel ; Kubacki, Michael A > ; Chaganty, Rangasai V > > Subject: [edk2-devel] [edk2-platforms] [PATCH V2 04/14] > CoffeeLakeSiliconPkg: Move TcoWdtHob.h > > Moves TcoWdtHob.h from WhiskeylakeOpenBoardPkg to > CoffeelakeSiliconPkg. > Oddly, gTcoWdtHobGuid was defined in CoffeelakeSiliconPkg/SiPkg.dec > while the HOB definition itself was in WhiskeylakeOpenBoardPkg, this > change cleans up the disparity. > > Cc: Chasel Chiu > Cc: Michael Kubacki > Cc: Sai Chaganty > Signed-off-by: Nate DeSimone > --- > .../Intel/CoffeelakeSiliconPkg}/Include/Guid/TcoWdtHob.h | 0 > 1 file changed, 0 insertions(+), 0 deletions(-) rename > {Platform/Intel/WhiskeylakeOpenBoardPkg => > Silicon/Intel/CoffeelakeSiliconPkg}/Include/Guid/TcoWdtHob.h (100%) > > diff --git > a/Platform/Intel/WhiskeylakeOpenBoardPkg/Include/Guid/TcoWdtHob.h > b/Silicon/Intel/CoffeelakeSiliconPkg/Include/Guid/TcoWdtHob.h > similarity index 100% > rename from > Platform/Intel/WhiskeylakeOpenBoardPkg/Include/Guid/TcoWdtHob.h > rename to Silicon/Intel/CoffeelakeSiliconPkg/Include/Guid/TcoWdtHob.h > -- > 2.24.0.windows.2 > > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#51148): https://edk2.groups.io/g/devel/message/51148 Mute This Topic: https://groups.io/mt/61073530/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [edk2-platforms] [PATCH V2 10/14] MinPlatformPkg: FSP Dispatch Mode Support for PlatformSecLib
Reviewed-by: Michael Kubacki > -Original Message- > From: Desimone, Nathaniel L > Sent: Thursday, November 21, 2019 12:59 AM > To: devel@edk2.groups.io > Cc: Kubacki, Michael A ; Chiu, Chasel > ; Gao, Liming > Subject: [edk2-platforms] [PATCH V2 10/14] MinPlatformPkg: FSP Dispatch > Mode Support for PlatformSecLib > > Cc: Michael Kubacki > Cc: Chasel Chiu > Cc: Liming Gao > Signed-off-by: Nate DeSimone > --- > .../FspWrapperPlatformSecLib.c| 34 --- > .../SecFspWrapperPlatformSecLib.inf | 7 +++- > .../SecTempRamDone.c | 42 +++ > .../Intel/MinPlatformPkg/MinPlatformPkg.dec | 28 - > 4 files changed, 95 insertions(+), 16 deletions(-) > > diff --git > a/Platform/Intel/MinPlatformPkg/FspWrapper/Library/SecFspWrapperPlatf > ormSecLib/FspWrapperPlatformSecLib.c > b/Platform/Intel/MinPlatformPkg/FspWrapper/Library/SecFspWrapperPlatf > ormSecLib/FspWrapperPlatformSecLib.c > index 303f3aac40..36bdc1dee8 100644 > --- > a/Platform/Intel/MinPlatformPkg/FspWrapper/Library/SecFspWrapperPlatf > ormSecLib/FspWrapperPlatformSecLib.c > +++ > b/Platform/Intel/MinPlatformPkg/FspWrapper/Library/SecFspWrapperPlat > +++ formSecLib/FspWrapperPlatformSecLib.c > @@ -1,7 +1,7 @@ > /** @file Provide FSP wrapper platform sec related function. -Copyright (c) > 2017, Intel Corporation. All rights reserved.+Copyright (c) 2017 - 2019, > Intel Corporation. All rights reserved. SPDX-License-Identifier: BSD-2- > Clause-Patent **/@@ -12,6 +12,7 @@ SPDX-License-Identifier: BSD-2- > Clause-Patent > #include #include > #include +#include > #include #include > @@ -66,6 +67,18 @@ PEI_SEC_PERFORMANCE_PPI > mSecPerformancePpi = { >SecGetPerformance }; +EFI_PEI_CORE_FV_LOCATION_PPI > mPeiCoreFvLocationPpi = {+ (VOID *) (UINTN) FixedPcdGet32 > (PcdFspmBaseAddress)+};++EFI_PEI_PPI_DESCRIPTOR > mPeiCoreFvLocationPpiList[] = {+ {+EFI_PEI_PPI_DESCRIPTOR_PPI,+ > ,++ }+};+ > EFI_PEI_PPI_DESCRIPTOR mPeiSecPlatformPpi[] = { { > EFI_PEI_PPI_DESCRIPTOR_PPI,@@ -129,6 +142,8 @@ SecPlatformMain ( >) { EFI_PEI_PPI_DESCRIPTOR *PpiList;+ UINT8 > TopOfTemporaryRamPpiIndex;+ UINT8 > *CopyDestinationPointer; > DEBUG ((DEBUG_INFO, "FSP Wrapper BootFirmwareVolumeBase - 0x%x\n", > SecCoreData->BootFirmwareVolumeBase)); DEBUG ((DEBUG_INFO, "FSP > Wrapper BootFirmwareVolumeSize - 0x%x\n", SecCoreData- > >BootFirmwareVolumeSize));@@ -150,13 +165,22 @@ SecPlatformMain ( >// Use middle of Heap as temp buffer, it will be copied by caller. // Do > not > use Stack, because it will cause wrong calculation on stack by PeiCore //- > PpiList = (VOID *)((UINTN)SecCoreData->PeiTemporaryRamBase + > (UINTN)SecCoreData->PeiTemporaryRamSize/2);- CopyMem (PpiList, > mPeiSecPlatformPpi, sizeof(mPeiSecPlatformPpi));-+ PpiList = (VOID > *)((UINTN) SecCoreData->PeiTemporaryRamBase + (UINTN) SecCoreData- > >PeiTemporaryRamSize/2);+ CopyDestinationPointer = (UINT8 *) PpiList;+ > TopOfTemporaryRamPpiIndex = 0;+ if ((PcdGet8 (PcdFspModeSelection) == > 0) && PcdGetBool (PcdFspDispatchModeUseFspPeiMain)) {+//+// In > Dispatch mode, wrapper should provide PeiCoreFvLocationPpi.+//+ > CopyMem (CopyDestinationPointer, mPeiCoreFvLocationPpiList, sizeof > (mPeiCoreFvLocationPpiList));+TopOfTemporaryRamPpiIndex = 1;+ > CopyDestinationPointer += sizeof (mPeiCoreFvLocationPpiList);+ }+ > CopyMem (CopyDestinationPointer, mPeiSecPlatformPpi, sizeof > (mPeiSecPlatformPpi)); // // Patch TopOfTemporaryRamPpi //- > PpiList[0].Ppi = (VOID *)((UINTN)SecCoreData->TemporaryRamBase + > SecCoreData->TemporaryRamSize);+ > PpiList[TopOfTemporaryRamPpiIndex].Ppi = (VOID *)((UINTN) SecCoreData- > >TemporaryRamBase + SecCoreData->TemporaryRamSize);return PpiList; > }diff --git > a/Platform/Intel/MinPlatformPkg/FspWrapper/Library/SecFspWrapperPlatf > ormSecLib/SecFspWrapperPlatformSecLib.inf > b/Platform/Intel/MinPlatformPkg/FspWrapper/Library/SecFspWrapperPlatf > ormSecLib/SecFspWrapperPlatformSecLib.inf > index 3f5a63f273..02c720c73d 100644 > --- > a/Platform/Intel/MinPlatformPkg/FspWrapper/Library/SecFspWrapperPlatf > ormSecLib/SecFspWrapperPlatformSecLib.inf > +++ > b/Platform/Intel/MinPlatformPkg/FspWrapper/Library/SecFspWrapperPlat > +++ formSecLib/SecFspWrapperPlatformSecLib.inf > @@ -72,18 +72,20 @@ >BoardInitLib SecBoardInitLib TestPointCheckLib+ > PeiServicesTablePointerLib [Ppis] gEfiSecPlatformInformationPpiGuid > ## > CONSUMES gPeiSecPerformancePpiGuid ## CONSUMES > gTopOfTemporaryRamPpiGuid ##
Re: [edk2-devel] [edk2-platforms] [PATCH V2 08/14] WhiskeylakeOpenBoardPkg: Whitespace cleanup in BoardInitLib
Reviewed-by: Michael Kubacki > -Original Message- > From: Desimone, Nathaniel L > Sent: Thursday, November 21, 2019 12:59 AM > To: devel@edk2.groups.io > Cc: Chiu, Chasel ; Kubacki, Michael A > > Subject: [edk2-platforms] [PATCH V2 08/14] WhiskeylakeOpenBoardPkg: > Whitespace cleanup in BoardInitLib > > Cc: Chasel Chiu > Cc: Michael Kubacki > Signed-off-by: Nate DeSimone > --- > .../PeiWhiskeylakeURvpInitPostMemLib.c| 185 ++--- > .../PeiWhiskeylakeURvpInitPreMemLib.c | 257 +- > 2 files changed, 216 insertions(+), 226 deletions(-) > > diff --git > a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boa > rdInitLib/PeiWhiskeylakeURvpInitPostMemLib.c > b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boa > rdInitLib/PeiWhiskeylakeURvpInitPostMemLib.c > index 248a6657d5..827af6bb57 100644 > --- > a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boa > rdInitLib/PeiWhiskeylakeURvpInitPostMemLib.c > +++ > b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boa > rdInitLib/PeiWhiskeylakeURvpInitPostMemLib.c > @@ -33,16 +33,16 @@ > #include "WhiskeylakeURvpInit.h" > > > > EFI_STATUS > > -BoardFunctionInit( > > +BoardFunctionInit ( > >IN UINT16 BoardId > > -); > > + ); > > > > /** > > -GPIO init function for PEI post memory phase. > > + GPIO init function for PEI post memory phase. > > > > -@param[in] BoardId An unsigned integrer represent the board id. > > + @param[in] BoardId An unsigned integrer represent the board id. > > > > -@retval EFI_SUCCESS The function completed successfully. > > + @retval EFI_SUCCESS The function completed successfully. > > **/ > > EFI_STATUS > > BoardGpioInit( > > @@ -72,48 +72,48 @@ BoardGpioInit( > } > > > > /** > > -Touch panel GPIO init function for PEI post memory phase. > > + Touch panel GPIO init function for PEI post memory phase. > > > > -@param[in] BoardId An unsigned integrer represent the board id. > > + @param[in] BoardId An unsigned integrer represent the board id. > > > > -@retval EFI_SUCCESS The function completed successfully. > > + @retval EFI_SUCCESS The function completed successfully. > > **/ > > EFI_STATUS > > -TouchPanelGpioInit( > > +TouchPanelGpioInit ( > >IN UINT16 BoardId > > -) > > + ) > > { > >switch (BoardId) { > > default: > > - PcdSet32S(PcdBoardGpioTableTouchPanel, 0); > > + PcdSet32S (PcdBoardGpioTableTouchPanel, 0); > > break; > >} > >return EFI_SUCCESS; > > } > > > > /** > > -Misc. init function for PEI post memory phase. > > + Misc. init function for PEI post memory phase. > > > > -@param[in] BoardId An unsigned integrer represent the board id. > > + @param[in] BoardId An unsigned integrer represent the board id. > > > > -@retval EFI_SUCCESS The function completed successfully. > > + @retval EFI_SUCCESS The function completed successfully. > > **/ > > EFI_STATUS > > -BoardMiscInit( > > +BoardMiscInit ( > >IN UINT16 BoardId > > -) > > + ) > > { > > - PcdSetBoolS(PcdDebugUsbUartEnable, FALSE); > > + PcdSetBoolS (PcdDebugUsbUartEnable, FALSE); > > > >switch (BoardId) { > > > > case BoardIdWhiskeyLakeRvp: > > > > - PcdSetBoolS(PcdMipiCamGpioEnable, TRUE); > > + PcdSetBoolS (PcdMipiCamGpioEnable, TRUE); > >break; > > > > default: > > - PcdSetBoolS(PcdMipiCamGpioEnable, FALSE); > > + PcdSetBoolS (PcdMipiCamGpioEnable, FALSE); > >break; > >} > > > > @@ -121,25 +121,22 @@ BoardMiscInit( > } > > > > /** > > -Security GPIO init function for PEI post memory phase. > > + Security GPIO init function for PEI post memory phase. > > > > -@param[in] BoardId An unsigned integrer represent the board id. > > + @param[in] BoardId An unsigned integrer represent the board id. > > > > -@retval EFI_SUCCESS The function completed successfully. > > + @retval EFI_SUCCESS The function completed successfully. > > **/ > > EFI_STATUS > > BoardSecurityInit ( > >IN UINT16 BoardId > > -) > > + ) > > { > >switch (BoardId) { > > -
Re: [edk2-devel] [edk2-platforms] [PATCH V2 02/14] KabylakeOpenBoardPkg: Update location of SiliconInitLib
Reviewed-by: Michael Kubacki > -Original Message- > From: devel@edk2.groups.io On Behalf Of Nate > DeSimone > Sent: Thursday, November 21, 2019 12:59 AM > To: devel@edk2.groups.io > Cc: Chiu, Chasel ; Kubacki, Michael A > ; Jeremy Soller > Subject: [edk2-devel] [edk2-platforms] [PATCH V2 02/14] > KabylakeOpenBoardPkg: Update location of SiliconInitLib > > Cc: Chasel Chiu > Cc: Michael Kubacki > Cc: Jeremy Soller > Signed-off-by: Nate DeSimone > --- > Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.dsc | 2 > +- > .../Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.dsc| 2 +- > 2 files changed, 2 insertions(+), 2 deletions(-) > > diff --git > a/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.dsc > b/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.dsc > index e43c944201..2bc2b4126b 100644 > --- a/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.dsc > +++ > b/Platform/Intel/KabylakeOpenBoardPkg/GalagoPro3/OpenBoardPkg.dsc > @@ -105,7 +105,7 @@ ># Silicon Initialization Package > ### > ConfigBlockLib|IntelSiliconPkg/Library/BaseConfigBlockLib/BaseConfigBlockLi > b.inf- > SiliconInitLib|$(PLATFORM_SI_PACKAGE)/Library/SiliconInitLib/SiliconInitLib.i > nf+ > SiliconInitLib|$(PLATFORM_SI_PACKAGE)/Library/PeiSiliconInitLib/PeiSiliconI > nitLib.inf > SiliconPolicyInitLib|$(PLATFORM_SI_PACKAGE)/Library/PeiSiliconPolicyInitLib > Fsp/PeiSiliconPolicyInitLibFsp.inf > #diff --git > a/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.dsc > b/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.dsc > index 1ce473432a..77e4a6a610 100644 > --- > a/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.dsc > +++ > b/Platform/Intel/KabylakeOpenBoardPkg/KabylakeRvp3/OpenBoardPkg.dsc > @@ -133,7 +133,7 @@ ># Silicon Initialization Package > ### > ConfigBlockLib|IntelSiliconPkg/Library/BaseConfigBlockLib/BaseConfigBlockLi > b.inf- > SiliconInitLib|$(PLATFORM_SI_PACKAGE)/Library/SiliconInitLib/SiliconInitLib.i > nf+ > SiliconInitLib|$(PLATFORM_SI_PACKAGE)/Library/PeiSiliconInitLib/PeiSiliconI > nitLib.inf !if gIntelFsp2WrapperTokenSpaceGuid.PcdFspModeSelection == 1 > #-- > 2.24.0.windows.2 > > > -=-=-=-=-=-= > Groups.io Links: You receive all messages sent to this group. > > View/Reply Online (#51010): https://edk2.groups.io/g/devel/message/51010 > Mute This Topic: https://groups.io/mt/61073523/1772268 > Group Owner: devel+ow...@edk2.groups.io > Unsubscribe: https://edk2.groups.io/g/devel/unsub > [michael.a.kuba...@intel.com] -=-=-=-=-=-= -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#51146): https://edk2.groups.io/g/devel/message/51146 Mute This Topic: https://groups.io/mt/61073523/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [edk2-platforms] [PATCH V2 01/14] KabylakeSiliconPkg: Change MODULE_TYPE of SiliconInitLib to PEIM
Reviewed-by: Michael Kubacki > -Original Message- > From: Desimone, Nathaniel L > Sent: Thursday, November 21, 2019 12:59 AM > To: devel@edk2.groups.io > Cc: Chiu, Chasel ; Kubacki, Michael A > ; Chaganty, Rangasai V > > Subject: [edk2-platforms] [PATCH V2 01/14] KabylakeSiliconPkg: Change > MODULE_TYPE of SiliconInitLib to PEIM > > This library contains PEI phase only code. For example, > ClearIchSmiAndWake() calls PeiServicesGetBootMode(). > Accordingly, this library should have never been marked as a BASE library. > > Cc: Chasel Chiu > Cc: Michael Kubacki > Cc: Sai Chaganty > Signed-off-by: Nate DeSimone > --- > .../PeiSiliconInitLib.inf} | 5 +++-- > .../{SiliconInitLib => PeiSiliconInitLib}/SiliconInit.c | 0 > .../SiliconInitPreMem.c | 0 > 3 files changed, 3 insertions(+), 2 deletions(-) rename > Silicon/Intel/KabylakeSiliconPkg/Library/{SiliconInitLib/SiliconInitLib.inf => > PeiSiliconInitLib/PeiSiliconInitLib.inf} (86%) rename > Silicon/Intel/KabylakeSiliconPkg/Library/{SiliconInitLib => > PeiSiliconInitLib}/SiliconInit.c (100%) rename > Silicon/Intel/KabylakeSiliconPkg/Library/{SiliconInitLib => > PeiSiliconInitLib}/SiliconInitPreMem.c (100%) > > diff --git > a/Silicon/Intel/KabylakeSiliconPkg/Library/SiliconInitLib/SiliconInitLib.inf > b/Silicon/Intel/KabylakeSiliconPkg/Library/PeiSiliconInitLib/PeiSiliconInitLib.in > f > similarity index 86% > rename from > Silicon/Intel/KabylakeSiliconPkg/Library/SiliconInitLib/SiliconInitLib.inf > rename to > Silicon/Intel/KabylakeSiliconPkg/Library/PeiSiliconInitLib/PeiSiliconInitLib.inf > index 132080e876..bd77b081e5 100644 > --- > a/Silicon/Intel/KabylakeSiliconPkg/Library/SiliconInitLib/SiliconInitLib.inf > +++ b/Silicon/Intel/KabylakeSiliconPkg/Library/PeiSiliconInitLib/PeiSili > +++ conInitLib.inf > @@ -11,8 +11,9 @@ >BASE_NAME = SiliconInitLib FILE_GUID > = 72CD3A7B- > FEA5-4F5E-9165-4DD12187BB13 VERSION_STRING = 1.0- > MODULE_TYPE= BASE- LIBRARY_CLASS = > SiliconInitLib+ > MODULE_TYPE= PEIM+ LIBRARY_CLASS = > SiliconInitLib|SEC PEIM+ # # The following information is for reference only > and not required by the build tools. #diff --git > a/Silicon/Intel/KabylakeSiliconPkg/Library/SiliconInitLib/SiliconInit.c > b/Silicon/Intel/KabylakeSiliconPkg/Library/PeiSiliconInitLib/SiliconInit.c > similarity index 100% > rename from > Silicon/Intel/KabylakeSiliconPkg/Library/SiliconInitLib/SiliconInit.c > rename to > Silicon/Intel/KabylakeSiliconPkg/Library/PeiSiliconInitLib/SiliconInit.c > diff --git > a/Silicon/Intel/KabylakeSiliconPkg/Library/SiliconInitLib/SiliconInitPreMem.c > b/Silicon/Intel/KabylakeSiliconPkg/Library/PeiSiliconInitLib/SiliconInitPreMe > m.c > similarity index 100% > rename from > Silicon/Intel/KabylakeSiliconPkg/Library/SiliconInitLib/SiliconInitPreMem.c > rename to > Silicon/Intel/KabylakeSiliconPkg/Library/PeiSiliconInitLib/SiliconInitPreMem.c > -- > 2.24.0.windows.2 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#51145): https://edk2.groups.io/g/devel/message/51145 Mute This Topic: https://groups.io/mt/61073527/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [edk2-rfc] [edk2-platforms] Add Features directory
I think the plural name is more intuitive since there will be more than one feature but I don’t have a strong preference. Thanks, Michael From: Ni, Ray Sent: Thursday, November 21, 2019 12:05 AM To: Kubacki; Kubacki, Michael A ; devel@edk2.groups.io Subject: Re: [edk2-devel] [edk2-rfc] [edk2-platforms] Add Features directory Basically I think the "/Features" directory is a good idea. It separates the common features from the concrete platforms. Minor comment: Given today here are "Drivers", "Platform" and "Silicon" under the root of edk2-platforms repo, do you think that it's better to use "/Feature" to align existing names? I also wanted to change "Drivers" to "Driver" (https://edk2.groups.io/g/devel/message/47203?p=,,,20,0,0,0::Created,,OptionRomPkg,20,2,0,33080721) -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#51118): https://edk2.groups.io/g/devel/message/51118 Mute This Topic: https://groups.io/mt/40545577/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-