public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Nate DeSimone" <nathaniel.l.desimone@intel.com>
To: "devel@edk2.groups.io" <devel@edk2.groups.io>,
	"Oram, Isaac W" <isaac.w.oram@intel.com>
Cc: "Chaganty, Rangasai V" <rangasai.v.chaganty@intel.com>,
	"Gao, Liming" <gaoliming@byosoft.com.cn>
Subject: Re: [edk2-devel][edk2-platforms][PATCH V1 20/27] SpcrFeaturePkg: Use MinPlatform build include files
Date: Thu, 13 Jan 2022 02:50:21 +0000	[thread overview]
Message-ID: <MW4PR11MB5821C34B12E542795CF2D514CD539@MW4PR11MB5821.namprd11.prod.outlook.com> (raw)
In-Reply-To: <9fe41786a6142a31b8724632f37eab047e3d9deb.1641953242.git.isaac.w.oram@intel.com>

Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com>

> -----Original Message-----
> From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Oram,
> Isaac W
> Sent: Tuesday, January 11, 2022 6:20 PM
> To: devel@edk2.groups.io
> Cc: Oram, Isaac W <isaac.w.oram@intel.com>; Chaganty, Rangasai V
> <rangasai.v.chaganty@intel.com>; Gao, Liming <gaoliming@byosoft.com.cn>
> Subject: [edk2-devel][edk2-platforms][PATCH V1 20/27] SpcrFeaturePkg:
> Use MinPlatform build include files
> 
> Also added feature enable flag
> 
> Cc: Sai Chaganty <rangasai.v.chaganty@intel.com>
> Cc: Liming Gao <gaoliming@byosoft.com.cn>
> 
> Signed-off-by: Isaac Oram <isaac.w.oram@intel.com>
> ---
> 
> Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Include/Library/Sp
> crDeviceLib.h |  2 +-
> 
> Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Include/PostMem
> ory.fdf          | 13 ++++
> 
> Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Include/PreMemo
> ry.fdf           | 11 ++++
> 
> Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Include/SpcrFeatu
> re.dsc         | 62 --------------------
>  Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Readme.md
> | 12 ++--
> 
> Features/Intel/OutOfBandManagement/SpcrFeaturePkg/SpcrFeaturePkg.de
> c              |  6 ++
> 
> Features/Intel/OutOfBandManagement/SpcrFeaturePkg/SpcrFeaturePkg.ds
> c              | 18 ++++++
>  7 files changed, 55 insertions(+), 69 deletions(-)
> 
> diff --git
> a/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Include/Library/
> SpcrDeviceLib.h
> b/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Include/Library/
> SpcrDeviceLib.h
> index 947813815e..2e50270ee6 100644
> ---
> a/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Include/Library/
> SpcrDeviceLib.h
> +++
> b/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Include/Library/
> +++ SpcrDeviceLib.h
> @@ -12,7 +12,7 @@
> 
>  /**
>    Get a Serial Port device used for SPCR.
> -  The caller should call FreePool() to free the memory if return value is not
> NULL.
> +  The caller should call FreePool () to free the memory if return value is not
> NULL.
> 
>    @retval NULL          Can not get device.
>    @retval Others        A serial port device path.
> diff --git
> a/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Include/PostMe
> mory.fdf
> b/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Include/PostMe
> mory.fdf
> new file mode 100644
> index 0000000000..f963f567c2
> --- /dev/null
> +++
> b/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Include/PostMe
> mo
> +++ ry.fdf
> @@ -0,0 +1,13 @@
> +## @file
> +#  FDF file for post-memory SpcrFeature advanced feature.
> +#
> +#  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) 2022 Intel Corporation.
> +#
> +# SPDX-License-Identifier: BSD-2-Clause-Patent ##
> +
> +INF SpcrFeaturePkg/SpcrAcpiDxe/SpcrAcpiDxe.inf
> diff --git
> a/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Include/PreMe
> mory.fdf
> b/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Include/PreMe
> mory.fdf
> new file mode 100644
> index 0000000000..3c461e7fbc
> --- /dev/null
> +++
> b/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Include/PreMe
> mor
> +++ y.fdf
> @@ -0,0 +1,11 @@
> +## @file
> +#  FDF file for pre-memory SpcrFeature advanced feature.
> +#
> +#  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) 2022 Intel Corporation.
> +#
> +# SPDX-License-Identifier: BSD-2-Clause-Patent ##
> diff --git
> a/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Include/SpcrFea
> ture.dsc
> b/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Include/SpcrFea
> ture.dsc
> index c51e552df5..b06ddf4fe6 100644
> ---
> a/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Include/SpcrFea
> ture.dsc
> +++
> b/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Include/SpcrFea
> t
> +++ ure.dsc
> @@ -25,40 +25,9 @@
>    !error "DXE_ARCH must be specified to build this feature!"
>  !endif
> 
> -
> ##########################################################
> ######################
> -#
> -# Library Class section - list of all Library Classes needed by this feature.
> -#
> -
> ##########################################################
> ######################
> -
> -!include MdePkg/MdeLibs.dsc.inc
> -
>  [LibraryClasses]
> -  #######################################
> -  # Edk2 Packages
> -  #######################################
> -  BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
> -
> BaseMemoryLib|MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibR
> epStr.inf
> -  DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
> -
> UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntry
> Point.inf
> -  UefiLib|MdePkg/Library/UefiLib/UefiLib.inf
> -  PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
> -  PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
> -
> UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBo
> otServicesTableLib.inf
> -  DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
> -
> UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib
> /UefiRuntimeServicesTableLib.inf
> -
> -  #######################################
> -  # SpcrFeaturePkg Packages
> -  #######################################
> 
> SpcrDeviceLib|SpcrFeaturePkg/Library/SpcrDeviceLibNull/SpcrDeviceLibNull.i
> nf
> 
> -[LibraryClasses.common.DXE_DRIVER]
> -  #######################################
> -  # Edk2 Packages
> -  #######################################
> -
> MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemo
> ryAllocationLib.inf
> -
> 
> ##########################################################
> ######################
>  #
>  # Component section - list of all components that need built for this feature.
> @@ -74,38 +43,7 @@
>  #
> 
> ##########################################################
> ######################
> 
> -#
> -# Feature DXE Components
> -#
> -
>  # @todo: Change below line to [Components.$(DXE_ARCH)] after
> https://bugzilla.tianocore.org/show_bug.cgi?id=2308
>  #        is completed.
>  [Components.X64]
> -  #####################################
> -  # Spcr Feature Package
> -  #####################################
> -
> -  # Add library instances here that are not included in package components
> and should be tested
> -  # in the package build.
> -
> -  # Add components here that should be included in the package build.
>    SpcrFeaturePkg/SpcrAcpiDxe/SpcrAcpiDxe.inf
> -  #{
> -#    <LibraryClasses>
> -#
> SpcrDeviceLib|SpcrFeaturePkg/Library/SpcrDeviceLibNull/SpcrDeviceLibNull.i
> nf
> -#  }
> -
> -
> ##########################################################
> #########################################
> -#
> -# BuildOptions Section - Define the module specific tool chain flags that
> should be used as
> -#                        the default flags for a module. These flags are appended to any
> -#                        standard flags that are defined by the build process. They can
> be
> -#                        applied for any modules or only those modules with the
> specific
> -#                        module style (EDK or EDKII) specified in [Components] section.
> -#
> -#                        For advanced features, it is recommended to enable
> [BuildOptions] in
> -#                        the applicable INF file so it does not affect the whole board
> package
> -#                        build when this DSC file is active.
> -#
> -
> ##########################################################
> #########################################
> -[BuildOptions]
> diff --git
> a/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Readme.md
> b/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Readme.md
> index 0a5d48876d..66138ee0f6 100644
> --- a/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Readme.md
> +++ b/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Readme.md
> @@ -22,10 +22,10 @@ Platform can implement its own library to select the
> serial port device.
>  * SpcrDeviceLibNull
> 
>  ## SpcrAcpiDxe
> -The main driver of convert the serial port device info to ACPI table.
> -It will call the function GetSpcrDevice() in the library SpcrDeviceLib to get the
> serial port device path.
> +The main driver of convert the serial port device info into an ACPI table.
> +It will call the function GetSpcrDevice () in the library SpcrDeviceLib to get
> the serial port device path.
>  If the serial port device path is not NULL, then use gEfiPciIoProtocolGuid to
> get the PCI info, and use the gEfiSerialIoProtocolGuid to get the serial port
> info, such as the baud rate etc.
> -If the serial port device is PCI device 00:16:03 (AMT serial over lan PCI
> device), then will set the BaseAddress.
> +If the serial port device is PCI device 00:16:03 (AMT serial over LAN PCI
> device), then will set the BaseAddress.
>  At last fill the ACPI table as Windows required.
> 
>  ## SpcrDeviceLibNull
> @@ -37,19 +37,19 @@ Fill the serial port device info used for SPCR to ACPI
> table.
> 
>  ## Configuration
>  There is not special configuration.
> -But the platform maybe implemente its own SpcrDeviceLib.
> +But the platform may implement its own SpcrDeviceLib.
> 
>  ## Data Flows
>  GetSpcrDevice() -> serial port device path -> get PCI info and serial port info
> -> ACPI table.
> 
>  ## Control Flows
> -GetSpcrDevice() in SpcrDeviceLib -> SpcrAcpiDxe.
> +GetSpcrDevice () in SpcrDeviceLib -> SpcrAcpiDxe.
> 
>  ## Build Flows
>  There is not special build flow.
> 
>  ## Test Point Results
> -* Check the output ACPI table.
> +There are not test points implemented.
> 
>  ## Functional Exit Criteria
>  * Check the output ACPI table.
> diff --git
> a/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/SpcrFeaturePkg.
> dec
> b/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/SpcrFeaturePkg.
> dec
> index 03776abf06..b084fad892 100644
> ---
> a/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/SpcrFeaturePkg.
> dec
> +++
> b/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/SpcrFeaturePkg.
> d
> +++ ec
> @@ -21,6 +21,12 @@
>  [Includes]
>    Include
> 
> +[Guids]
> +  gSpcrFeaturePkgTokenSpaceGuid = { 0xe978c988, 0xeeba, 0x4671, { 0xb8,
> +0x0d, 0xcc, 0x8b, 0x89, 0xb5, 0xd1, 0xef }}
> +
> +[PcdsFeatureFlag]
> +
> +gSpcrFeaturePkgTokenSpaceGuid.PcdSpcrFeatureEnable|FALSE|BOOLEAN
> |0x0000
> +0001
> +
>  [LibraryClasses]
>    ## @libraryclass  Provides an API for get SPCR device.
>    #
> diff --git
> a/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/SpcrFeaturePkg.
> dsc
> b/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/SpcrFeaturePkg.
> dsc
> index 82d2d3ac73..2ee874a58e 100644
> ---
> a/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/SpcrFeaturePkg.
> dsc
> +++
> b/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/SpcrFeaturePkg.
> d
> +++ sc
> @@ -24,6 +24,24 @@
>    PEI_ARCH                       = IA32
>    DXE_ARCH                       = X64
> 
> +[Packages]
> +  MinPlatformPkg/MinPlatformPkg.dec
> +
> +[PcdsFeatureFlag]
> +  #
> +  # PCD needed for MinPlatform build includes
> +  #
> +  gMinPlatformPkgTokenSpaceGuid.PcdSmiHandlerProfileEnable
> |FALSE
> +  gMinPlatformPkgTokenSpaceGuid.PcdUefiSecureBootEnable
> |FALSE
> +  gMinPlatformPkgTokenSpaceGuid.PcdPerformanceEnable
> |FALSE
> +
> +#
> +# Include common libraries
> +#
> +!include MinPlatformPkg/Include/Dsc/CoreCommonLib.dsc
> +!include MinPlatformPkg/Include/Dsc/CorePeiLib.dsc
> +!include MinPlatformPkg/Include/Dsc/CoreDxeLib.dsc
> +
>  #
>  # This package always builds the feature.
>  #
> --
> 2.27.0.windows.1
> 
> 
> 
> 
> 


  reply	other threads:[~2022-01-13  2:50 UTC|newest]

Thread overview: 86+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-01-12  2:20 [edk2-devel][edk2-platforms][PATCH V1 00/27] Improve feature build consistency Oram, Isaac W
2022-01-12  2:20 ` [edk2-devel][edk2-platforms][PATCH V1 01/27] BeepDebugFeaturePkg: Use MinPlatformPkg build include files Oram, Isaac W
2022-01-13  2:47   ` Nate DeSimone
2022-01-19 23:30   ` Nate DeSimone
2022-01-12  2:20 ` [edk2-devel][edk2-platforms][PATCH V1 02/27] BeepDebugFeaturePkg: Fix all relative package paths Oram, Isaac W
2022-01-13  2:47   ` Nate DeSimone
2022-01-14  5:27   ` Chaganty, Rangasai V
2022-01-12  2:20 ` [edk2-devel][edk2-platforms][PATCH V1 03/27] AcpiDebugFeaturePkg: " Oram, Isaac W
2022-01-13  2:48   ` Nate DeSimone
2022-01-14  5:18   ` Chaganty, Rangasai V
2022-01-18 22:59     ` Oram, Isaac W
2022-01-12  2:20 ` [edk2-devel][edk2-platforms][PATCH V1 04/27] IpmiFeaturePkg: " Oram, Isaac W
2022-01-13  2:48   ` Nate DeSimone
2022-01-19  0:02     ` Oram, Isaac W
2022-01-12  2:20 ` [edk2-devel][edk2-platforms][PATCH V1 05/27] IpmiFeaturePkg: Fix build errors Oram, Isaac W
2022-01-13  2:48   ` Nate DeSimone
2022-01-18 23:38     ` Oram, Isaac W
2022-01-12  2:20 ` [edk2-devel][edk2-platforms][PATCH V1 06/27] S3FeaturePkg: Fix all relative package paths Oram, Isaac W
2022-01-13  2:48   ` Nate DeSimone
2022-01-14  5:19   ` Chaganty, Rangasai V
2022-01-19  1:11     ` Oram, Isaac W
2022-01-12  2:20 ` [edk2-devel][edk2-platforms][PATCH V1 07/27] S3FeaturePkg: Use MinPlatformPkg build include files Oram, Isaac W
2022-01-13  2:49   ` Nate DeSimone
2022-01-14  5:29   ` Chaganty, Rangasai V
2022-01-19  1:26     ` Oram, Isaac W
2022-01-12  2:20 ` [edk2-devel][edk2-platforms][PATCH V1 08/27] SmbiosFeaturePkg: Fix all relative package paths Oram, Isaac W
2022-01-13  2:49   ` Nate DeSimone
2022-01-14  5:31   ` Chaganty, Rangasai V
2022-01-19  1:40     ` Oram, Isaac W
2022-01-12  2:20 ` [edk2-devel][edk2-platforms][PATCH V1 09/27] SmbiosFeaturePkg: Use MinPlatformPkg build include files Oram, Isaac W
2022-01-13  2:49   ` Nate DeSimone
2022-01-12  2:20 ` [edk2-devel][edk2-platforms][PATCH V1 10/27] UserAuthFeaturePkg: Fix all relative package paths Oram, Isaac W
2022-01-13  2:49   ` Nate DeSimone
2022-01-12  2:20 ` [edk2-devel][edk2-platforms][PATCH V1 11/27] UserAuthFeaturePkg: Use MinPlatformPkg build include files Oram, Isaac W
2022-01-13  2:49   ` Nate DeSimone
2022-01-12  2:20 ` [edk2-devel][edk2-platforms][PATCH V1 12/27] VirtualKeyboardFeaturePkg: Fix all relative package paths Oram, Isaac W
2022-01-13  2:49   ` Nate DeSimone
2022-01-12  2:20 ` [edk2-devel][edk2-platforms][PATCH V1 13/27] VirtualKeyboardFeaturePkg: Use MinPlatformPkg build include files Oram, Isaac W
2022-01-13  2:49   ` Nate DeSimone
2022-01-12  2:20 ` [edk2-devel][edk2-platforms][PATCH V1 14/27] VirtualKeyboardFeaturePkg: Add feature enable PCD Oram, Isaac W
2022-01-13  2:49   ` Nate DeSimone
2022-01-12  2:20 ` [edk2-devel][edk2-platforms][PATCH V1 15/27] NetworkFeaturePkg: Use MinPlatformPkg build include files Oram, Isaac W
2022-01-13  2:49   ` Nate DeSimone
2022-01-14  5:57   ` Chaganty, Rangasai V
2022-01-19  2:31     ` Oram, Isaac W
2022-01-12  2:20 ` [edk2-devel][edk2-platforms][PATCH V1 16/27] LogoFeaturePkg: " Oram, Isaac W
2022-01-13  2:49   ` Nate DeSimone
2022-01-12  2:20 ` [edk2-devel][edk2-platforms][PATCH V1 17/27] PostCodeDebugFeaturePkg: Complete as an advanced feature Oram, Isaac W
2022-01-13  2:48   ` Nate DeSimone
2022-01-12  2:20 ` [edk2-devel][edk2-platforms][PATCH V1 18/27] AcpiDebugFeaturePkg: Use MinPlatformPkg build include files Oram, Isaac W
2022-01-13  2:47   ` Nate DeSimone
2022-01-19 23:30   ` Nate DeSimone
2022-01-12  2:20 ` [edk2-devel][edk2-platforms][PATCH V1 19/27] Usb3DebugFeaturePkg: Align with feature design guidelines Oram, Isaac W
2022-01-13  2:47   ` Nate DeSimone
2022-01-12  2:20 ` [edk2-devel][edk2-platforms][PATCH V1 20/27] SpcrFeaturePkg: Use MinPlatform build include files Oram, Isaac W
2022-01-13  2:50   ` Nate DeSimone [this message]
2022-01-14  6:10   ` Chaganty, Rangasai V
2022-01-19 19:09     ` Oram, Isaac W
2022-01-12  2:20 ` [edk2-devel][edk2-platforms][PATCH V1 21/27] TemplateFeaturePkg: " Oram, Isaac W
2022-01-13  2:50   ` Nate DeSimone
2022-01-14  6:05   ` Chaganty, Rangasai V
2022-01-19 19:13     ` Oram, Isaac W
2022-01-12  2:20 ` [edk2-devel][edk2-platforms][PATCH V1 22/27] AdvancedFeaturePkg: Fix all relative package paths Oram, Isaac W
2022-01-13  2:50   ` Nate DeSimone
2022-01-14  5:39   ` Chaganty, Rangasai V
2022-01-19 19:17     ` Oram, Isaac W
2022-01-12  2:20 ` [edk2-devel][edk2-platforms][PATCH V1 23/27] AdvancedFeaturePkg: Add missing features Oram, Isaac W
2022-01-13  2:50   ` Nate DeSimone
2022-01-14  5:36   ` Chaganty, Rangasai V
2022-01-12  2:20 ` [edk2-devel][edk2-platforms][PATCH V1 24/27] MinPlatformPkg/Build: Add an include file for the common SPI FV info Oram, Isaac W
2022-01-13  2:50   ` Nate DeSimone
2022-01-14  6:02   ` Chaganty, Rangasai V
2022-01-19 19:20     ` Oram, Isaac W
2022-01-12  2:20 ` [edk2-devel][edk2-platforms][PATCH V1 25/27] WhitleyOpenBoardPkg/Build: Use common SPI FV Header include Oram, Isaac W
2022-01-13  2:50   ` Nate DeSimone
2022-01-19 19:34     ` Oram, Isaac W
2022-01-12  2:20 ` [edk2-devel][edk2-platforms][PATCH V1 26/27] AdvancedFeaturePkg/Build: Add FDF to create FV for all features Oram, Isaac W
2022-01-13  2:47   ` Nate DeSimone
2022-01-12  2:20 ` [edk2-devel][edk2-platforms][PATCH V1 27/27] WhitleyOpenBoardPkg/Build: Enable Features/Intel features Oram, Isaac W
2022-01-13  2:51   ` Nate DeSimone
2022-01-13  2:47 ` [edk2-devel][edk2-platforms][PATCH V1 00/27] Improve feature build consistency Nate DeSimone
2022-01-13  3:15   ` Oram, Isaac W
2022-01-13  3:52     ` Nate DeSimone
2022-01-13  3:53     ` Nate DeSimone
2022-01-13 19:33       ` Oram, Isaac W
2022-01-19 23:30         ` Nate DeSimone

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=MW4PR11MB5821C34B12E542795CF2D514CD539@MW4PR11MB5821.namprd11.prod.outlook.com \
    --to=devel@edk2.groups.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox