From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by mx.groups.io with SMTP id smtpd.web09.3910.1642042258699111196 for ; Wed, 12 Jan 2022 18:50:58 -0800 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=QduCq1Qm; spf=pass (domain: intel.com, ip: 192.55.52.88, mailfrom: nathaniel.l.desimone@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1642042258; x=1673578258; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=K6hip3QogXPrnEnEfrdA2lYeoL+Z3no49zMVT+KIK1U=; b=QduCq1QmXqX3BETzrAZUnC/nvziJfQJbDPAXbWtP85aeqf7JObp2vA+U nOqoVvwhX+golx7daB56D9tS9DHzROhGDIJ5MXY0o28cuQy0cjiyEgKTL zgOjqHqS9PXe+KYJtlheEAYGF1uoVawkwDAab6XyIUITR2jdDgCOCfJov mm43zHTE96msK4mBAwkqHx6sNBcD1uCEk/Rd5KNRzg7Yy1XY/NKKHv8pJ XgMz5ik1pTDbMmRldgrnc26tbe3G/4IxXY391jqZQu+nkzeacW2nPDy1N ovyfgSeI4tuycvXDK5zN1I88qqW0OMVtiFS31uuQOU8O3cY6Nx4OnRV9o Q==; X-IronPort-AV: E=McAfee;i="6200,9189,10225"; a="268263165" X-IronPort-AV: E=Sophos;i="5.88,284,1635231600"; d="scan'208";a="268263165" Received: from orsmga003.jf.intel.com ([10.7.209.27]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Jan 2022 18:50:45 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.88,284,1635231600"; d="scan'208";a="473068030" Received: from fmsmsx606.amr.corp.intel.com ([10.18.126.86]) by orsmga003.jf.intel.com with ESMTP; 12 Jan 2022 18:50:44 -0800 Received: from fmsmsx611.amr.corp.intel.com (10.18.126.91) by fmsmsx606.amr.corp.intel.com (10.18.126.86) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.20; Wed, 12 Jan 2022 18:50:44 -0800 Received: from fmsmsx611.amr.corp.intel.com (10.18.126.91) by fmsmsx611.amr.corp.intel.com (10.18.126.91) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.20; Wed, 12 Jan 2022 18:50:43 -0800 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx611.amr.corp.intel.com (10.18.126.91) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.20 via Frontend Transport; Wed, 12 Jan 2022 18:50:43 -0800 Received: from NAM04-BN8-obe.outbound.protection.outlook.com (104.47.74.42) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2308.20; Wed, 12 Jan 2022 18:50:43 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=c+vZr1ldMmxjU3VjxzOA19W+Zu20KetO3AdE+KfjveyEdo0H98z2K7zETUqfno5XVdnhXhEy1+5fMcYU5qks1MKbe77bz1KBkaNl/aBxhxEB/uebZm0pBAAvMOF5IYsnxp9Z/GxB9nQXjMPcoxUOWo+e/QjDnyHT/xkLoe+nwlj/XCG8EyMQkBxe0N75zMFZvF0ysOX9uq3B0pUemFQEmgzGfRGdT7fyLkVRxQGYLxOejhnRJsZ3NldBkW/yz3ZA7Es0WS8vxsAI7r23RjJm1zgv2SAzmL0xywF8pR4Rtg4FSjV6SI2XQZdKfFVfFEQZ66hGxuVFkS9HSXqm3ZUzeA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=unSDtjEeh1H++46SVCRLrkmZEJv/PKCfkmFwLeJ1hRI=; b=eD7Jc9VyOL3RNBZGbB5Xg5Vu5GPtTykmBxX5cqag0GGwGf2+7fOnfApQuhvxmJQrSdyH+UfAscSd9yy2/TpF9z1d33YUhKp8yvbYjBdJPqxxPOSXA5SlBZdYAUGheLiAkFHzISbepG5tiQ1wWr3mEJj+QZtoz52MtOVOg8CuYlBWVqRE6JGqque5gOgQrVvCoIVR9dpq2mbPvlGk/jbolIJY0K8PC3FkQHrU+FAVvqcYyX/PSz5/GcaX/6cCUVigt3hri1C5sp8nIH41Et/LXou2Am7/ORLmdk8asbIIGfKN4SN8koniq00a5juMfAD+q2f31yoQQIP8yk3dFAJ0Gg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from MW4PR11MB5821.namprd11.prod.outlook.com (2603:10b6:303:184::5) by MW5PR11MB5764.namprd11.prod.outlook.com (2603:10b6:303:197::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4888.11; Thu, 13 Jan 2022 02:50:41 +0000 Received: from MW4PR11MB5821.namprd11.prod.outlook.com ([fe80::6920:39b9:e18c:9dc5]) by MW4PR11MB5821.namprd11.prod.outlook.com ([fe80::6920:39b9:e18c:9dc5%8]) with mapi id 15.20.4867.011; Thu, 13 Jan 2022 02:50:41 +0000 From: "Nate DeSimone" To: "devel@edk2.groups.io" , "Oram, Isaac W" CC: "Chaganty, Rangasai V" , "Gao, Liming" Subject: Re: [edk2-devel][edk2-platforms][PATCH V1 23/27] AdvancedFeaturePkg: Add missing features Thread-Topic: [edk2-devel][edk2-platforms][PATCH V1 23/27] AdvancedFeaturePkg: Add missing features Thread-Index: AQHYB1sl95iWBCW7nEqYtrKaEl1zoKxgQfrg Date: Thu, 13 Jan 2022 02:50:40 +0000 Message-ID: References: In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-reaction: no-action dlp-version: 11.6.200.16 dlp-product: dlpe-windows authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 90dfd077-dd72-4a53-3c1f-08d9d63f7c92 x-ms-traffictypediagnostic: MW5PR11MB5764:EE_ x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:8882; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: FImV68r8uzUdkJpoMaLG0myhp1IZT690rM/2lW2k37Ec42GZa2K4iFtz3sATkm0tW3BHQ5xOR+LbccxILsGRWGqKUaTI1TIMEmCQAycJy36kPmStsaGG6WdGz4mwzVp5/1PWHpcNtt96E+enjOpe4JdcXb7sumcbymGggeJ8aCpDAfKd1BAvOASZmSfZnRe7YOzIQ5si7o/W/ie+5Gj04V5lNXN7ZUx73UyFnQZcMUbQS56v/cuoY+VIbPhg2Rs1cV4K4qMbfrx98QWRH/+rwR/LQ2sZZLVfMKYiQoZXIIp5tNxchY9fqGJdpHyRVbTt3FtQpTG6ekQUOH91l/1GJtIgOVHwbstIUxGhEGWzerbjfLnTI+3Q2oeSIv/h8SqUqshm3Ncl+/9zu+Z2sMbDYdQf1P0gPnwaWasQRYhtiYjznMSUL5capJUxJjYC3y4WMk99ptDRP+Ks5eOMV2EUqtmNjF8E6PV598qToCtZUxkXltH69gk3HHr8RCbfGE2Keg/U2suZC4/vgA/KZbX6qeOdpn9GGhltR8mJcp/s2QrGI4R1uEwiidBQDEeBK4wBr4qJragZ9CW0UTz6snQsEUGLwQhVtMiVxFTqIXY4D9rdOuLWiwqZ/pkXi335j8ocM3PdvzaLU+kQ84ju83cay4XPnDzjJrywnRisCTdouGdTWS/SElO+lEX4QwIIyqmZ95o+MJx6XXY6mR5U0fnl4SKZJLpyyEDkcIqiq0DB8CKC+D4D6mpn2Se2S+kLPVNOBAQf8Lj3uQAQavjRCgZ/ku1wre+r2tOOhng32HvnINQ+qgEXgCIP0k1IIlNpGEeo7pGiPxVh+4xLfeA8ovY03/wzuzrsQpFEOquIaOAR+3c= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW4PR11MB5821.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(366004)(2906002)(71200400001)(9686003)(316002)(52536014)(26005)(6636002)(54906003)(33656002)(19627235002)(38100700002)(122000001)(38070700005)(110136005)(186003)(55016003)(7696005)(82960400001)(8676002)(508600001)(8936002)(83380400001)(30864003)(86362001)(5660300002)(76116006)(6506007)(66446008)(64756008)(4326008)(66556008)(53546011)(66476007)(966005)(66946007)(579004)(134885004);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?a+hrUqpuzZS3xUrxavnFwca+FIXtpqISQbfuwYi+9yrXRDRDcqEC18pjIP25?= =?us-ascii?Q?dwPFYeaBfXJKAYCFNzlpg7PBKnupzuHM0pO/zh9sNBW6we23Yy+ZqLEjl3Xd?= =?us-ascii?Q?UJrMzrPPkPn4XHFtvQqjiQtgkmubulPY2AaOFYYHE49xK5rp2rARuBEuEWDD?= =?us-ascii?Q?58w8NYcg7WI4+WYaFruGGO5mJGzuOBk90hHCw5pkDLAol5xXFtvOvW5gFPUP?= =?us-ascii?Q?vaChx7Q13S6FdydvBzK48D3Y6CeVkHc08E1nL1pLxy2wo/PSZsHU5njlAuKD?= =?us-ascii?Q?7wbW48sbeOeu0mEZ9DvGOCYBg+IdALQjzFe+IuRy/8razoC4vBH3OKs1fn2a?= =?us-ascii?Q?vYNsUC0QDjePZsLMTHJD7xIJSTEsvYtxUV+2dS4FQpQtZ0BTjk8m7IHfxPNI?= =?us-ascii?Q?op1642SfaYO9mFUH66QLJOn2IvNTObjbmGtGcvgzi+0s39d6RyC6B7uZS2pY?= =?us-ascii?Q?uM9qWfF+6b+9/ev1V1DZ6MFakPN5IzxyaKhsu+/jlyhPOaHC+VP4TOzYr7RD?= =?us-ascii?Q?eW7efsyrJhf/8IRrmn4C7+NXQkxNgnWSNB7oZ1UsAOOEpVDghTWzNUZjxBrw?= =?us-ascii?Q?b/39vuyrWWeghI+S9LVhsSmcyl1ac+djZocvOapLO5OqrSls/lEki3cLqpCa?= =?us-ascii?Q?wDdk+YwyQPuhgCcXfbyyWzX5C7jJH2j2bviw1PCUVjDXH2/mSfOo/N6L3E/0?= =?us-ascii?Q?xoCv6GcTFssgzQgSs6i4/rfEwA5ToHAHHD6F+xmWYGJTFfbrEoWyv+CXiFE1?= =?us-ascii?Q?F4u2dV4qxBSmECLVi3N284bKqAn1mTv79jVO30JwxM7so/758zlcdmhAGY+q?= =?us-ascii?Q?S2RqlCz3+RgsYiGMeMGkFnAgwvMx7ygsVgUBc2M6TvWekQ1+LnLX5WbCulR+?= =?us-ascii?Q?jICDpXPR0FflEF2+9rXYX8M5QYQFIecD98SDT061nj98AjvRO8FgagOxUxeb?= =?us-ascii?Q?sP/Khq4QihVmKEL7VfGhd88AwkKJ4nkmRVYWMPi1KCzz0o7kP1z26ltWyWGm?= =?us-ascii?Q?3spZ5EeX2cptb42oDeXLiMIoZ6GtBS/aFTTZv/2mShRG6beIwYwY0t3zbHQh?= =?us-ascii?Q?r+FakVSq2CV4v7DO1XqLZotMhfhi2S9O+kq2LGk0vRxo9W8KaOquvnxtPhLl?= =?us-ascii?Q?Yt8B+2PuyH4lGGXqD4VWzcfFA5mEQqi2rWi2fzxvvwEYhstQ6TNmcCVw/kCS?= =?us-ascii?Q?+jUnc3FIf6BxrswLT6rB4SVXymmJosDfq3U5fFFpvWLW5e4VL2PE4B7tOQHY?= =?us-ascii?Q?RfHytTyAflvoPsJrpj1oObYSdKDdiHo03SbYdWktrmSd4j3FNZBeiAAHcd/2?= =?us-ascii?Q?JygzWFS9SbTkBPJ1pFzV08MHiecF44CWvKeK1/VZAcOi0KM9cUkc9IL68DzS?= =?us-ascii?Q?q12ZGbkOslPdJgO6qHdhVs6NNe4kcaj1JN8OYoQ5oOa2iXyLr2VvXKVGq2tH?= =?us-ascii?Q?isMaVmL6KGrObMvmUOt1AS/06l3P0JpCEhM4ELxl8Wl26qe0vp5t+Gl1SFSo?= =?us-ascii?Q?BdPQofZw5WH+bVHZelk5sF7GsOotXA76JPtB4QxACBUFFpcArHH33/d3/Xth?= =?us-ascii?Q?vyc755XGkSqFZOpCQd7EHdGivxyi0A9ZCvN16HvN9ob7FIB48d+ta/nitFXX?= =?us-ascii?Q?xlJ3NkEpUK7ZWOpp0457HNwyc/Lbu9+iPbDAeL4f45AvVA2e3XY+e5jZL5p1?= =?us-ascii?Q?E1d6kA=3D=3D?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MW4PR11MB5821.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 90dfd077-dd72-4a53-3c1f-08d9d63f7c92 X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Jan 2022 02:50:40.9784 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: w6I4ekN4pi/1W7dOqtL9fAs/LRx14+GzU3OJnLggn4mWtPsZl2s3o6hdpirCV1URiEP5npPvfG4Xpof2tNjFPFQoJQOwkQ27r1Eh5HgpiKM= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW5PR11MB5764 Return-Path: nathaniel.l.desimone@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Reviewed-by: Nate DeSimone > -----Original Message----- > From: 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 ; Chaganty, Rangasai V > ; Gao, Liming > Subject: [edk2-devel][edk2-platforms][PATCH V1 23/27] > AdvancedFeaturePkg: Add missing features >=20 > The AdvancedFeaturePkg is supposed to include all features. > Add Beep Debug feature to include DSC and FDF. >=20 > Order features based on their domains. >=20 > Cc: Sai Chaganty > Cc: Liming Gao >=20 > Signed-off-by: Isaac Oram > --- > Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc | 66 > ++++++++++++++++---- > 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/Readme.md | 49 += +++++++++----- > 6 files changed, 219 insertions(+), 68 deletions(-) >=20 > diff --git a/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc > b/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc > index 0c7a29cc75..02636da916 100644 > --- a/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc > +++ b/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc > @@ -36,7 +36,6 @@ >=20 > !include AdvancedFeaturePkg/Include/AdvancedFeaturesPcd.dsc >=20 > - >=20 > ########################################################## > ###################### > # > # Advanced Feature Enable section - all advanced features are enabling f= or > the @@ -44,26 +43,71 @@ # > ########################################################## > ###################### > [PcdsFeatureFlag] > - gAcpiDebugFeaturePkgTokenSpaceGuid.PcdAcpiDebugFeatureEnable > |TRUE > - gIpmiFeaturePkgTokenSpaceGuid.PcdIpmiFeatureEnable = |TRUE > - gNetworkFeaturePkgTokenSpaceGuid.PcdNetworkFeatureEnable > |TRUE > - gS3FeaturePkgTokenSpaceGuid.PcdS3FeatureEnable = |TRUE > - gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosFeatureEnable > |TRUE > - gUsb3DebugFeaturePkgTokenSpaceGuid.PcdUsb3DebugFeatureEnable > |TRUE > - > gUserAuthFeaturePkgTokenSpaceGuid.PcdUserAuthenticationFeatureEnabl > e |TRUE > - gLogoFeaturePkgTokenSpaceGuid.PcdLogoFeatureEnable = |TRUE > - gLogoFeaturePkgTokenSpaceGuid.PcdJpgEnable = |FALSE > + # > + # Debugging features > + # > + gAcpiDebugFeaturePkgTokenSpaceGuid.PcdAcpiDebugFeatureEnable > |TRUE > + gBeepDebugFeaturePkgTokenSpaceGuid.PcdBeepDebugFeatureEnable > |TRUE > + > gPostCodeDebugFeaturePkgTokenSpaceGuid.PcdPostCodeDebugFeatureEn > able |TRUE > + gUsb3DebugFeaturePkgTokenSpaceGuid.PcdUsb3DebugFeatureEnable > |TRUE > + > + # > + # Network features > + # > + gNetworkFeaturePkgTokenSpaceGuid.PcdNetworkFeatureEnable > |TRUE > + > + # > + # OutOfBandManagement features > + # > + gIpmiFeaturePkgTokenSpaceGuid.PcdIpmiFeatureEnable > |TRUE > + gSpcrFeaturePkgTokenSpaceGuid.PcdSpcrFeatureEnable > |TRUE > + > + # > + # PowerManagement features > + # > + gS3FeaturePkgTokenSpaceGuid.PcdS3FeatureEnable = |TRUE > + > + # > + # SystemInformation features > + # > + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosFeatureEnable > |TRUE > + > + # > + # UserInterface features > + # > + gLogoFeaturePkgTokenSpaceGuid.PcdLogoFeatureEnable > |TRUE > + > gUserAuthFeaturePkgTokenSpaceGuid.PcdUserAuthenticationFeatureEnabl > e |TRUE > + > + > gVirtualKeyboardFeaturePkgTokenSpaceGuid.PcdVirtualKeyboardFeatureEn > ab > + le |TRUE > + > +# > +# PCD that are required to be set by the build target should be > +configured here for test purposes # These settings are only for the > purposes of buildings, boards should follow instructions in Readme files. > +# > + > +[PcdsFixedAtBuild] > + > gUsb3DebugFeaturePkgTokenSpaceGuid.PcdUsb3DebugPortLibInstance|1 > + > +[PcdsFeatureFlag] > + # > + # MinPlatform common include currently required PCD > + # > gMinPlatformPkgTokenSpaceGuid.PcdSmiHandlerProfileEnable > |FALSE > gMinPlatformPkgTokenSpaceGuid.PcdUefiSecureBootEnable > |FALSE > gMinPlatformPkgTokenSpaceGuid.PcdPerformanceEnable > |FALSE >=20 > # > -# Include common library > +# Include common libraries > # > !include MinPlatformPkg/Include/Dsc/CoreCommonLib.dsc > !include MinPlatformPkg/Include/Dsc/CorePeiLib.dsc > !include MinPlatformPkg/Include/Dsc/CoreDxeLib.dsc >=20 > +# > +# Libraries required to be specified by the build target # > +[LibraryClasses.Common] > + > +PlatformHookLib|MdeModulePkg/Library/BasePlatformHookLibNull/BasePl > atfo > +rmHookLibNull.inf # Required by BeepDebugFeature > + > # > # This package builds all advanced features. > # > diff --git > a/Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeatures.dsc > b/Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeatures.dsc > index 874b8ce7db..2b36938df6 100644 > --- a/Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeatures.dsc > +++ b/Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeatures.dsc > @@ -11,51 +11,67 @@ > ## >=20 > # > -# Debug Advanced Features > +# Debugging features > # > !if gAcpiDebugFeaturePkgTokenSpaceGuid.PcdAcpiDebugFeatureEnable =3D=3D > TRUE > !include AcpiDebugFeaturePkg/Include/AcpiDebugFeature.dsc > !endif >=20 > +!if gBeepDebugFeaturePkgTokenSpaceGuid.PcdBeepDebugFeatureEnable > =3D=3D > +TRUE > + !include BeepDebugFeaturePkg/Include/BeepDebugFeature.dsc > +!endif > + > +!if > +gPostCodeDebugFeaturePkgTokenSpaceGuid.PcdPostCodeDebugFeatureE > nable =3D=3D > +TRUE > + !include PostCodeDebugFeaturePkg/Include/PostCodeDebugFeature.dsc > +!endif > + > !if gUsb3DebugFeaturePkgTokenSpaceGuid.PcdUsb3DebugFeatureEnable > =3D=3D TRUE > !include Usb3DebugFeaturePkg/Include/Usb3DebugFeature.dsc > !endif >=20 > # > -# Network Advanced Features > +# Network features > # > !if gNetworkFeaturePkgTokenSpaceGuid.PcdNetworkFeatureEnable =3D=3D > TRUE > !include NetworkFeaturePkg/Include/NetworkFeature.dsc > !endif >=20 > # > -# Out-of-Band Management Advanced Features > +# OutOfBandManagement features > # > !if gIpmiFeaturePkgTokenSpaceGuid.PcdIpmiFeatureEnable =3D=3D TRUE > !include IpmiFeaturePkg/Include/IpmiFeature.dsc > !endif >=20 > +!if gSpcrFeaturePkgTokenSpaceGuid.PcdSpcrFeatureEnable =3D=3D TRUE > + !include SpcrFeaturePkg/Include/SpcrFeature.dsc > +!endif > + > # > -# Power Management Advanced Features > +# PowerManagement features > # > !if gS3FeaturePkgTokenSpaceGuid.PcdS3FeatureEnable =3D=3D TRUE > !include S3FeaturePkg/Include/S3Feature.dsc > !endif >=20 > # > -# System Information Advanced Features > +# SystemInformation features > # > !if gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosFeatureEnable =3D=3D TRUE > !include SmbiosFeaturePkg/Include/SmbiosFeature.dsc > !endif >=20 > # > -# User Interface Advanced Features > +# UserInterface features > # > -!if > gUserAuthFeaturePkgTokenSpaceGuid.PcdUserAuthenticationFeatureEnabl > e =3D=3D TRUE > - !include UserAuthFeaturePkg/Include/UserAuthFeature.dsc > -!endif > - > !if gLogoFeaturePkgTokenSpaceGuid.PcdLogoFeatureEnable =3D=3D TRUE > !include LogoFeaturePkg/Include/LogoFeature.dsc > !endif > + > +!if > +gUserAuthFeaturePkgTokenSpaceGuid.PcdUserAuthenticationFeatureEna > ble =3D=3D > +TRUE > + !include UserAuthFeaturePkg/Include/UserAuthFeature.dsc > +!endif > + > +!if > +gVirtualKeyboardFeaturePkgTokenSpaceGuid.PcdVirtualKeyboardFeatureE > nabl > +e =3D=3D TRUE > + !include VirtualKeyboardFeaturePkg/Include/VirtualKeyboardFeature.dsc > +!endif > diff --git > a/Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeaturesPcd.dsc > b/Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeaturesPcd.dsc > index ad248de800..e214175eda 100644 > --- > a/Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeaturesPcd.dsc > +++ > b/Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeaturesPcd.dsc > @@ -16,28 +16,70 @@ > # > [Packages] > MdePkg/MdePkg.dec > + > + # > + # Debugging features > + # > AcpiDebugFeaturePkg/AcpiDebugFeaturePkg.dec > + BeepDebugFeaturePkg/BeepDebugFeaturePkg.dec > + PostCodeDebugFeaturePkg/PostCodeDebugFeaturePkg.dec > Usb3DebugFeaturePkg/Usb3DebugFeaturePkg.dec > + > + # > + # Networking features > + # > NetworkFeaturePkg/NetworkFeaturePkg.dec > + > + # > + # OutOfBandManagement features > + # > IpmiFeaturePkg/IpmiFeaturePkg.dec > + SpcrFeaturePkg/SpcrFeaturePkg.dec > + > + # > + # PowerManagement features > + # > S3FeaturePkg/S3FeaturePkg.dec > + > + # > + # SystemInformation features > + # > SmbiosFeaturePkg/SmbiosFeaturePkg.dec > - UserAuthFeaturePkg/UserAuthFeaturePkg.dec > + > + # > + # UserInterface features > + # > LogoFeaturePkg/LogoFeaturePkg.dec > - BeepDebugFeaturePkg/BeepDebugFeaturePkg.dec > - PostCodeDebugFeaturePkg/PostCodeDebugFeaturePkg.dec > + UserAuthFeaturePkg/UserAuthFeaturePkg.dec > + VirtualKeyboardFeaturePkg/VirtualKeyboardFeaturePkg.dec >=20 > # > # The section below sets all PCDs to FALSE in this DSC file so the featu= re is > not enabled by default. > # Board can set PCDs to TRUE in its DSC file to enable a subset of advan= ced > features # [PcdsFeatureFlag] > - gAcpiDebugFeaturePkgTokenSpaceGuid.PcdAcpiDebugFeatureEnable > |FALSE > - gIpmiFeaturePkgTokenSpaceGuid.PcdIpmiFeatureEnable = |FALSE > - gNetworkFeaturePkgTokenSpaceGuid.PcdNetworkFeatureEnable > |FALSE > - gS3FeaturePkgTokenSpaceGuid.PcdS3FeatureEnable = |FALSE > - gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosFeatureEnable > |FALSE > - gUsb3DebugFeaturePkgTokenSpaceGuid.PcdUsb3DebugFeatureEnable > |FALSE > - > gUserAuthFeaturePkgTokenSpaceGuid.PcdUserAuthenticationFeatureEnabl > e |FALSE > - gLogoFeaturePkgTokenSpaceGuid.PcdLogoFeatureEnable > |FALSE > + gAcpiDebugFeaturePkgTokenSpaceGuid.PcdAcpiDebugFeatureEnable > |FALSE > + gBeepDebugFeaturePkgTokenSpaceGuid.PcdBeepDebugFeatureEnable > |FALSE > + > gPostCodeDebugFeaturePkgTokenSpaceGuid.PcdPostCodeDebugFeatureEn > able |FALSE > + gUsb3DebugFeaturePkgTokenSpaceGuid.PcdUsb3DebugFeatureEnable > |FALSE > + > + gNetworkFeaturePkgTokenSpaceGuid.PcdNetworkFeatureEnable > |FALSE > + > + gIpmiFeaturePkgTokenSpaceGuid.PcdIpmiFeatureEnable > |FALSE > + gSpcrFeaturePkgTokenSpaceGuid.PcdSpcrFeatureEnable > |FALSE > + > + gS3FeaturePkgTokenSpaceGuid.PcdS3FeatureEnable = |FALSE > + > + gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosFeatureEnable > |FALSE > + > + gLogoFeaturePkgTokenSpaceGuid.PcdLogoFeatureEnable > |FALSE > + > gUserAuthFeaturePkgTokenSpaceGuid.PcdUserAuthenticationFeatureEnabl > e |FALSE > + > + > gVirtualKeyboardFeaturePkgTokenSpaceGuid.PcdVirtualKeyboardFeatureEn > ab > + le |FALSE > + > +# > +# There seems to be some build parsing odd behavior that requires this > +PCD to be specified even though # the *.fdf that consumes it is dependen= t > on the feature flag. > +# This section is to ensure that boards have these PCD instantiated. > +# > +[PcdsFeatureFlag] > gLogoFeaturePkgTokenSpaceGuid.PcdJpgEnable = |FALSE > diff --git a/Features/Intel/AdvancedFeaturePkg/Include/PostMemory.fdf > b/Features/Intel/AdvancedFeaturePkg/Include/PostMemory.fdf > index e710fe7f01..99089f9a7b 100644 > --- a/Features/Intel/AdvancedFeaturePkg/Include/PostMemory.fdf > +++ b/Features/Intel/AdvancedFeaturePkg/Include/PostMemory.fdf > @@ -12,51 +12,67 @@ > ## >=20 > # > -# Debug Advanced Features > +# Debugging features > # > !if gAcpiDebugFeaturePkgTokenSpaceGuid.PcdAcpiDebugFeatureEnable =3D=3D > TRUE > !include AcpiDebugFeaturePkg/Include/PostMemory.fdf > !endif >=20 > +!if gBeepDebugFeaturePkgTokenSpaceGuid.PcdBeepDebugFeatureEnable > =3D=3D > +TRUE > + !include BeepDebugFeaturePkg/Include/PostMemory.fdf > +!endif > + > +!if > +gPostCodeDebugFeaturePkgTokenSpaceGuid.PcdPostCodeDebugFeatureE > nable =3D=3D > +TRUE > + !include PostCodeDebugFeaturePkg/Include/PostMemory.fdf > +!endif > + > !if gUsb3DebugFeaturePkgTokenSpaceGuid.PcdUsb3DebugFeatureEnable > =3D=3D TRUE > !include Usb3DebugFeaturePkg/Include/PostMemory.fdf > !endif >=20 > # > -# Network Advanced Features > +# Network features > # > !if gNetworkFeaturePkgTokenSpaceGuid.PcdNetworkFeatureEnable =3D=3D > TRUE > !include NetworkFeaturePkg/Include/PostMemory.fdf > !endif >=20 > # > -# Out-of-Band Management Advanced Features > +# OutOfBandManagement features > # > !if gIpmiFeaturePkgTokenSpaceGuid.PcdIpmiFeatureEnable =3D=3D TRUE > !include IpmiFeaturePkg/Include/PostMemory.fdf > !endif >=20 > +!if gSpcrFeaturePkgTokenSpaceGuid.PcdSpcrFeatureEnable =3D=3D TRUE > + !include SpcrFeaturePkg/Include/PostMemory.fdf > +!endif > + > # > -# Power Management Advanced Features > +# PowerManagement features > # > !if gS3FeaturePkgTokenSpaceGuid.PcdS3FeatureEnable =3D=3D TRUE > !include S3FeaturePkg/Include/PostMemory.fdf > !endif >=20 > # > -# System Information Advanced Features > +# SystemInformation features > # > !if gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosFeatureEnable =3D=3D TRUE > !include SmbiosFeaturePkg/Include/PostMemory.fdf > !endif >=20 > # > -# User Interface Advanced Features > +# UserInterface features > # > -!if > gUserAuthFeaturePkgTokenSpaceGuid.PcdUserAuthenticationFeatureEnabl > e =3D=3D TRUE > - !include UserAuthFeaturePkg/Include/PostMemory.fdf > -!endif > - > !if gLogoFeaturePkgTokenSpaceGuid.PcdLogoFeatureEnable =3D=3D TRUE > !include LogoFeaturePkg/Include/PostMemory.fdf > !endif > + > +!if > +gUserAuthFeaturePkgTokenSpaceGuid.PcdUserAuthenticationFeatureEna > ble =3D=3D > +TRUE > + !include UserAuthFeaturePkg/Include/PostMemory.fdf > +!endif > + > +!if > +gVirtualKeyboardFeaturePkgTokenSpaceGuid.PcdVirtualKeyboardFeatureE > nabl > +e =3D=3D TRUE > + !include VirtualKeyboardFeaturePkg/Include/PostMemory.fdf > +!endif > diff --git a/Features/Intel/AdvancedFeaturePkg/Include/PreMemory.fdf > b/Features/Intel/AdvancedFeaturePkg/Include/PreMemory.fdf > index 177aafc1ec..1db258446a 100644 > --- a/Features/Intel/AdvancedFeaturePkg/Include/PreMemory.fdf > +++ b/Features/Intel/AdvancedFeaturePkg/Include/PreMemory.fdf > @@ -12,51 +12,67 @@ > ## >=20 > # > -# Debug Advanced Features > +# Debugging features > # > !if gAcpiDebugFeaturePkgTokenSpaceGuid.PcdAcpiDebugFeatureEnable =3D=3D > TRUE > !include AcpiDebugFeaturePkg/Include/PreMemory.fdf > !endif >=20 > +!if gBeepDebugFeaturePkgTokenSpaceGuid.PcdBeepDebugFeatureEnable > =3D=3D > +TRUE > + !include BeepDebugFeaturePkg/Include/PreMemory.fdf > +!endif > + > +!if > +gPostCodeDebugFeaturePkgTokenSpaceGuid.PcdPostCodeDebugFeatureE > nable =3D=3D > +TRUE > + !include PostCodeDebugFeaturePkg/Include/PreMemory.fdf > +!endif > + > !if gUsb3DebugFeaturePkgTokenSpaceGuid.PcdUsb3DebugFeatureEnable > =3D=3D TRUE > !include Usb3DebugFeaturePkg/Include/PreMemory.fdf > !endif >=20 > # > -# Network Advanced Features > +# Network features > # > !if gNetworkFeaturePkgTokenSpaceGuid.PcdNetworkFeatureEnable =3D=3D > TRUE > !include NetworkFeaturePkg/Include/PreMemory.fdf > !endif >=20 > # > -# Out-of-Band Management Advanced Features > +# OutOfBandManagement features > # > !if gIpmiFeaturePkgTokenSpaceGuid.PcdIpmiFeatureEnable =3D=3D TRUE > !include IpmiFeaturePkg/Include/PreMemory.fdf > !endif >=20 > +!if gSpcrFeaturePkgTokenSpaceGuid.PcdSpcrFeatureEnable =3D=3D TRUE > + !include SpcrFeaturePkg/Include/PreMemory.fdf > +!endif > + > # > -# Power Management Advanced Features > +# PowerManagement features > # > !if gS3FeaturePkgTokenSpaceGuid.PcdS3FeatureEnable =3D=3D TRUE > !include S3FeaturePkg/Include/PreMemory.fdf > !endif >=20 > # > -# System Information Advanced Features > +# SystemInformation features > # > !if gSmbiosFeaturePkgTokenSpaceGuid.PcdSmbiosFeatureEnable =3D=3D TRUE > !include SmbiosFeaturePkg/Include/PreMemory.fdf > !endif >=20 > # > -# User Interface Advanced Features > +# UserInterface features > # > -!if > gUserAuthFeaturePkgTokenSpaceGuid.PcdUserAuthenticationFeatureEnabl > e =3D=3D TRUE > - !include UserAuthFeaturePkg/Include/PreMemory.fdf > -!endif > - > !if gLogoFeaturePkgTokenSpaceGuid.PcdLogoFeatureEnable =3D=3D TRUE > !include LogoFeaturePkg/Include/PreMemory.fdf > !endif > + > +!if > +gUserAuthFeaturePkgTokenSpaceGuid.PcdUserAuthenticationFeatureEna > ble =3D=3D > +TRUE > + !include UserAuthFeaturePkg/Include/PreMemory.fdf > +!endif > + > +!if > +gVirtualKeyboardFeaturePkgTokenSpaceGuid.PcdVirtualKeyboardFeatureE > nabl > +e =3D=3D TRUE > + !include VirtualKeyboardFeaturePkg/Include/PreMemory.fdf > +!endif > diff --git a/Features/Intel/Readme.md b/Features/Intel/Readme.md index > 1a03a4c0d2..cf5ef7b260 100644 > --- a/Features/Intel/Readme.md > +++ b/Features/Intel/Readme.md > @@ -195,32 +195,47 @@ At a minimum, an advanced feature must consist of > the following elements: > 6. Add the source code for the advanced feature. > * If the feature is large it is recommended to add libraries in one = patch and > then modules in a following patch. >=20 > -7. Update the feature DSC file. This file is in > `XxxFeaturePkg/Include/XxxFeature.dsc`. > +7. Update the feature DSC include file. This file is in > `XxxFeaturePkg/Include/XxxFeature.dsc`. > * In most cases, `XxxFeaturePkg/XxxFeaturePkg.dsc` should just `!inc= lude > XxxFeaturePkg/Include/XxxFeature.dsc`. > + * This file should not duplicate core content from > `MinPlatformPkg/Include/Dsc` except where a change is required by > + the feature. >=20 > -8. Update the feature FDF files. These files are > `XxxFeaturePkg/Include/PreMemory.fdf` and > +8. Update the feature FDF include files. These files are > +`XxxFeaturePkg/Include/PreMemory.fdf` and > `XxxFeaturePkg/Include/PostMemory.fdf`. > * Each file should contain the feature pre-memory modules and post- > memory modules respectively. >=20 > 9. Build the advanced feature package to ensure the build is successful: > - > From the workspace root: > - 1. cd edk2-platforms/edk2 > - 2. Execute edksetup.bat (Windows) or edksetup.sh (Linux). > - 3. Verify the "WORKSPACE" environment variable is set to the edk2 > directory in your workspace. > - 4. Set the "PACKAGES_PATH" environment variable to include the edk2- > platforms/Platform/Intel, edk2-platforms/Silicon/Intel, > - and edk2-platforms/Features/Intel directories. > + 1. Verify the "WORKSPACE" environment variable is set to the parent = of > edk2 and edk2-platforms directory in your > + workspace. > + 2. Set the "PACKAGES_PATH" environment variable to include the edk2, > edk2-platforms/Platform/Intel, > + edk2-platforms/Silicon/Intel, and edk2-platforms/Features/Intel > directories. > * Windows example: > - * set PACKAGES_PATH=3Dc:\Edk2Workspace\edk2- > platforms\Platform\Intel; > - c:\Edk2Workspace\edk2-platforms\Silicon\Int= el; > - c:\Edk2Workspace\edk2-platforms\Features\In= tel > + * set PACKAGES_PATH=3D%WORKSPACE%\edk2; > + %WORKSPACE%\edk2-platforms\Platform\Intel; > + %WORKSPACE%\edk2-platforms\Silicon\Intel; > + %WORKSPACE%\edk2-platforms\Features\Intel; > + %WORKSPACE%\edk2-platforms\Features\Intel\D= ebugging; > + %WORKSPACE%\edk2-platforms\Features\Intel\N= etwork; > + %WORKSPACE%\edk2- > platforms\Features\Intel\OutOfBandManagement; > + %WORKSPACE%\edk2- > platforms\Features\Intel\PowerManagement; > + %WORKSPACE%\edk2- > platforms\Features\Intel\SystemInformation; > + > + %WORKSPACE%\edk2-platforms\Features\Intel\UserInterface > * Linux example: > - * export PACKAGES_PATH=3D~/Edk2Workspace/edk2- > platforms/Platform/Intel: > + * export PACKAGES_PATH=3D~Edk2Workspace/edk2: > + ~/Edk2Workspace/edk2-platforms/Platform/= Intel: > ~/Edk2Workspace/edk2-platforms/Silicon/I= ntel: > - ~/Edk2Workspace/edk2-platforms/Features/= Intel > + ~/Edk2Workspace/edk2-platforms/Features/= Intel: > + ~/Edk2Workspace/edk2- > platforms/Features/Intel/Debugging: > + ~/Edk2Workspace/edk2- > platforms/Features/Intel/Network: > + ~/Edk2Workspace/edk2- > platforms/Features/Intel/OutOfBandManagement: > + ~/Edk2Workspace/edk2- > platforms/Features/Intel/PowerManagement: > + ~/Edk2Workspace/edk2- > platforms/Features/Intel/SystemInformation: > + ~/Edk2Workspace/edk2- > platforms/Features/Intel/UserInterface > + 3. cd edk2 > + 4. Execute edksetup.bat (Windows) or edksetup.sh (Linux). > 5. cd edk2-platforms/Features/Intel > - 6.
build -p
> FeatureDomainDirectory/XxxFeaturePkg/XxxFeaturePkg.dsc -a IA32 -a
> X64
> - > + 6.
build -a IA32 -a X64 -p
> + FeatureDomainDirectory/XxxFeaturePkg/XxxFeaturePkg.dsc
> *Note:* -a specifies the architecture. Typically IA32 and X64 mod= ules are > built for 32-bit PEI and 64-bit > DXE though build for your specific requirements. >=20 > @@ -228,11 +243,13 @@ At a minimum, an advanced feature must consist of > the following elements: > 1. Add `XxxFeaturePkg/Include/XxxFeature.dsc` to > `AdvancedFeatures.dsc` > 2. Add `XxxFeaturePkg/Include/PreMemory.fdf` to > `AdvancedFeaturePkg/Include/PreMemory.fdf` > 3. Add `XxxFeaturePkg/Include/PostMemory.fdf` to > `AdvancedFeaturePkg/Include/PostMemory.fdf` > + 4. Add the `PcdFeatureEnable` to `AdvancedFeaturesPcd.dsc` set to FA= LSE > + 5. Add the `PcdFeatureEnable` to `AdvancedFeaturePkg.dsc` set to > + TRUE >=20 > 11. Build `AdvancedFeaturePkg` to ensure the build is successful. > 1. Follow the steps in step #9 but change the build command to: >=20 > -
build -p AdvancedFeaturePkg/AdvancedFeaturePkg.dsc -a IA32 -a
> X64
> +
build  -a IA32 -a X64 -p
> + AdvancedFeaturePkg/AdvancedFeaturePkg.dsc
>=20 > 12. Before sending your patch series, ensure the `Readme.md` file in > `XxxFeaturePkg` is completed so others can use it > during the feature review. > -- > 2.27.0.windows.1 >=20 >=20 >=20 >=20 >=20