public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* [edk2-devel][edk2-platforms][PATCH V2 00/14] Improve feature build consistency
@ 2022-01-20  1:13 Oram, Isaac W
  2022-01-20  1:13 ` [edk2-devel][edk2-platforms][PATCH V2 01/14] BeepDebugFeaturePkg: Use MinPlatformPkg build include files Oram, Isaac W
                   ` (14 more replies)
  0 siblings, 15 replies; 17+ messages in thread
From: Oram, Isaac W @ 2022-01-20  1:13 UTC (permalink / raw)
  To: devel
  Cc: Sai Chaganty, Liming Gao, Eric Dong, Ming Tan, Nate DeSimone,
	Chasel Chiu, Dandan Bi, Miki Shindo, Mohamed Abbas,
	Manickavasakam Karpagavinayagam

This series addresses inconsistencies in feature implementation and use. Some inconsistencies are just
conventions of the feature design/template/convention.  Some are inconsistency with feature design intent
that negatively affect the usability of the features and the amount of work required from board porting
engineers.

V2:
  19/27: Fixed typo in library class name, Usb3DebugPortParamLibo to Usb3DebugPortParamLib.
  01/27: Merged 02 into 01 so as to not introduce relative paths in the first place.
  Note approved commits 3, 4, 5, 6, 7, 8, 15, 20, 21, 22, 24, and 25 were pushed.

V1:

Some features were missing feature enable flags.
Some features had non-functional standalone builds.
Many features were implemented to include common core build content in their feature include files.
Updated some of the Readme content.
Added AdvancedFeaturePkg.fdf to build all feature content to support verifying no build time issues between features.
Removed duplicate and unused content from build files.
Modified the TemplateFeaturePkg to use the common MinPlatform include content.

Removed all instances where features were relative to Features/Intel and made them relative to the package roots.
This does mean PACKAGES_PATH may need to be extended for all the feature domains.  Debugging, PowerManagement, etc.
However, it should enable packaging tools to function properly as the relative paths violate spec.

Use of the common MinPlatformPkg build includes does increase the build time for each individual feature in standalone
build modes. It does not negatively impact board or AdvancedFeaturePkg builds as the common content is only built
once. Part of MinPlatform arch intent is to reduce cognitive complexity, so the simpler build is more valuable than
fast build time.

Cc: Sai Chaganty <rangasai.v.chaganty@intel.com>
Cc: Liming Gao <gaoliming@byosoft.com.cn>
Cc: Eric Dong <eric.dong@intel.com>
Cc: Ming Tan <ming.tan@intel.com>
Cc: Nate DeSimone <nathaniel.l.desimone@intel.com>
Cc: Chasel Chiu <chasel.chiu@intel.com>
Cc: Dandan Bi <dandan.bi@intel.com>
Cc: Miki Shindo <miki.shindo@intel.com>
Cc: Mohamed Abbas <mohamed.abbas@intel.com>
Cc: Manickavasakam Karpagavinayagam <manickavasakamk@ami.com>

Signed-off-by: Isaac Oram <isaac.w.oram@intel.com>


Isaac Oram (14):
  BeepDebugFeaturePkg: Use MinPlatformPkg build include files
  SmbiosFeaturePkg: Use MinPlatformPkg build include files
  UserAuthFeaturePkg: Fix all relative package paths
  UserAuthFeaturePkg: Use MinPlatformPkg build include files
  VirtualKeyboardFeaturePkg: Fix all relative package paths
  VirtualKeyboardFeaturePkg: Use MinPlatformPkg build include files
  VirtualKeyboardFeaturePkg: Add feature enable PCD
  LogoFeaturePkg: Use MinPlatformPkg build include files
  PostCodeDebugFeaturePkg: Complete as an advanced feature
  AcpiDebugFeaturePkg: Use MinPlatformPkg build include files
  Usb3DebugFeaturePkg: Align with feature design guidelines
  AdvancedFeaturePkg: Add missing features
  AdvancedFeaturePkg/Build: Add FDF to create FV for all features
  WhitleyOpenBoardPkg/Build: Enable Features/Intel features

 Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc                                                                  |  67 +++++-
 Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.fdf                                                                  |  49 +++++
 Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeatures.dsc                                                            |  36 ++-
 Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeaturesPcd.dsc                                                         |  64 +++++-
 Features/Intel/AdvancedFeaturePkg/Include/PostMemory.fdf                                                                  |  36 ++-
 Features/Intel/AdvancedFeaturePkg/Include/PreMemory.fdf                                                                   |  36 ++-
 Features/Intel/Debugging/AcpiDebugFeaturePkg/AcpiDebugFeaturePkg.dsc                                                      |  21 ++
 Features/Intel/Debugging/AcpiDebugFeaturePkg/Include/AcpiDebugFeature.dsc                                                 |  70 ------
 Features/Intel/Debugging/AcpiDebugFeaturePkg/Include/PostMemory.fdf                                                       |   4 +-
 Features/Intel/Debugging/BeepDebugFeaturePkg/BeepDebugFeaturePkg.dec                                                      |   7 +-
 Features/Intel/Debugging/BeepDebugFeaturePkg/BeepDebugFeaturePkg.dsc                                                      |  28 +++
 Features/Intel/Debugging/BeepDebugFeaturePkg/Include/BeepDebugFeature.dsc                                                 | 222 ++++++-------------
 Features/Intel/Debugging/BeepDebugFeaturePkg/Include/Library/BeepLib.h                                                    |   6 +-
 Features/Intel/Debugging/BeepDebugFeaturePkg/Include/PostMemory.fdf                                                       |  14 ++
 Features/Intel/Debugging/BeepDebugFeaturePkg/Include/PreMemory.fdf                                                        |  13 ++
 Features/Intel/Debugging/BeepDebugFeaturePkg/Library/BeepStatusCodeHandlerLib/PeiBeepStatusCodeHandlerLib.inf             |   5 +-
 Features/Intel/Debugging/BeepDebugFeaturePkg/Library/BeepStatusCodeHandlerLib/RuntimeDxeBeepStatusCodeHandlerLib.inf      |   3 -
 Features/Intel/Debugging/BeepDebugFeaturePkg/Library/BeepStatusCodeHandlerLib/SmmBeepStatusCodeHandlerLib.inf             |   3 -
 Features/Intel/Debugging/BeepDebugFeaturePkg/Readme.md                                                                    |  91 +++++---
 Features/Intel/Debugging/PostCodeDebugFeaturePkg/Include/PostCodeDebugFeature.dsc                                         | 231 +++++---------------
 Features/Intel/Debugging/PostCodeDebugFeaturePkg/Include/PostMemory.fdf                                                   |  14 ++
 Features/Intel/Debugging/PostCodeDebugFeaturePkg/Include/PreMemory.fdf                                                    |  13 ++
 Features/Intel/Debugging/PostCodeDebugFeaturePkg/Library/PostCodeStatusCodeHandlerLib/PeiPostCodeStatusCodeHandlerLib.inf |   2 +-
 Features/Intel/Debugging/PostCodeDebugFeaturePkg/PostCodeDebugFeaturePkg.dec                                              |  11 +
 Features/Intel/Debugging/PostCodeDebugFeaturePkg/PostCodeDebugFeaturePkg.dsc                                              |  30 +++
 Features/Intel/Debugging/PostCodeDebugFeaturePkg/Readme.md                                                                |  31 ++-
 Features/Intel/Debugging/Usb3DebugFeaturePkg/Include/Usb3DebugFeature.dsc                                                 | 131 ++---------
 Features/Intel/Debugging/Usb3DebugFeaturePkg/Readme.md                                                                    |  50 +++--
 Features/Intel/Debugging/Usb3DebugFeaturePkg/Usb3DebugFeaturePkg.dec                                                      |  14 +-
 Features/Intel/Debugging/Usb3DebugFeaturePkg/Usb3DebugFeaturePkg.dsc                                                      |  18 ++
 Features/Intel/Readme.md                                                                                                  |  49 +++--
 Features/Intel/SystemInformation/SmbiosFeaturePkg/Include/PostMemory.fdf                                                  |   2 +-
 Features/Intel/SystemInformation/SmbiosFeaturePkg/Include/SmbiosFeature.dsc                                               |  52 -----
 Features/Intel/SystemInformation/SmbiosFeaturePkg/SmbiosFeaturePkg.dsc                                                    |  18 ++
 Features/Intel/UserInterface/LogoFeaturePkg/Include/LogoFeature.dsc                                                       |  69 +-----
 Features/Intel/UserInterface/LogoFeaturePkg/LogoFeaturePkg.dec                                                            |   2 -
 Features/Intel/UserInterface/LogoFeaturePkg/LogoFeaturePkg.dsc                                                            |  38 +++-
 Features/Intel/UserInterface/UserAuthFeaturePkg/Include/PostMemory.fdf                                                    |   6 +-
 Features/Intel/UserInterface/UserAuthFeaturePkg/Include/UserAuthFeature.dsc                                               |  92 +-------
 Features/Intel/UserInterface/UserAuthFeaturePkg/Library/PlatformPasswordLibNull/PlatformPasswordLibNull.inf               |   2 +-
 Features/Intel/UserInterface/UserAuthFeaturePkg/Library/UserPasswordLib/UserPasswordLib.inf                               |   2 +-
 Features/Intel/UserInterface/UserAuthFeaturePkg/Library/UserPasswordUiLib/UserPasswordUiLib.inf                           |   2 +-
 Features/Intel/UserInterface/UserAuthFeaturePkg/UserAuthFeaturePkg.dsc                                                    |  18 ++
 Features/Intel/UserInterface/UserAuthFeaturePkg/UserAuthenticationDxeSmm/UserAuthentication2Dxe.inf                       |   2 +-
 Features/Intel/UserInterface/UserAuthFeaturePkg/UserAuthenticationDxeSmm/UserAuthenticationDxe.inf                        |   2 +-
 Features/Intel/UserInterface/UserAuthFeaturePkg/UserAuthenticationDxeSmm/UserAuthenticationSmm.inf                        |   2 +-
 Features/Intel/UserInterface/VirtualKeyboardFeaturePkg/Include/PostMemory.fdf                                             |   2 +-
 Features/Intel/UserInterface/VirtualKeyboardFeaturePkg/Include/VirtualKeyboardFeature.dsc                                 |  64 +-----
 Features/Intel/UserInterface/VirtualKeyboardFeaturePkg/VirtualKeyboardFeaturePkg.dec                                      |   7 +-
 Features/Intel/UserInterface/VirtualKeyboardFeaturePkg/VirtualKeyboardFeaturePkg.dsc                                      |  18 ++
 Platform/Intel/WhitleyOpenBoardPkg/PlatformPkg.dsc                                                                        |  44 ++++
 Platform/Intel/WhitleyOpenBoardPkg/PlatformPkg.fdf                                                                        |   6 +-
 52 files changed, 886 insertions(+), 933 deletions(-)
 create mode 100644 Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.fdf
 create mode 100644 Features/Intel/Debugging/BeepDebugFeaturePkg/Include/PostMemory.fdf
 create mode 100644 Features/Intel/Debugging/BeepDebugFeaturePkg/Include/PreMemory.fdf
 create mode 100644 Features/Intel/Debugging/PostCodeDebugFeaturePkg/Include/PostMemory.fdf
 create mode 100644 Features/Intel/Debugging/PostCodeDebugFeaturePkg/Include/PreMemory.fdf

--
2.27.0.windows.1

^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2022-02-02 23:42 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-01-20  1:13 [edk2-devel][edk2-platforms][PATCH V2 00/14] Improve feature build consistency Oram, Isaac W
2022-01-20  1:13 ` [edk2-devel][edk2-platforms][PATCH V2 01/14] BeepDebugFeaturePkg: Use MinPlatformPkg build include files Oram, Isaac W
2022-01-20  1:13 ` [edk2-devel][edk2-platforms][PATCH V2 02/14] SmbiosFeaturePkg: " Oram, Isaac W
2022-01-20  1:13 ` [edk2-devel][edk2-platforms][PATCH V2 03/14] UserAuthFeaturePkg: Fix all relative package paths Oram, Isaac W
2022-01-20  1:13 ` [edk2-devel][edk2-platforms][PATCH V2 04/14] UserAuthFeaturePkg: Use MinPlatformPkg build include files Oram, Isaac W
2022-01-20  1:14 ` [edk2-devel][edk2-platforms][PATCH V2 05/14] VirtualKeyboardFeaturePkg: Fix all relative package paths Oram, Isaac W
2022-01-20  1:14 ` [edk2-devel][edk2-platforms][PATCH V2 06/14] VirtualKeyboardFeaturePkg: Use MinPlatformPkg build include files Oram, Isaac W
2022-01-20  1:14 ` [edk2-devel][edk2-platforms][PATCH V2 07/14] VirtualKeyboardFeaturePkg: Add feature enable PCD Oram, Isaac W
2022-01-20  1:14 ` [edk2-devel][edk2-platforms][PATCH V2 08/14] LogoFeaturePkg: Use MinPlatformPkg build include files Oram, Isaac W
2022-01-20  1:14 ` [edk2-devel][edk2-platforms][PATCH V2 09/14] PostCodeDebugFeaturePkg: Complete as an advanced feature Oram, Isaac W
2022-01-20  1:14 ` [edk2-devel][edk2-platforms][PATCH V2 10/14] AcpiDebugFeaturePkg: Use MinPlatformPkg build include files Oram, Isaac W
2022-01-20  1:14 ` [edk2-devel][edk2-platforms][PATCH V2 11/14] Usb3DebugFeaturePkg: Align with feature design guidelines Oram, Isaac W
2022-01-20  1:14 ` [edk2-devel][edk2-platforms][PATCH V2 12/14] AdvancedFeaturePkg: Add missing features Oram, Isaac W
2022-01-20  1:14 ` [edk2-devel][edk2-platforms][PATCH V2 13/14] AdvancedFeaturePkg/Build: Add FDF to create FV for all features Oram, Isaac W
2022-01-20  1:14 ` [edk2-devel][edk2-platforms][PATCH V2 14/14] WhitleyOpenBoardPkg/Build: Enable Features/Intel features Oram, Isaac W
2022-01-22  1:36 ` [edk2-devel][edk2-platforms][PATCH V2 00/14] Improve feature build consistency Nate DeSimone
2022-02-02 23:42   ` Oram, Isaac W

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox