From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by mx.groups.io with SMTP id smtpd.web09.20005.1654813659475923378 for ; Thu, 09 Jun 2022 15:27:39 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=bJh8xm3P; spf=pass (domain: intel.com, ip: 192.55.52.120, 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=1654813659; x=1686349659; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=4cEtxwhYdp25SPExlCpeAjeqsQgXvToK12ok49jWJEA=; b=bJh8xm3PM7iKfRDihYEfheaTCvcQLI+DRZcgwaZAi4X0g7gNzl/OlBQG Ha9eBwIp7MGMLvXtbIkEN8cTcXl7Q4MhbmduwsD8zwkNreItoCQqAEs4R wZ8nhMD+54oSm7xEguvSZ6d4PT/5/c/o0t/sYEjSyw+ikab/USCb8RQsg 1cpZ5flaW7dn5CWkV25axG+DYGv7PDmxje2KzuWFsxSKj5HDu9A3fNrv2 Char1590bYjc964ocwbPatept4AIURd/5T/ai4C2ZoqFe2g5DEgAfhN9k XShRjaLO5/Iq+wuzBcuB6x3Z02WbKWo2XwoW4HZYP7ieaED3T35EzDtBn w==; X-IronPort-AV: E=McAfee;i="6400,9594,10373"; a="276211127" X-IronPort-AV: E=Sophos;i="5.91,288,1647327600"; d="scan'208";a="276211127" Received: from orsmga007.jf.intel.com ([10.7.209.58]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Jun 2022 15:27:38 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.91,288,1647327600"; d="scan'208";a="580787993" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by orsmga007.jf.intel.com with ESMTP; 09 Jun 2022 15:27:38 -0700 Received: from fmsmsx605.amr.corp.intel.com (10.18.126.85) by fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.27; Thu, 9 Jun 2022 15:27:37 -0700 Received: from fmsedg602.ED.cps.intel.com (10.1.192.136) by fmsmsx605.amr.corp.intel.com (10.18.126.85) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.27 via Frontend Transport; Thu, 9 Jun 2022 15:27:37 -0700 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (104.47.66.46) by edgegateway.intel.com (192.55.55.71) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2308.27; Thu, 9 Jun 2022 15:27:37 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=GF1N4FWgfIS0I9kZi8sd13Kvy9igZR3EN6ti20X98P/Svt9usPiyhDfyR1YXDBdF5mUb90M0sHpfwx8CM44oYUHJKDwY/RwHCvmNcXu+nQTWsgYHp0oG4LKOZQMDpNo04/iUsJxu5vU67VC8Ptf9K87vsBnZON8Q6ynHUZ3iBTXZpRf5QRpH7ixauMuIaagY5OLmEOMJoUZL0Rb21Az5LcFzIhsfzlYQ0QGV28efzg7QFsWw6g+Hvt5mGejI+XGT9eZPE0jpf3iXX63IyMAnZypD49+XEV1XGOwWONs0VfS1hSo/g/bG3VrBZWVSGD84/W5eZEWpupVf0pfbYj2Yuw== 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=rnDC+0Cac0BYcEykcdHamV6ixyc2KXHWOyq6yu5OfMY=; b=gR084Tum2ij7mMCGcsga7sWj8iwW9Bsw/FrCW70CBRfoFNQv0gQlkJJhMa4IGfrqnGtjkVsJZIBE9IBDvmJLYA69feQV/jF/5KUiBzG2p1ARoltWuYjuGGTwC6ymD5iEnwb3p1oouv8XhEkXh+UhrRtb0c0AsomQs/Nbtp+0GqmvJV+M53r3vNxn1OOz7Ley2JI8KvPn1Zm50wfWiHFJfvFgOMYHxNgs9OtRKEPJxRJ8McQmwHZ4jvHmV0m6HRr8y9bGdP+IjI6Uc1sVbvN+MKJFcwpvG3CjrDTFYNRtPt4y0NEJOw1nVbP6VFcs6UmkTkzWTNQBQ23sFZaF9ydoyQ== 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 SN6PR11MB2831.namprd11.prod.outlook.com (2603:10b6:805:56::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5314.13; Thu, 9 Jun 2022 22:27:34 +0000 Received: from MW4PR11MB5821.namprd11.prod.outlook.com ([fe80::190c:c119:21b7:7589]) by MW4PR11MB5821.namprd11.prod.outlook.com ([fe80::190c:c119:21b7:7589%5]) with mapi id 15.20.5293.019; Thu, 9 Jun 2022 22:27:34 +0000 From: "Nate DeSimone" To: "devel@edk2.groups.io" , "Desimone, Nathaniel L" CC: "Sinha, Ankit" , "Chiu, Chasel" , "Gao, Liming" , "Dong, Eric" , "Kubacki, Michael" Subject: Re: [edk2-devel] [PATCH V2 1/1] MinPlatformPkg: Add PCDs to update FADT entries from board package Thread-Topic: [edk2-devel] [PATCH V2 1/1] MinPlatformPkg: Add PCDs to update FADT entries from board package Thread-Index: AQHYesWQt4+0GUAcA0uGY8+h1qE7tK1HqphQ Date: Thu, 9 Jun 2022 22:27:34 +0000 Message-ID: References: <16F67A1A07BB8E8C.19661@groups.io> In-Reply-To: <16F67A1A07BB8E8C.19661@groups.io> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: 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: 0592b69a-3c96-44f4-2e03-08da4a674042 x-ms-traffictypediagnostic: SN6PR11MB2831:EE_ x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-microsoft-antispam-prvs: x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: ub7P/oz6EzvEwAAvXwagB6Ue5Oe4+7CEuuFw4gjp1vi9O7sLLctoYXyNf8ajj0BXZdg1UjxfxiYkykf16F8v42X3W/XLLMtgH6r2LLvChY83c7L0IbF4Pgw238Scjja4yjzc9DTuHjO8SJLj5E0qZwp0hW8rKQqWFrqFyY5c9Wc47mbApqScEtl4A1wy3dZxwSdHxYctA+w8D8/C4iqfUmp/33D9VMyekyYomXO/1sx4zxycmujlZkF4wRIiIETKpC58OvdJ/HX+YYWJYZvLfdqNGNye7Fd2DaxaGE/BCvPv7Mok83LNCilCF0olXdoVP92f2Fzm4kk3aIWVXcRaFPqNYiPhy5hNdD1kCCjze5Sn508xnHSESl3vrpjcTn1dlZknT0pt+qSIm2PDkf3WhDABvBY05iDtVIEum/2XVEfL589bgwXhRSqpUCWfeBJ9zH2cBCysLMh9C3v7oSBEI76PRbZ5kPzqcea4ZKQYBqCRpUbbUReFil2pUSPDKZb5CBwC9eDMwmWlZ0X1oklm3wSVk26E5yc7M2apycQDnm2EU29HgvrM3cv8dX68uNdivisOLZ8I+xyyI1p6ubtmGGoOFBAkIU0TF3svTsHfBd7ML3fpSqdv+I/oEkCL005Vr9WjS3otjFd0GbiU8Q/qBGPFz0nIRWr+PUiPT2xCYoT6AwSZyT3Jh327ZJ5FBmsxB5S6+keQh4pGop/t5OY3laXZ7SJD0OTzsAUQa+LP3NR6Ts7EnmlpBGd2zv3boclp5nUWhqgYw8ZWv1CYF/WTuZPNw7SuT9DIIrfOZAx8dFbjNpglAD/aiFabAd60+1cUYz4ozqvxBr9sYeYYG4TZUg== 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:(13230001)(366004)(2906002)(38070700005)(6506007)(7696005)(53546011)(186003)(83380400001)(316002)(110136005)(19627235002)(54906003)(38100700002)(122000001)(9686003)(82960400001)(26005)(66446008)(33656002)(4326008)(76116006)(30864003)(86362001)(966005)(52536014)(71200400001)(15650500001)(8676002)(508600001)(5660300002)(8936002)(55016003)(66946007)(66476007)(66556008)(64756008);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?XuH0lXxm/Gf9MSjfbLJ6r2d7aAjcy+17Dq/2oBVfJv9RmCAeUVz9ayaUtEbJ?= =?us-ascii?Q?Ettcxs8Am5cZo936zlGGrZxOYhkFOKQJabSH0wMFhZjTgR9vK+GJmYCp9Txj?= =?us-ascii?Q?sqvEEnx2YrbVuzzqmadIeJUfk0p4TA8tYeJfVsHVBC46NKmfaw9aYi8bV5dL?= =?us-ascii?Q?+akvfuZPJ4BKuP8Q2XzcnT5C/f8/KWk39Kc71nPCiD5R50QgTSN2qDa89LNt?= =?us-ascii?Q?ecXcJL3ZaX1NiQEIH8NXlgCXy6cWakrqC7kfEcjzxHbAWcf7oQPb9jX/07AH?= =?us-ascii?Q?L7Njw+FWzM7GdVDv6JFQKfhpMtSY+GefdMo5bIM12Oc2kyAKsJ3ful5BkgOw?= =?us-ascii?Q?5qjK7ztlHfkvXolhQEAtnwNOV1YQaSTBLTJI6XKYqS1ZvsJq1cCu6c2vVHGC?= =?us-ascii?Q?0AajMB9rLEpIdeWIA1hrVo5y+ah8KP0UvaoM+aA1KfsYXe40lTOSebkBP1XT?= =?us-ascii?Q?9NoF8LsqXJQ96VozhwKNWNifJEjXl9VKxBhcYfSSbqaxePBZYnyZV4GtUhvH?= =?us-ascii?Q?8YbMDrgaoGk0WIAuzEjD8fPBTmDOH2InJirINP4beCeM6M+X87WtCUM73CTd?= =?us-ascii?Q?kW41eJZHw5uI+WxfQSN5ooNys5Kpx9vp3ErkurPlhkFn3wxDjiWf7RcASTes?= =?us-ascii?Q?sIPXQNzSKH0nNXpz0uCwsUd3geCZ9l2GSCtXCPkAg+1rynlFUxV5iFqirO87?= =?us-ascii?Q?ZC74BCGHbmKlJfJMzJ9eP5r3yczJJka3vxfLvKpRQw0Ftm+yrD8tvcPGwx2T?= =?us-ascii?Q?B9qBulqfXeBIMduvEmOXTkC/QbJpEHiMiavRO/32ivEOnSrZjmcBw6lkptvH?= =?us-ascii?Q?uFtT9NPycPcHfS1rrj1+mQ3Tim7wb1KAUx742DsurxqYUQoUFwy74nKNVTr3?= =?us-ascii?Q?fPo+e9G2pHfoFOK/aaQA+sTnvQx8sCQlApBzaz+26r0NNxE6IcO6cOI3uJOk?= =?us-ascii?Q?Y9IgMZ0EvWHY8c+JwPFXMMEiRGYZY976zmEimetAVynqPdEPfCFUHhR6rBuG?= =?us-ascii?Q?//r5g0NXB7EwD+y3pkgtlD/bpYEwjeK2drZcEl+9/4GHtXFmJFBEn8A4VXSl?= =?us-ascii?Q?Fymi9kNmeDtDVACS0+urYlQjqsOX+Hei/vA5x9+Cj5xR54X0U8UB1v1d4RoL?= =?us-ascii?Q?wCJHgaDCk94vN7ZI41I2TBVkeEzLATAbCjuWZZbt/H1axFahKL1S4qaZxbTb?= =?us-ascii?Q?0VMUmMwwIApDmITLq6gVhkPxgGvtIzqrR+cAvW8/J+lybqjp0f0mXDXdd1GA?= =?us-ascii?Q?tmajf8qZI1pUBNSI5l8ugQCrqJ6GRs49t4FummAbnIpz55/+zqp55En7xVP1?= =?us-ascii?Q?dBrdvsDL2tF/P/rxEX7mABOgZfIWlwGSsio5hih0o7+6/ig+8o30aMTWgpwV?= =?us-ascii?Q?5w8UBElQc6jwnctuo0xV4I0lRvnJmVaNhTk89jDyyKej17ODWfWV/c9smzv0?= =?us-ascii?Q?6j3WKSFmZegmO6XUCR9f91XoJ3m1PVFkjpD80LZAHIEzNAyFDzvddTU45zdt?= =?us-ascii?Q?I9qacCLC9UarFENEzOpKldLvOa1Ln/57wTZTS4uwuUIZnlur8Pf/on+8/HFA?= =?us-ascii?Q?lWJlOIehHHhucKfgNpVDDYpdU0Lg+cc4/0LBoyh2IrK7kOaEuHXm8PBJOedW?= =?us-ascii?Q?vdoNxvmYNToTGr5nh6nb3r8RgdO2Tz2c4p084ayVIrfFReLSZZ+hFAyoSa9Z?= =?us-ascii?Q?J9DII0nEe6rDv1aOwVr22nMm82woEkbIUpxFt7S8XYANZolETEH+qmdwdo3d?= =?us-ascii?Q?W0LigoMcXeR2iBK3NPZAHp7cp5HSolE=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: 0592b69a-3c96-44f4-2e03-08da4a674042 X-MS-Exchange-CrossTenant-originalarrivaltime: 09 Jun 2022 22:27:34.6043 (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: /z6nBRn/Fy8bSHpPJdprqTo2LkOKWNZEFl4T4AnPbvMklFfCo9QZJ1ChHoG6pPb7Z+rbv0YsDTbAkjxG8xg3wi4EHpNIusjB+suZSNCEEaQ= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN6PR11MB2831 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 Nate DeSimon= e Sent: Tuesday, June 7, 2022 4:23 PM To: devel@edk2.groups.io Cc: Sinha, Ankit ; Chiu, Chasel ; Gao, Liming ; Dong, Eric ; Kubacki, Michael Subject: [edk2-devel] [PATCH V2 1/1] MinPlatformPkg: Add PCDs to update FAD= T entries from board package From: Ankit Sinha Adds new PCDs to allow entries in FADT to be customized during platform int= egration. Board packages will can update these PCDs during boot. Cc: Chasel Chiu Cc: Nate DeSimone Cc: Liming Gao Cc: Eric Dong Cc: Michael Kubacki Signed-off-by: Ankit Sinha --- Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c | 84 ++++++= ++++++-------- Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.inf | 23 ++++++ Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec | 43 ++++++= +--- 3 files changed, 106 insertions(+), 44 deletions(-) diff --git a/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c b= /Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c index 508de9101306..3c9f79de5c6c 100644 --- a/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c +++ b/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c @@ -1165,6 +1165,11 @@ PlatformUpdateTables ( // Update the creator revision // TableHeader->CreatorRevision =3D PcdGet32(PcdAcpiDefaultCreatorRevis= ion); + + // + // Update the oem revision + // + TableHeader->OemRevision =3D PcdGet32(PcdAcpiDefaultOemRevision); } } =20 @@ -1187,44 +1192,53 @@ PlatformUpdateTables ( case EFI_ACPI_6_3_FIXED_ACPI_DESCRIPTION_TABLE_SIGNATURE: FadtHeader =3D (EFI_ACPI_6_3_FIXED_ACPI_DESCRIPTION_TABLE *) Table; =20 - FadtHeader->PreferredPmProfile =3D PcdGet8 (PcdFadtPreferredPmProfile)= ; - FadtHeader->IaPcBootArch =3D PcdGet16 (PcdFadtIaPcBootArch); - FadtHeader->Flags =3D PcdGet32 (PcdFadtFlags); + FadtHeader->PreferredPmProfile =3D PcdGet8 (PcdFadtPref= erredPmProfile); + FadtHeader->IaPcBootArch =3D PcdGet16 (PcdFadtIaP= cBootArch); + FadtHeader->Flags =3D PcdGet32 (PcdFadtFla= gs); + FadtHeader->AcpiEnable =3D PcdGet8 (PcdAcpiEnab= leSwSmi); + FadtHeader->AcpiDisable =3D PcdGet8 (PcdAcpiDisa= bleSwSmi); + FadtHeader->Pm1aEvtBlk =3D PcdGet16 (PcdAcpiPm1= AEventBlockAddress); + FadtHeader->Pm1bEvtBlk =3D PcdGet16 (PcdAcpiPm1= BEventBlockAddress); + FadtHeader->Pm1aCntBlk =3D PcdGet16 (PcdAcpiPm1= AControlBlockAddress); + FadtHeader->Pm1bCntBlk =3D PcdGet16 (PcdAcpiPm1= BControlBlockAddress); + FadtHeader->Pm2CntBlk =3D PcdGet16 (PcdAcpiPm2= ControlBlockAddress); + FadtHeader->PmTmrBlk =3D PcdGet16 (PcdAcpiPmT= imerBlockAddress); + FadtHeader->Gpe0Blk =3D PcdGet16 (PcdAcpiGpe= 0BlockAddress); + FadtHeader->Gpe0BlkLen =3D PcdGet8 (PcdAcpiGpe0= BlockLength); + FadtHeader->Gpe1Blk =3D PcdGet16 (PcdAcpiGpe= 1BlockAddress); + FadtHeader->Gpe1Base =3D PcdGet8 (PcdAcpiGpe1= Base); =20 - FadtHeader->AcpiEnable =3D PcdGet8 (PcdAcpiEnableSwSmi); - FadtHeader->AcpiDisable =3D PcdGet8 (PcdAcpiDisableSwSmi); + FadtHeader->XPm1aEvtBlk.Address =3D PcdGet16 (PcdAcpiPm1= AEventBlockAddress); + FadtHeader->XPm1aCntBlk.Address =3D PcdGet16 (PcdAcpiPm1= AControlBlockAddress); + FadtHeader->XPm1bCntBlk.Address =3D PcdGet16 (PcdAcpiPm1= BControlBlockAddress); + FadtHeader->XPm2CntBlk.Address =3D PcdGet16 (PcdAcpiPm2= ControlBlockAddress); + FadtHeader->XPmTmrBlk.Address =3D PcdGet16 (PcdAcpiPmT= imerBlockAddress); + FadtHeader->XGpe0Blk.Address =3D PcdGet16 (PcdAcpiGpe= 0BlockAddress); + FadtHeader->XGpe1Blk.Address =3D PcdGet16 (PcdAcpiGpe= 1BlockAddress); =20 - FadtHeader->Pm1aEvtBlk =3D PcdGet16 (PcdAcpiPm1AEventBlockAddress); - FadtHeader->Pm1bEvtBlk =3D PcdGet16 (PcdAcpiPm1BEventBlockAddress); - FadtHeader->Pm1aCntBlk =3D PcdGet16 (PcdAcpiPm1AControlBlockAddress); - FadtHeader->Pm1bCntBlk =3D PcdGet16 (PcdAcpiPm1BControlBlockAddress); - FadtHeader->Pm2CntBlk =3D PcdGet16 (PcdAcpiPm2ControlBlockAddress); - FadtHeader->PmTmrBlk =3D PcdGet16 (PcdAcpiPmTimerBlockAddress); - FadtHeader->Gpe0Blk =3D PcdGet16 (PcdAcpiGpe0BlockAddress); - FadtHeader->Gpe0BlkLen =3D 0x20; - FadtHeader->Gpe1Blk =3D PcdGet16 (PcdAcpiGpe1BlockAddress); + FadtHeader->ResetReg.AccessSize =3D PcdGet8 (PcdAcpiRese= tRegAccessSize); + FadtHeader->XPm1aEvtBlk.AccessSize =3D PcdGet8 (PcdAcpiXPm1= aEvtBlkAccessSize); + FadtHeader->XPm1bEvtBlk.AccessSize =3D PcdGet8 (PcdAcpiXPm1= bEvtBlkAccessSize); + FadtHeader->XPm1aCntBlk.AccessSize =3D PcdGet8 (PcdAcpiXPm1= aCntBlkAccessSize); + FadtHeader->XPm1bCntBlk.AccessSize =3D PcdGet8 (PcdAcpiXPm1= bCntBlkAccessSize); + FadtHeader->XPm2CntBlk.AccessSize =3D PcdGet8 (PcdAcpiXPm2= CntBlkAccessSize); + FadtHeader->XPmTmrBlk.AccessSize =3D PcdGet8 (PcdAcpiXPmT= mrBlkAccessSize); + FadtHeader->XGpe0Blk.AccessSize =3D PcdGet8 (PcdAcpiXGpe= 0BlkAccessSize); + FadtHeader->XGpe1Blk.AccessSize =3D PcdGet8 (PcdAcpiXGpe= 1BlkAccessSize); =20 - FadtHeader->XPm1aEvtBlk.Address =3D PcdGet16 (PcdAcpiPm1AEventBlockAdd= ress); - FadtHeader->XPm1bEvtBlk.Address =3D PcdGet16 (PcdAcpiPm1BEventBlockAdd= ress); - if (FadtHeader->XPm1bEvtBlk.Address =3D=3D 0) { - FadtHeader->XPm1bEvtBlk.AccessSize =3D 0; - } - FadtHeader->XPm1aCntBlk.Address =3D PcdGet16 (PcdAcpiPm1AControlBlockA= ddress); - FadtHeader->XPm1bCntBlk.Address =3D PcdGet16 (PcdAcpiPm1BControlBlockA= ddress); - if (FadtHeader->XPm1bCntBlk.Address =3D=3D 0) { - FadtHeader->XPm1bCntBlk.AccessSize =3D 0; - } - FadtHeader->XPm2CntBlk.Address =3D PcdGet16 (PcdAcpiPm2ControlBlockAd= dress); - //if (FadtHeader->XPm2CntBlk.Address =3D=3D 0) { - FadtHeader->XPm2CntBlk.AccessSize =3D 0; - //} - FadtHeader->XPmTmrBlk.Address =3D PcdGet16 (PcdAcpiPmTimerBlockAddre= ss); - FadtHeader->XGpe0Blk.Address =3D PcdGet16 (PcdAcpiGpe0BlockAddress)= ; - FadtHeader->XGpe1Blk.Address =3D PcdGet16 (PcdAcpiGpe1BlockAddress)= ; - if (FadtHeader->XGpe1Blk.Address =3D=3D 0) { - FadtHeader->XGpe1Blk.AddressSpaceId =3D 0; - FadtHeader->XGpe1Blk.AccessSize =3D 0; - } + FadtHeader->SleepControlReg.AddressSpaceId =3D PcdGet8 (PcdAcpiSlee= pControlRegAddressSpaceId); + FadtHeader->SleepControlReg.RegisterBitOffset =3D PcdGet8 (PcdAcpiSlee= pControlRegRegisterBitOffset); + FadtHeader->SleepControlReg.AccessSize =3D PcdGet8 (PcdAcpiSlee= pControlRegAccessSize); + FadtHeader->SleepControlReg.Address =3D PcdGet64 (PcdAcpiSle= epControlRegAddress); + FadtHeader->SleepStatusReg.AddressSpaceId =3D PcdGet8 (PcdAcpiSlee= pStatusRegAddressSpaceId); + FadtHeader->SleepStatusReg.RegisterBitWidth =3D PcdGet8 (PcdAcpiSlee= pStatusRegRegisterBitWidth); + FadtHeader->SleepStatusReg.RegisterBitOffset =3D PcdGet8 (PcdAcpiSlee= pStatusRegRegisterBitOffset); + FadtHeader->SleepStatusReg.AccessSize =3D PcdGet8 (PcdAcpiSlee= pStatusRegAccessSize); + FadtHeader->SleepStatusReg.Address =3D PcdGet64 (PcdAcpiSle= epStatusRegAddress); + + FadtHeader->S4BiosReq =3D PcdGet8 (PcdAcpiS4Bi= osReq); + FadtHeader->XPm1aEvtBlk.Address =3D PcdGet16 (PcdAcpiPm1= AEventBlockAddress); + FadtHeader->XPm1bEvtBlk.Address =3D PcdGet16 (PcdAcpiPm1= BEventBlockAddress); =20 FadtHeader->DutyOffset =3D PcdGet8 (PcdFadtDutyOffset); FadtHeader->DutyWidth =3D PcdGet8 (PcdFadtDutyWidth); diff --git a/Pla= tform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.inf b/Platform/Inte= l/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.inf index 59ef5e2e544e..119212d2216b 100644 --- a/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.inf +++ b/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.inf @@ -62,6 +62,7 @@ gMinPlatformPkgTokenSpaceGuid.PcdMaxCpuSocketCount =20 gMinPlatformPkgTokenSpaceGuid.PcdFadtPreferredPmProfile + gMinPlatformPkgTokenSpaceGuid.PcdAcpiGpe1Base gMinPlatformPkgTokenSpaceGuid.PcdFadtIaPcBootArch gMinPlatformPkgTokenSpaceGuid.PcdFadtFlags gMinPlatformPkgTokenSpaceGuid.PcdFadtDutyOffset @@ -79,7 +80,29 @@ gMinPlatformPkgTokenSpaceGuid.PcdAcpiPm2ControlBlockAddress gMinPlatformPkgTokenSpaceGuid.PcdAcpiPmTimerBlockAddress gMinPlatformPkgTokenSpaceGuid.PcdAcpiGpe0BlockAddress + gMinPlatformPkgTokenSpaceGuid.PcdAcpiGpe0BlockLength gMinPlatformPkgTokenSpaceGuid.PcdAcpiGpe1BlockAddress + gMinPlatformPkgTokenSpaceGuid.PcdAcpiResetRegAccessSize + gMinPlatformPkgTokenSpaceGuid.PcdAcpiXPm1aEvtBlkAccessSize + gMinPlatformPkgTokenSpaceGuid.PcdAcpiXPm1bEvtBlkAccessSize + gMinPlatformPkgTokenSpaceGuid.PcdAcpiXPm1aCntBlkAccessSize + gMinPlatformPkgTokenSpaceGuid.PcdAcpiXPm1bCntBlkAccessSize + gMinPlatformPkgTokenSpaceGuid.PcdAcpiXPm2CntBlkAccessSize + gMinPlatformPkgTokenSpaceGuid.PcdAcpiXPmTmrBlkAccessSize + gMinPlatformPkgTokenSpaceGuid.PcdAcpiXGpe0BlkAccessSize + gMinPlatformPkgTokenSpaceGuid.PcdAcpiXGpe1BlkAccessSize + gMinPlatformPkgTokenSpaceGuid.PcdAcpiSleepControlRegAddressSpaceId + gMinPlatformPkgTokenSpaceGuid.PcdAcpiSleepControlRegRegisterBitWidth + gMinPlatformPkgTokenSpaceGuid.PcdAcpiSleepControlRegRegisterBitOffset + gMinPlatformPkgTokenSpaceGuid.PcdAcpiSleepControlRegAccessSize + gMinPlatformPkgTokenSpaceGuid.PcdAcpiSleepControlRegAddress + gMinPlatformPkgTokenSpaceGuid.PcdAcpiSleepStatusRegAddressSpaceId + gMinPlatformPkgTokenSpaceGuid.PcdAcpiSleepStatusRegRegisterBitWidth + gMinPlatformPkgTokenSpaceGuid.PcdAcpiSleepStatusRegRegisterBitOffset + gMinPlatformPkgTokenSpaceGuid.PcdAcpiSleepStatusRegAccessSize + gMinPlatformPkgTokenSpaceGuid.PcdAcpiSleepStatusRegAddress + gMinPlatformPkgTokenSpaceGuid.PcdAcpiS4BiosReq + =20 gMinPlatformPkgTokenSpaceGuid.PcdLocalApicAddress gMinPlatformPkgTokenSpaceGuid.PcdIoApicAddress diff --git a/Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec b/Platform/In= tel/MinPlatformPkg/MinPlatformPkg.dec index 22f371ee1ec8..68ab1d702d6a 100644 --- a/Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec +++ b/Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec @@ -115,6 +115,40 @@ gMinPlatformPkgTokenSpaceGuid.PcdFadtPreferredPmProfile|0x02|UINT8|0x900= 00025 gMinPlatformPkgTokenSpaceGuid.PcdFadtIaPcBootArch|0x0001|UINT16|0x900000= 26 gMinPlatformPkgTokenSpaceGuid.PcdFadtFlags|0x000086A5|UINT32|0x90000027 + + =20 + gMinPlatformPkgTokenSpaceGuid.PcdAcpiPm1AEventBlockAddress|0x1800|UINT + 16|0x00010035 + =20 + gMinPlatformPkgTokenSpaceGuid.PcdAcpiPm1BEventBlockAddress|0x0000|UINT + 16|0x00010036 + =20 + gMinPlatformPkgTokenSpaceGuid.PcdAcpiPm1AControlBlockAddress|0x1804|UI + NT16|0x0001037 + =20 + gMinPlatformPkgTokenSpaceGuid.PcdAcpiPm1BControlBlockAddress|0x0000|UI + NT16|0x00010038 + =20 + gMinPlatformPkgTokenSpaceGuid.PcdAcpiPm2ControlBlockAddress|0x1850|UIN + T16|0x00010039 =20 + gMinPlatformPkgTokenSpaceGuid.PcdAcpiPmTimerBlockAddress|0x1808|UINT16 + |0x0001003A =20 + gMinPlatformPkgTokenSpaceGuid.PcdAcpiGpe0BlockAddress|0x1880|UINT16|0x + 0001003B =20 + gMinPlatformPkgTokenSpaceGuid.PcdAcpiGpe0BlockLength|0x00|UINT8|0x0001 + 003C =20 + gMinPlatformPkgTokenSpaceGuid.PcdAcpiGpe1BlockAddress|0x0000|UINT16|0x + 0001003D + gMinPlatformPkgTokenSpaceGuid.PcdAcpiGpe1Base|0x00|UINT8|0x00010040 + =20 + gMinPlatformPkgTokenSpaceGuid.PcdAcpiResetRegAccessSize|0x00|UINT8|0x0 + 0010042 + + =20 + gMinPlatformPkgTokenSpaceGuid.PcdAcpiXPm1aEvtBlkAccessSize|0x00|UINT8| + 0x00010043 + =20 + gMinPlatformPkgTokenSpaceGuid.PcdAcpiXPm1bEvtBlkAccessSize|0x00|UINT8| + 0x00010044 + =20 + gMinPlatformPkgTokenSpaceGuid.PcdAcpiXPm1aCntBlkAccessSize|0x00|UINT8| + 0x00010045 + =20 + gMinPlatformPkgTokenSpaceGuid.PcdAcpiXPm1bCntBlkAccessSize|0x00|UINT8| + 0x00010046 + =20 + gMinPlatformPkgTokenSpaceGuid.PcdAcpiXPm2CntBlkAccessSize|0x00|UINT8|0 + x00010047 + =20 + gMinPlatformPkgTokenSpaceGuid.PcdAcpiXPmTmrBlkAccessSize|0x00|UINT8|0x + 00010048 + =20 + gMinPlatformPkgTokenSpaceGuid.PcdAcpiXGpe0BlkAccessSize|0x00|UINT8|0x0 + 0010049 =20 + gMinPlatformPkgTokenSpaceGuid.PcdAcpiXGpe1BlkAccessSize|0x00|UINT8|0x0 + 001004A + + =20 + gMinPlatformPkgTokenSpaceGuid.PcdAcpiSleepControlRegAddressSpaceId|0x0 + 0|UINT8|0x0001004B =20 + gMinPlatformPkgTokenSpaceGuid.PcdAcpiSleepControlRegRegisterBitWidth|0 + x00|UINT8|0x0001004C =20 + gMinPlatformPkgTokenSpaceGuid.PcdAcpiSleepControlRegRegisterBitOffset| + 0x00|UINT8|0x0001004D =20 + gMinPlatformPkgTokenSpaceGuid.PcdAcpiSleepControlRegAccessSize|0x00|UI + NT8|0x0001004E =20 + gMinPlatformPkgTokenSpaceGuid.PcdAcpiSleepControlRegAddress|0x00000000 + 00000000|UINT64|0x0001004F + =20 + gMinPlatformPkgTokenSpaceGuid.PcdAcpiSleepStatusRegAddressSpaceId|0x00 + |UINT8|0x00010050 + =20 + gMinPlatformPkgTokenSpaceGuid.PcdAcpiSleepStatusRegRegisterBitWidth|0x + 00|UINT8|0x00010051 + =20 + gMinPlatformPkgTokenSpaceGuid.PcdAcpiSleepStatusRegRegisterBitOffset|0 + x00|UINT8|0x00010052 + =20 + gMinPlatformPkgTokenSpaceGuid.PcdAcpiSleepStatusRegAccessSize|0x00|UIN + T8|0x00010053 + =20 + gMinPlatformPkgTokenSpaceGuid.PcdAcpiSleepStatusRegAddress|0x000000000 + 0000000|UINT64|0x00010054 + =20 + gMinPlatformPkgTokenSpaceGuid.PcdAcpiS4BiosReq|0x0000|UINT8|0x00010055 + # # FADT Duty Offset - The zero-based index of where the processor's duty = cycle # setting is within the processor's P_CNT register. @@ -260,15 +294,6 @@ gMinPlatformPkgTokenSpaceGuid.PcdPciSegmentCount |0x1 |UI= NT8|0x4001004E gMinPlatformPkgTokenSpaceGuid.PcdRandomizePlatformHierarchy |TRUE |BOOL= EAN|0x4001004F =20 - gMinPlatformPkgTokenSpaceGuid.PcdAcpiPm1AEventBlockAddress|0x1800|UINT16= |0x00010035 - gMinPlatformPkgTokenSpaceGuid.PcdAcpiPm1BEventBlockAddress|0x0000|UINT16= |0x00010036 - gMinPlatformPkgTokenSpaceGuid.PcdAcpiPm1AControlBlockAddress|0x1804|UINT= 16|0x0001037 - gMinPlatformPkgTokenSpaceGuid.PcdAcpiPm1BControlBlockAddress|0x0000|UINT= 16|0x00010038 - gMinPlatformPkgTokenSpaceGuid.PcdAcpiPm2ControlBlockAddress|0x1850|UINT1= 6|0x00010039 - gMinPlatformPkgTokenSpaceGuid.PcdAcpiPmTimerBlockAddress|0x1808|UINT16|0= x0001003A - gMinPlatformPkgTokenSpaceGuid.PcdAcpiGpe0BlockAddress|0x1880|UINT16|0x00= 01003B - gMinPlatformPkgTokenSpaceGuid.PcdAcpiGpe1BlockAddress|0x0000|UINT16|0x00= 01003C - gMinPlatformPkgTokenSpaceGuid.PcdPciExpressRegionLength|0x10000000|UINT3= 2|0x0010004 gMinPlatformPkgTokenSpaceGuid.PcdFspCpuPeiApWakeupBufferAddr|0x9f000|UIN= T32|0x30000008 =20 -- 2.27.0.windows.1