From nobody Tue Feb 10 02:54:54 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+85606+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+85606+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=intel.com ARC-Seal: i=1; a=rsa-sha256; t=1641954066; cv=none; d=zohomail.com; s=zohoarc; b=SFwryjcGNrE+sDBZkBFJNd6hsRmh8X6jmvTnay0bV3dsr+gbHhX39rUbhZe+PqxkIg5ziZEYTorxsrmFrDiECd8T2jJQywwjfKV3KA1faOne99fObOVMe7hxOXsmYnT6mFlfhzTVx/TjuiHNvE28tvTIjCBsVAmMJotSSK5nGFI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1641954066; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=o8+fyf+PthM0q2UWFOCRYBF3xfmTCPpU20kOYSD93W0=; b=PsGhuyRiUpuuwCgfJp41TtUObdrCks38r2yJUQ9MqIO286nj3+IM752JM8V36WEva8KEFuUkXRHgt9Cb4osVORH2TryyZKUj3uwzyvROnyiqEUWKJzEcrDDIBZUx2HEVOFXYOGnEKNYvVkBcI8OQn6/vPAn1TUGD0tv9JIjrM6g= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+85606+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1641954066113218.30883219609018; Tue, 11 Jan 2022 18:21:06 -0800 (PST) Return-Path: X-Received: by 127.0.0.2 with SMTP id EGy2YY1788612xda1D6Sn9Ta; Tue, 11 Jan 2022 18:21:05 -0800 X-Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mx.groups.io with SMTP id smtpd.web10.17892.1641954049038531757 for ; Tue, 11 Jan 2022 18:20:52 -0800 X-IronPort-AV: E=McAfee;i="6200,9189,10224"; a="243439837" X-IronPort-AV: E=Sophos;i="5.88,281,1635231600"; d="scan'208";a="243439837" X-Received: from orsmga008.jf.intel.com ([10.7.209.65]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 11 Jan 2022 18:20:49 -0800 X-IronPort-AV: E=Sophos;i="5.88,281,1635231600"; d="scan'208";a="528990339" X-Received: from iworam-desk.amr.corp.intel.com ([10.7.150.79]) by orsmga008-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 11 Jan 2022 18:20:49 -0800 From: "Oram, Isaac W" To: devel@edk2.groups.io Cc: Isaac Oram , Sai Chaganty , Liming Gao Subject: [edk2-devel][edk2-platforms][PATCH V1 20/27] SpcrFeaturePkg: Use MinPlatform build include files Date: Tue, 11 Jan 2022 18:20:20 -0800 Message-Id: <9fe41786a6142a31b8724632f37eab047e3d9deb.1641953242.git.isaac.w.oram@intel.com> In-Reply-To: References: MIME-Version: 1.0 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,isaac.w.oram@intel.com X-Gm-Message-State: OH8i2hFRZVxASVlhnML0Cughx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1641954065; bh=96GJCkLTIHViTUNM00T8ot0oFGEcOU/fnx/dX3CuF1E=; h=Cc:Date:From:Reply-To:Subject:To; b=HmLil+0dkXsh2YxzpE6hnAG2XhYt8x7bvP2bjWxUwJ9QRvA/ZL3K0CO90LU4lJqMc3X VvTTdAAspXfuELlIByz6nfa3APrtl2ksxDCFaFi4dOk/8uX9YculcInWxZTk/DdSYjw8f ZXkYxFRa/GuoElklVtmRbl7cTgapNS2IdA0= X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1641954066585100058 Content-Type: text/plain; charset="utf-8" Also added feature enable flag Cc: Sai Chaganty Cc: Liming Gao Signed-off-by: Isaac Oram Reviewed-by: Nate DeSimone Reviewed-by: Sai Chaganty --- Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Include/Library/SpcrDevi= ceLib.h | 2 +- Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Include/PostMemory.fdf = | 13 ++++ Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Include/PreMemory.fdf = | 11 ++++ Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Include/SpcrFeature.dsc = | 62 -------------------- Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Readme.md = | 12 ++-- Features/Intel/OutOfBandManagement/SpcrFeaturePkg/SpcrFeaturePkg.dec = | 6 ++ Features/Intel/OutOfBandManagement/SpcrFeaturePkg/SpcrFeaturePkg.dsc = | 18 ++++++ 7 files changed, 55 insertions(+), 69 deletions(-) diff --git a/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Include/Libr= ary/SpcrDeviceLib.h b/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Inc= lude/Library/SpcrDeviceLib.h index 947813815e..2e50270ee6 100644 --- a/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Include/Library/Spc= rDeviceLib.h +++ b/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Include/Library/Spc= rDeviceLib.h @@ -12,7 +12,7 @@ =20 /** 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. =20 @retval NULL Can not get device. @retval Others A serial port device path. diff --git a/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Include/Post= Memory.fdf b/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Include/Post= Memory.fdf new file mode 100644 index 0000000000..f963f567c2 --- /dev/null +++ b/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Include/PostMemory.= 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 f= eatures +# can be conditionally included in the flash image by enabling the respec= tive +# 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/PreM= emory.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/PreMemory.f= df @@ -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 f= eatures +# can be conditionally included in the flash image by enabling the respec= tive +# feature via its FeaturePCD. +# +# Copyright (C) 2022 Intel Corporation. +# +# SPDX-License-Identifier: BSD-2-Clause-Patent +## diff --git a/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Include/Spcr= Feature.dsc b/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Include/Spc= rFeature.dsc index c51e552df5..b06ddf4fe6 100644 --- a/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Include/SpcrFeature= .dsc +++ b/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/Include/SpcrFeature= .dsc @@ -25,40 +25,9 @@ !error "DXE_ARCH must be specified to build this feature!" !endif =20 -##########################################################################= ###### -# -# Library Class section - list of all Library Classes needed by this featu= re. -# -##########################################################################= ###### - -!include MdePkg/MdeLibs.dsc.inc - [LibraryClasses] - ####################################### - # Edk2 Packages - ####################################### - BaseLib|MdePkg/Library/BaseLib/BaseLib.inf - BaseMemoryLib|MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.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/UefiBoo= tServicesTableLib.inf - DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf - UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/U= efiRuntimeServicesTableLib.inf - - ####################################### - # SpcrFeaturePkg Packages - ####################################### SpcrDeviceLib|SpcrFeaturePkg/Library/SpcrDeviceLibNull/SpcrDeviceLibNull= .inf =20 -[LibraryClasses.common.DXE_DRIVER] - ####################################### - # Edk2 Packages - ####################################### - MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAll= ocationLib.inf - ##########################################################################= ###### # # Component section - list of all components that need built for this feat= ure. @@ -74,38 +43,7 @@ # ##########################################################################= ###### =20 -# -# Feature DXE Components -# - # @todo: Change below line to [Components.$(DXE_ARCH)] after https://bugzi= lla.tianocore.org/show_bug.cgi?id=3D2308 # 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 - #{ -# -# SpcrDeviceLib|SpcrFeaturePkg/Library/SpcrDeviceLibNull/SpcrDeviceLi= bNull.inf -# } - -##########################################################################= ######################### -# -# BuildOptions Section - Define the module specific tool chain flags that = should be used as -# the default flags for a module. These flags are a= ppended to any -# standard flags that are defined by the build proc= ess. They can be -# applied for any modules or only those modules wit= h the specific -# module style (EDK or EDKII) specified in [Compone= nts] section. -# -# For advanced features, it is recommended to enabl= e [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 se= rial port device. * SpcrDeviceLibNull =20 ## 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 seria= l 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. =20 ## SpcrDeviceLibNull @@ -37,19 +37,19 @@ Fill the serial port device info used for SPCR to ACPI = table. =20 ## Configuration There is not special configuration. -But the platform maybe implemente its own SpcrDeviceLib. +But the platform may implement its own SpcrDeviceLib. =20 ## Data Flows GetSpcrDevice() -> serial port device path -> get PCI info and serial port= info -> ACPI table. =20 ## Control Flows -GetSpcrDevice() in SpcrDeviceLib -> SpcrAcpiDxe. +GetSpcrDevice () in SpcrDeviceLib -> SpcrAcpiDxe. =20 ## Build Flows There is not special build flow. =20 ## Test Point Results -* Check the output ACPI table. +There are not test points implemented. =20 ## Functional Exit Criteria * Check the output ACPI table. diff --git a/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/SpcrFeatureP= kg.dec b/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/SpcrFeaturePkg.d= ec index 03776abf06..b084fad892 100644 --- a/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/SpcrFeaturePkg.dec +++ b/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/SpcrFeaturePkg.dec @@ -21,6 +21,12 @@ [Includes] Include =20 +[Guids] + gSpcrFeaturePkgTokenSpaceGuid =3D { 0xe978c988, 0xeeba, 0x4671, { 0xb8, = 0x0d, 0xcc, 0x8b, 0x89, 0xb5, 0xd1, 0xef }} + +[PcdsFeatureFlag] + gSpcrFeaturePkgTokenSpaceGuid.PcdSpcrFeatureEnable|FALSE|BOOLEAN|0x00000= 001 + [LibraryClasses] ## @libraryclass Provides an API for get SPCR device. # diff --git a/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/SpcrFeatureP= kg.dsc b/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/SpcrFeaturePkg.d= sc index 82d2d3ac73..2ee874a58e 100644 --- a/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/SpcrFeaturePkg.dsc +++ b/Features/Intel/OutOfBandManagement/SpcrFeaturePkg/SpcrFeaturePkg.dsc @@ -24,6 +24,24 @@ PEI_ARCH =3D IA32 DXE_ARCH =3D X64 =20 +[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. # --=20 2.27.0.windows.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#85606): https://edk2.groups.io/g/devel/message/85606 Mute This Topic: https://groups.io/mt/88365350/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-