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.21993.1644376827634265760 for ; Tue, 08 Feb 2022 19:20:28 -0800 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=QQhhqCT0; 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=1644376827; x=1675912827; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=7rxj3T8zKJOlLJRGNPZcm5GZW4TN4NNmLBrFvbzjCpk=; b=QQhhqCT0KLkoSVNMmQ4PnZYIav6eIf0vyOgAnV6fPfno8JhNZrsYmOJR Ue1cNpx+DoohpwkbpXi1+vcUtPYuvKhUupnQSPR+hMUJg73PZ3WaAp+0I ofmjSm3uYbUowvSQkpaJ2BDp/05mcg8GEklxASQsoiNUzojJXJhVXMLQ4 CCrfcvhy4Fo+MszM9gOGgj/1muiwclmqh0RbvmcQ1yhdRejH3qiaVTwG3 NG7f0vi2dEVo/YoZWKq1OMl8s9vsdWbfyymkYMzHTzbNlafKmMnERFbXz CS+4crsZoBOYewSeKma765/pnsbTUI75Nh3nCBF4YLl3c9FyyBFTeGx+U w==; X-IronPort-AV: E=McAfee;i="6200,9189,10252"; a="247943871" X-IronPort-AV: E=Sophos;i="5.88,354,1635231600"; d="scan'208";a="247943871" Received: from orsmga002.jf.intel.com ([10.7.209.21]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Feb 2022 19:20:26 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.88,354,1635231600"; d="scan'208";a="499801612" Received: from orsmsx604.amr.corp.intel.com ([10.22.229.17]) by orsmga002.jf.intel.com with ESMTP; 08 Feb 2022 19:20:26 -0800 Received: from orsmsx601.amr.corp.intel.com (10.22.229.14) by ORSMSX604.amr.corp.intel.com (10.22.229.17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.20; Tue, 8 Feb 2022 19:20:26 -0800 Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) by orsmsx601.amr.corp.intel.com (10.22.229.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.20 via Frontend Transport; Tue, 8 Feb 2022 19:20:26 -0800 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (104.47.57.171) by edgegateway.intel.com (134.134.137.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2308.20; Tue, 8 Feb 2022 19:20:26 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ksIjXzf/T3fa1b/SZCC5zC+Tcc/D1CCZgz2sttR33BDAEqz2BuYGjFJZuPV2JqYWcRZMjZV3XgEkgiOztm24JMWNzewhxNYGBJMxRpFogGifRzwiXSEPJyo6fGsComekRnKyYpK21DLK8x7oD57Lc47FnoBoCc6XvjOryXet4akhTiWPWccUy5tTugWEUyPhY2jRJNDwIwHNomsQk2Cpxf1Vof4SshDQe8fqAynlX04M0jXhigXeHMpABuguNfEtG4QrTHHxzSyy/PhFbsj+jLmYLmT3U9/zXbjvJfFW7mzQBRrS6qJV8QEArpIGhNmEIxLaZOiUNK3+CU40wj/u5w== 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=kzaSZcJrdg5/6jepXZFdOlTz5UPk4hClHpzNWaSNsVc=; b=nwJuIW0UDNDqS2xDVOLa2bJsleUWZepXv+QLm8dR0bGfeXoTJv37ew0U371TfE/6gFY/69OkXtlAc2noQBWzpQJATzqIQK45vJNT+dl5dv2C06WBp/zADPIuaaYXtYVW4jV/m9nI3/BGAT2oydqWcCdlJxiz1onEOtYkucAJHQdDCgfVouWuCRkqzrD/7ZaPeML4BTvCvcMv5vfGiMKc4ibwuC/sI5Z4Km6xxuLPBfW7ehvgMCpVqynQdTwnuUOaEtX/q49UcFBFvB43Xibm2UFlJWI9uAs16AvxuGb1YdydAHLV0EwwFQvNqGwKVMfor0j+c3My1t3gAuDwQvq0HA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none Received: from MW4PR11MB5821.namprd11.prod.outlook.com (2603:10b6:303:184::5) by BN9PR11MB5289.namprd11.prod.outlook.com (2603:10b6:408:136::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4951.12; Wed, 9 Feb 2022 03:20:24 +0000 Received: from MW4PR11MB5821.namprd11.prod.outlook.com ([fe80::6920:39b9:e18c:9dc5]) by MW4PR11MB5821.namprd11.prod.outlook.com ([fe80::6920:39b9:e18c:9dc5%7]) with mapi id 15.20.4930.022; Wed, 9 Feb 2022 03:20:23 +0000 From: "Nate DeSimone" To: "Oram, Isaac W" , "devel@edk2.groups.io" CC: "Chiu, Chasel" Subject: Re: [edk2-devel][edk2-platforms][PATCH V1 8/8] WhitleyOpenBoardPkg/StaticSkuDataDxe: Add open source driver Thread-Topic: [edk2-devel][edk2-platforms][PATCH V1 8/8] WhitleyOpenBoardPkg/StaticSkuDataDxe: Add open source driver Thread-Index: AQHYHFVWMW07EQazlUKF16xqrvx9VKyKjo7g Date: Wed, 9 Feb 2022 03:20:23 +0000 Message-ID: References: <37622ba9effed0e80e99b384580b181a8f3e10a3.1644259969.git.isaac.w.oram@intel.com> In-Reply-To: <37622ba9effed0e80e99b384580b181a8f3e10a3.1644259969.git.isaac.w.oram@intel.com> 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: 33b0fc7e-68de-411c-259e-08d9eb7b1c6a x-ms-traffictypediagnostic: BN9PR11MB5289:EE_ x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:3383; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: SZvFkIVcB+V/qzcONdJbEKuJltbeU1ITySmhHtHKYrwSbfvNSsUCzdAhINQpl9cM3FuzDMd3GH8GzvzYP5jQAWMBDxohnszn5CGWWep4akgPbkEknH+WzI6V5A2pZ9l17RDmMjv9XQE2x7Z/RHnCTeoLwbhh3xf1+OwlRQ45EnglZlxkuY09q1qbxUeZqnuUUycI5BCoG7C5CJt67QMElJpIeuwRR12AcuqkcuUCNLkgRcEOyxuNhBtCjbbbQ/reFO14iL4Fcqx3BlA7utpsHVN3XutQjCal8iYxK/8FFAMsFfzam9UbIVvQQaB2CFPKDSGXkMRzEf5wFvxm9d5FwB8BWz+rw0glIwtdQZw2aKtGfTDNnNw6tTDUynViwOF6dudNtDRT3P7ucOqKkVxMYrnjcX+nekjwwX4yRdpPE2e8BuA9cSx+AjqEJVp0JPDl3Yg1zp0AzkEBhBdaTphFZcV6K06e8hrT0myG70QpsosyHkdEpYnpvcCnRxEGTAh4Ed+uNQ84l9Segty4rXcjy6HjZ7CXE28C6DU1LsHN9/kkBzFuvPpbWhTzhOZfORb7YwBPVlZsEpOBmNPPtC+eSI7f8CU671K9XV01s6XH+74vBKsYM+Hw16wdH3x7i2HNTntVxKDomAbEdSx3txBT/k0jWmPTPinBkrsMyEfQzW30faYc2R9/EZpS4WWiVkqqb+2yZDk3O2e5ttxXuiiOJA== 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)(122000001)(66446008)(107886003)(8936002)(4326008)(30864003)(8676002)(5660300002)(66556008)(26005)(83380400001)(38070700005)(66946007)(186003)(9686003)(7696005)(6506007)(53546011)(86362001)(76116006)(64756008)(52536014)(66476007)(71200400001)(33656002)(38100700002)(316002)(508600001)(19627235002)(110136005)(55016003)(82960400001)(2906002)(579004);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?gD3huphO4nkSNDkFE8nLo45RBEANvVcEzosy7Qq+GJGPwfjFQ6o6QvEzhwp0?= =?us-ascii?Q?w/RfhKcMMZ1phP8zDn0UgsVvrAXiIGyPhuL3TWbqvoZ6Umrs/XQ3Zii+Gi/X?= =?us-ascii?Q?J67pr1eMdqG8Xb9hFcy34ENBS35xFM6LjKc0XOK7bXxo5Ko1VpMowZL1Y3eR?= =?us-ascii?Q?ImR5I698QghJuisqPMM0IzYZ2FM+JhFW1WKPq0RYZQnKt+PffAzkACEm5hL/?= =?us-ascii?Q?Y6AYzbUD5jp8sl518rIRXKiB0OEGOSJbBrSqGrDHmGiNStCiprWogYmG9glZ?= =?us-ascii?Q?5IfeAMBoGbl2JeHzPv3Q53UU9PT/xilYgER04xrCa612KbkXUC+8CjPvPMQP?= =?us-ascii?Q?mnNkSkba7AdpjiGvH+met+NE+QoOhrxwJak7CWUdX68DFYm/BrJ5qBGAOOTG?= =?us-ascii?Q?sNQnPXEiyHfmmyZKbwTkmNTqHJ/rQb+gmFGrZF8u+kbUW8FjOhd1IrmRylFk?= =?us-ascii?Q?usG6VOwQFon92bwFFUPJAou+9vYDYv87uGs2aFx1+eXXGbZDd8yH/Mx1RK0W?= =?us-ascii?Q?W6kSiUlEHQ/tW37lQV04X/l0CVOo3/T7wwirqQ7c89h3/DmEBzilC/nGyixr?= =?us-ascii?Q?fbsOA8SlnuDcnrc4QowGHSGDyrZjPrbUsWn/9XIyNZVnG2IEDLgc1GjUtZRQ?= =?us-ascii?Q?2UvRTMPJaY0y0HjDKHw6ok2ycaqccl/wo01H5JJCalB6CNojK/iSIGCV3YMX?= =?us-ascii?Q?wIdIt5fxjGVLdo80UKuSfXcIG+/UHiRkTIC91NvuT3G2T4rU4O/lzvfSpc+s?= =?us-ascii?Q?4pA1Ux5v7A/mfDaMgWgqyEJTr70DNplQmU5jt2z4XJuPtQRb51Y53O7+NSih?= =?us-ascii?Q?WJ6f3GKwJd5KCCz9pUutlI0OwuVZQbovBepX73Ag8qIQ3J6FGEz7lG3+yA+S?= =?us-ascii?Q?FHDuFGv0Y+zWLsXx2vDu1WlnU/+yZ/jbTR4EzEFoTFmrPypKJw5w2geRq4Ns?= =?us-ascii?Q?mOZdbS2IH5n8yh5bCTPHDLv+Tw+ryAotvAwxtm1g1aIx4v8nn7uDLJN4M6gB?= =?us-ascii?Q?ZKu/DLRPR6ckuq67vsHJLvH0SeDcvfZu8vlTEQ0qHOMVJy6A3BoGS/y2lmQL?= =?us-ascii?Q?FFZU7PsjYKYvLh1FLt8wsspZTCjUnVitUPxoyo/r5gyahsS6YB4foc//WzVs?= =?us-ascii?Q?ZHfIjZH0KUokgMWAYeq2kFBE3vvOnH91qTBaBO+LI5g+rU/uwG+xoa3H5XB+?= =?us-ascii?Q?Y8W1XcgavLOmp9L1qk7wPjsR7cH+9B/JtUvivdRICD3rSkZxon2okNwesK2F?= =?us-ascii?Q?geYc8/6hOSsoF4uiuxrqJRyiN2ruq1LNAa3Mv0hgCO3F2eBTdvC5EEu+DuyP?= =?us-ascii?Q?sF261K+48OAjmN06cnBFfTZXG/2D6RgnuhFr8237c8btRnj/uwZwP9M3cwhp?= =?us-ascii?Q?PGI4ZKNhnLXC8DQaS5CgkYzK5XX+DdqD5KoH8OzsKnVHFig7l3zXqQmji7sP?= =?us-ascii?Q?5HCNKmAde9PC3XiaWWsrZmKZVh/exntoD1KcIyhYFozO129Tks090bpDG8xk?= =?us-ascii?Q?OVxneLPZsiO8cJVSNff+dIEUpXk1fYhGjMD/qnujrQhY59ydkc/vR0324H6M?= =?us-ascii?Q?7QLyqfg14oOz0hFOgjer9rLDo25veCI818gy0Mf2R/UneLp3+1ZKVkjrOGMz?= =?us-ascii?Q?A+0CX4dkZWb9YT0zr1vA9ET35o0hXg9VIEGi3ux/hq5H/BUzUlHLrQo8XSs4?= =?us-ascii?Q?6NjzrQ=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: 33b0fc7e-68de-411c-259e-08d9eb7b1c6a X-MS-Exchange-CrossTenant-originalarrivaltime: 09 Feb 2022 03:20:23.9065 (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: wUTvtPAotw/W+X/YYx8OTBlZ5ZigGE4P/zi6mcYc4YTegVHkWAlcDP67J3ULqPIW36qdynlVg43pxb7TtdgnXm5Uese0lMMstX7df/xGASE= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN9PR11MB5289 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 Hi Isaac, Please see feedback inline. There is a minor typo in Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaMain/Sta= ticSkuDataDxe/Readme.md. "Generat" should be "Generate". This can be fixed = during the commit process, no need to send a V2 patch series. Reviewed-by: Nate DeSimone Thanks, Nate > -----Original Message----- > From: Oram, Isaac W > Sent: Monday, February 7, 2022 11:03 AM > To: devel@edk2.groups.io > Cc: Desimone, Nathaniel L ; Chiu, Chasel > > Subject: [edk2-devel][edk2-platforms][PATCH V1 8/8] > WhitleyOpenBoardPkg/StaticSkuDataDxe: Add open source driver >=20 > This driver provides data for boards patching AML, PIRQ, and MP tables. >=20 > Cc: Nate DeSimone > Cc: Chasel Chiu > Signed-off-by: Isaac Oram > --- > Platform/Intel/WhitleyOpenBoardPkg/Include/Library/UbaMpTableUpdateLib.h= | 41 ++++++++ > Platform/Intel/WhitleyOpenBoardPkg/Include/Library/UbaPirqUpdateLib.h = | 42 ++++++++ > Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaDxeRpBoards.fdf = | 5 + > Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaMain/StaticSkuDataDxe/AcpiStat= icData.c | 54 ++++++++++ > Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaMain/StaticSkuDataDxe/DeviceDa= taInstall.c | 100 ++++++++++++++++++ > Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaMain/StaticSkuDataDxe/Platform= DeviceDataSRP10nm.c | 110 ++++++++++++++++++++ > Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaMain/StaticSkuDataDxe/Readme.m= d | 19 ++++ > Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaMain/StaticSkuDataDxe/StaticSk= uDataDxe.c | 60 +++++++++++ > Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaMain/StaticSkuDataDxe/StaticSk= uDataDxe.h | 41 ++++++++ > Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaMain/StaticSkuDataDxe/StaticSk= uDataDxe.inf | 59 +++++++++++ > Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaRpBoards.dsc = | 5 + > 11 files changed, 536 insertions(+) >=20 > diff --git a/Platform/Intel/WhitleyOpenBoardPkg/Include/Library/UbaMpTabl= eUpdateLib.h b/Platform/Intel/WhitleyOpenBoardPkg/Include/Library/UbaMpTabl= eUpdateLib.h > new file mode 100644 > index 0000000000..5aedaf62be > --- /dev/null > +++ b/Platform/Intel/WhitleyOpenBoardPkg/Include/Library/UbaMpTableUpdate= Lib.h > @@ -0,0 +1,41 @@ > +/** @file > + UBA Mp table Update Library Header File. > + > + @copyright > + Copyright 2008 - 2015 Intel Corporation.
> + > + SPDX-License-Identifier: BSD-2-Clause-Patent > +**/ > + > +#ifndef _UBA_MP_TABLE_UPDATE_LIB_H > +#define _UBA_MP_TABLE_UPDATE_LIB_H > + > +#include > +#include > + > +#include > + > +#define PLATFORM_MP_TABLE_UPDATE_SIGNATURE SIGNATURE_32 ('U', 'M', 'P',= 'T') > +#define PLATFORM_MP_TABLE_UPDATE_VERSION 0x01 > + > +// {0FF8A1CF-A0AB-4ac0-BFC9-34A78F68DD8A} > +#define PLATFORM_MP_TABLE_CONFIG_DATA_GUID \ > +{ 0xff8a1cf, 0xa0ab, 0x4ac0, { 0xbf, 0xc9, 0x34, 0xa7, 0x8f, 0x68, 0xdd,= 0x8a } }; > + > + > +typedef struct { > + UINT32 Signature; > + UINT32 Version; > + > + DEVICE_DATA *DeviceDataPtr; > + > +} PLATFORM_MP_UPDATE_TABLE; > + > +EFI_STATUS > +PlatformGetMpTableDataPointer ( > + IN DEVICE_DATA **DeviceData > +); > + > +STATIC EFI_GUID gPlatformMpTableConfigDataGuid =3DPLATFORM_MP_TABLE_CON= FIG_DATA_GUID; > + > +#endif //_UBA_MP_TABLE_UPDATE_LIB_H > diff --git a/Platform/Intel/WhitleyOpenBoardPkg/Include/Library/UbaPirqUp= dateLib.h b/Platform/Intel/WhitleyOpenBoardPkg/Include/Library/UbaPirqUpdat= eLib.h > new file mode 100644 > index 0000000000..4261b7b74f > --- /dev/null > +++ b/Platform/Intel/WhitleyOpenBoardPkg/Include/Library/UbaPirqUpdateLib= .h > @@ -0,0 +1,42 @@ > +/** @file > + UBA PirqData Update Library Header File. > + > + @copyright > + Copyright 2008 - 2014 Intel Corporation.
> + > + SPDX-License-Identifier: BSD-2-Clause-Patent > +**/ > + > +#ifndef _UBA_PIRQ_UPDATE_LIB_H > +#define _UBA_PIRQ_UPDATE_LIB_H > + > +#include > +#include > + > +#include > + > +#define PLATFORM_PIRQ_UPDATE_SIGNATURE SIGNATURE_32 ('P', 'I', 'R', 'Q'= ) > +#define PLATFORM_PIRQ_UPDATE_VERSION 0x01 > + > + > +// {4C1F48A5-C976-4d90-9F03-8E9B1C327FCF} > +#define PLATFORM_PIRQ_CONFIG_DATA_GUID \ > +{ 0x4c1f48a5, 0xc976, 0x4d90, { 0x9f, 0x3, 0x8e, 0x9b, 0x1c, 0x32, 0x7f,= 0xcf } } > + > + > +typedef struct { > + UINT32 Signature; > + UINT32 Version; > + > + PLATFORM_PIRQ_DATA *PirqDataPtr; > + > +} PLATFORM_PIRQ_UPDATE_TABLE; > + > +EFI_STATUS > +PlatformGetPirqDataPointer ( > + IN PLATFORM_PIRQ_DATA **PirqData > +); > + > +STATIC EFI_GUID gPlatformPirqConfigDataGuid =3D PLATFORM_PIRQ_CONFIG_DA= TA_GUID; > + > +#endif //_UBA_PIRQ_UPDATE_LIB_H > diff --git a/Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaDxeRpBoards.fdf b/= Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaDxeRpBoards.fdf > index fcf147885f..7c182db5df 100644 > --- a/Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaDxeRpBoards.fdf > +++ b/Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaDxeRpBoards.fdf > @@ -7,6 +7,11 @@ > # SPDX-License-Identifier: BSD-2-Clause-Patent > ## > =20 > +# > +# Currently shared by all platforms > +# > +INF $(RP_PKG)/Uba/UbaMain/StaticSkuDataDxe/StaticSkuDataDxe.inf > + > # > # Platform TypeWilsonCityRP > # > diff --git a/Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaMain/StaticSkuData= Dxe/AcpiStaticData.c b/Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaMain/Stati= cSkuDataDxe/AcpiStaticData.c > new file mode 100644 > index 0000000000..c658b9fd28 > --- /dev/null > +++ b/Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaMain/StaticSkuDataDxe/Acp= iStaticData.c > @@ -0,0 +1,54 @@ > +/** @file > + ACPI static data update. > + > + @copyright > + Copyright 2013 - 2022 Intel Corporation.
> + > + SPDX-License-Identifier: BSD-2-Clause-Patent > +**/ > + > +#include "StaticSkuDataDxe.h" > +#include > + > +#include "AmlOffsetTable.c" // Generated in PreBuild step > + > +#include > +#include > + > +ACPI_FIX_UPDATE_TABLE FixupTableUpdate10nm =3D > +{ > + PLATFORM_ACPI_FIX_UPDATE_SIGNATURE, > + PLATFORM_ACPI_FIX_UPDATE_VERSION, > + &DSDT_EPRP10NM_OffsetTable > +}; > + > +EFI_STATUS > +InstallAcpiFixupTableData ( > + IN UBA_CONFIG_DATABASE_PROTOCOL *UbaConfigProtocol > + ) > +{ > + EFI_STATUS Status =3D EFI_SUCCESS; > + EFI_HOB_GUID_TYPE *GuidHob; > + EFI_PLATFORM_INFO *PlatformInfo; > + ACPI_FIX_UPDATE_TABLE *PtrTable; > + UINT32 TableSize; > + > + GuidHob =3D GetFirstGuidHob (&gEfiPlatformInfoGuid); > + ASSERT (GuidHob !=3D NULL); > + if (GuidHob =3D=3D NULL) { > + return EFI_NOT_FOUND; > + } > + PlatformInfo =3D GET_GUID_HOB_DATA (GuidHob); > + > + PtrTable =3D &FixupTableUpdate10nm; > + TableSize =3D sizeof(FixupTableUpdate10nm); > + DEBUG ((DEBUG_INFO, "UBA: Loading Acpi table for ICX\n")); > + > + Status =3D UbaConfigProtocol->AddData ( > + UbaConfigProtocol, > + &gPlatformAcpiFixTableGuid, > + PtrTable, > + TableSize > + ); > + return Status; > +} > diff --git a/Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaMain/StaticSkuData= Dxe/DeviceDataInstall.c b/Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaMain/St= aticSkuDataDxe/DeviceDataInstall.c > new file mode 100644 > index 0000000000..dc49390cb2 > --- /dev/null > +++ b/Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaMain/StaticSkuDataDxe/Dev= iceDataInstall.c > @@ -0,0 +1,100 @@ > +/** @file > + Device data installation. > + > + @copyright > + Copyright 2014 - 2022 Intel Corporation.
> + > + SPDX-License-Identifier: BSD-2-Clause-Patent > +**/ > + > +#include "StaticSkuDataDxe.h" > + > +#include > +#include > + > +#include > +#include > + > +#include > +#include > + > +extern PLATFORM_PIRQ_DATA mPlatformPirqDataPlatformSRP10nm; > + > +PLATFORM_PIRQ_UPDATE_TABLE PirqUpdate10nm =3D > +{ > + PLATFORM_PIRQ_UPDATE_SIGNATURE, > + PLATFORM_PIRQ_UPDATE_VERSION, > + &mPlatformPirqDataPlatformSRP10nm > +}; > + > +EFI_STATUS > +InstallPirqData ( > + IN UBA_CONFIG_DATABASE_PROTOCOL *UbaConfigProtocol > + ) > +{ > + EFI_STATUS Status =3D EFI_SUCCESS; > + PLATFORM_PIRQ_UPDATE_TABLE *PtrTable; > + UINT32 TableSize; > + EFI_HOB_GUID_TYPE *GuidHob; > + EFI_PLATFORM_INFO *PlatformInfo; > + > + GuidHob =3D GetFirstGuidHob (&gEfiPlatformInfoGuid); > + ASSERT (GuidHob !=3D NULL); > + if (GuidHob =3D=3D NULL) { > + return EFI_NOT_FOUND; > + } > + PlatformInfo =3D GET_GUID_HOB_DATA (GuidHob); > + > + PtrTable =3D &PirqUpdate10nm; > + TableSize =3D sizeof(PirqUpdate10nm); > + DEBUG ((DEBUG_ERROR, "UBA: Loading Pirqupdate table for ICX\n")); > + > + Status =3D UbaConfigProtocol->AddData ( > + UbaConfigProtocol, > + &gPlatformPirqConfigDataGuid, > + PtrTable, > + TableSize > + ); > + return Status; > +} > + > +extern DEVICE_DATA mDeviceDataPlatformSRP10nm; > + > +PLATFORM_MP_UPDATE_TABLE MpTableUpdate10nm =3D > +{ > + PLATFORM_MP_TABLE_UPDATE_SIGNATURE, > + PLATFORM_MP_TABLE_UPDATE_VERSION, > + &mDeviceDataPlatformSRP10nm > +}; > + > +EFI_STATUS > +InstallMpTableData ( > + IN UBA_CONFIG_DATABASE_PROTOCOL *UbaConfigProtocol > + ) > +{ > + EFI_STATUS Status =3D EFI_SUCCESS; > + PLATFORM_MP_UPDATE_TABLE *PtrTable; > + UINT32 TableSize; > + EFI_HOB_GUID_TYPE *GuidHob; > + EFI_PLATFORM_INFO *PlatformInfo; > + > + GuidHob =3D GetFirstGuidHob (&gEfiPlatformInfoGuid); > + ASSERT (GuidHob !=3D NULL); > + if (GuidHob =3D=3D NULL) { > + return EFI_NOT_FOUND; > + } > + PlatformInfo =3D GET_GUID_HOB_DATA (GuidHob); > + > + PtrTable =3D &MpTableUpdate10nm; > + TableSize =3D sizeof(MpTableUpdate10nm); > + DEBUG ((DEBUG_ERROR, "UBA: Loading MpTableupdate table for ICX\n")); > + > + Status =3D UbaConfigProtocol->AddData ( > + UbaConfigProtocol, > + &gPlatformMpTableConfigDataGuid, > + PtrTable, > + TableSize > + ); > + > + return Status; > +} > diff --git a/Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaMain/StaticSkuData= Dxe/PlatformDeviceDataSRP10nm.c b/Platform/Intel/WhitleyOpenBoardPkg/Uba/Ub= aMain/StaticSkuDataDxe/PlatformDeviceDataSRP10nm.c > new file mode 100644 > index 0000000000..ed9f80734c > --- /dev/null > +++ b/Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaMain/StaticSkuDataDxe/Pla= tformDeviceDataSRP10nm.c > @@ -0,0 +1,110 @@ > +/** @file > + > + @copyright > + Copyright 2017 - 2018 Intel Corporation.
> + > + SPDX-License-Identifier: BSD-2-Clause-Patent > +**/ > + > +#include > +#include > +#include > + > +#ifndef V_INTEL_VID > +#define V_INTEL_VID 0x8086 > +#endif // #ifndef V_INTEL_VID > + > +// > +// Describes Local APICs' connections. > +// > +STATIC DEVICE_DATA_HW_LOCAL_INT DeviceDataHwLocalInt1[] =3D { > + { > + {{0},{{0xFF,0},{0xFF,0},{0xFF,0}}}, > + 0x00, > + 0xff, > + 0x00, > + EfiLegacyMpTableEntryLocalIntTypeExtInt, > + EfiLegacyMpTableEntryLocalIntFlagsPolaritySpec, > + EfiLegacyMpTableEntryLocalIntFlagsTriggerSpec > + }, > + { > + {{0},{{0xFF,0},{0xFF,0},{0xFF,0}}}, > + 0x00, > + 0xff, > + 0x01, > + EfiLegacyMpTableEntryLocalIntTypeInt, > + EfiLegacyMpTableEntryLocalIntFlagsPolaritySpec, > + EfiLegacyMpTableEntryLocalIntFlagsTriggerSpec > + }, > +}; > + > +// > +// Describes system's address space mapping, specific to the system. > +// > +STATIC DEVICE_DATA_HW_ADDR_SPACE_MAPPING DeviceDataHwAddrSpace1[] =3D { > + // > + // Legacy IO addresses. > + // > + { {0}, EfiLegacyMpTableEntryExtSysAddrSpaceMappingIo, 0x0000, = 0x1000 }, > +}; > + > +// > +// IRQ priority > +// > +STATIC EFI_LEGACY_IRQ_PRIORITY_TABLE_ENTRY IrqPriorityTable1[] =3D { > + {11, 0}, > + {10, 0}, > + {9, 0}, > + {5, 0}, > + {0, 0}, > + {0, 0}, > + {0, 0} > +}; > + > +// > +// Note : UpdateBusNumbers updates the bus numeber > +// > +STATIC EFI_LEGACY_PIRQ_TABLE PirqTableHead1 [] =3D { > + { > + { > + EFI_PIRQ_TABLE_SIGNATURE, > + 00, > + 01, > + 0000, > + 00, > + 00, > + 0000, > + V_INTEL_VID, > + 30, > + 00000000, > + {00, > + 00, > + 00, > + 00, > + 00, > + 00, > + 00, > + 00, > + 00, > + 00, > + 00}, > + 00 > + } > + } > +}; > + > +// > +// Instantiation of the system device data. > +// > +DEVICE_DATA mDeviceDataPlatformSRP10nm =3D { > + DeviceDataHwLocalInt1, sizeof (DeviceDataHwLocalInt1) / sizeof (Devi= ceDataHwLocalInt1[0]), > + DeviceDataHwAddrSpace1, sizeof (DeviceDataHwAddrSpace1)/ sizeof (Devi= ceDataHwAddrSpace1[0]) > +}; > + > +// > +// Instantiation of platform PIRQ data. > +// > +PLATFORM_PIRQ_DATA mPlatformPirqDataPlatformSRP10nm =3D { > + IrqPriorityTable1, sizeof(IrqPriorityTable1) / sizeof(IrqPriorityTa= ble1[0]), > + PirqTableHead1, sizeof(PirqTableHead1) / sizeof(PirqTableHead1[0= ]) > +}; > diff --git a/Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaMain/StaticSkuData= Dxe/Readme.md b/Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaMain/StaticSkuDat= aDxe/Readme.md > new file mode 100644 > index 0000000000..2138810db4 > --- /dev/null > +++ b/Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaMain/StaticSkuDataDxe/Rea= dme.md > @@ -0,0 +1,19 @@ > +# **Generating ACPI AML Offset table** > + > +The StaticSkuDataDxe driver includes AmlOffsetTable.c which contains the= AML offset table. This Readme captures the build process for this file. > + > +edk2-platforms/Platform/Intel/WhitleyOpenBoardPkg/WilsonCityRvp/build_bo= ard.py drives the build since ACPI tables are expected to be board specific= . > + > +The AmlOffsetTable.c file is generated in two key steps: > +1. Generate the *Dsdt*.offsets.h where *Dsdt* is the DSDT ASL file name = specific for this build. For WilsonCityRvp: > + * The DSDT is WhitleyOpenBoardPkg/Features/Acpi/AcpiTables/Dsdt/EPRPP= latform10nm.asl > + * The generated file is Build/WhitleyOpenBoardPkg/DEBUG_VS2015x86/X64= /WhitleyOpenBoardPkg/WilsonCityRvp/AmlOffsets/AmlOffsets/OUTPUT/WhitleyOpen= BoardPkg/Features/Acpi/AcpiTables/Dsdt/EPRPPlatform10nm.offset.h > + * These are customized in the build_config.cfg file > +2. Generat the AmlOffsetTable.c using the AmlGenOffset.py script from th= e MinPlatformPkg. For WilsonCityRvp: Typo here. "Generat" should be "Generate". > + * Script is at edk2-platforms/Platform/Intel/MinPlatformPkg/Tools/Aml= GenOffset/AmlGenOffset.py > + * Input is Build/WhitleyOpenBoardPkg/DEBUG_VS2015x86/X64/WhitleyOpenB= oardPkg/WilsonCityRvp/AmlOffsets/AmlOffsets/OUTPUT/WhitleyOpenBoardPkg/Feat= ures/Acpi/AcpiTables/Dsdt/EPRPPlatform10nm.offset.h > + * Output is edk2-platforms/Platform/Intel/WhitleyOpenBoardPkg/Uba/Uba= Main/StaticSkuDataDxe/AmlOffsetTable.c > + > +Common Issues: > +* The same iasl compiler version must be used to build the AML offset ta= ble and to build the DSDT. > +* The Board/*AmlOffsets*.dsc file name, Board/*AmlOffsets* directory nam= e, Board/AmlOffsets/*AmlOffsets*.inf file name, and the BASE_NAME in *AmlOf= fsets*.inf must all match exactly. > diff --git a/Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaMain/StaticSkuData= Dxe/StaticSkuDataDxe.c b/Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaMain/Sta= ticSkuDataDxe/StaticSkuDataDxe.c > new file mode 100644 > index 0000000000..c4f0102f59 > --- /dev/null > +++ b/Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaMain/StaticSkuDataDxe/Sta= ticSkuDataDxe.c > @@ -0,0 +1,60 @@ > +/** @file > + UBA static sku data update dxe driver. > + > + @copyright > + Copyright 2013 - 2014 Intel Corporation.
> + > + SPDX-License-Identifier: BSD-2-Clause-Patent > +**/ > + > +#include "StaticSkuDataDxe.h" > + > +/** > + The Driver Entry Point. > + > + The function is the driver Entry point. > + > + @param ImageHandle A handle for the image that is initializing this = driver > + @param SystemTable A pointer to the EFI system table > + > + @retval EFI_SUCCESS: Driver initialized successfully > + @retval EFI_LOAD_ERROR: Failed to Initialize or has been loa= ded > + @retval EFI_OUT_OF_RESOURCES Could not allocate needed resources > + > +**/ > +EFI_STATUS > +EFIAPI > +StaticSkuConfigDataDxeEntry ( > + IN EFI_HANDLE ImageHandle, > + IN EFI_SYSTEM_TABLE *SystemTable > +) > +{ > + EFI_STATUS Status; > + UBA_CONFIG_DATABASE_PROTOCOL *UbaConfigProtocol =3D NULL; > + > + Status =3D gBS->LocateProtocol ( > + &gUbaConfigDatabaseProtocolGuid, > + NULL, > + &UbaConfigProtocol > + ); > + if (EFI_ERROR(Status)) { > + return Status; > + } > + > + Status =3D InstallMpTableData (UbaConfigProtocol); > + if (EFI_ERROR(Status)) { > + return Status; > + } > + > + Status =3D InstallPirqData (UbaConfigProtocol); > + if (EFI_ERROR(Status)) { > + return Status; > + } > + > + Status =3D InstallAcpiFixupTableData (UbaConfigProtocol); > + if (EFI_ERROR(Status)) { > + return Status; > + } > + > + return Status; > +} > diff --git a/Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaMain/StaticSkuData= Dxe/StaticSkuDataDxe.h b/Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaMain/Sta= ticSkuDataDxe/StaticSkuDataDxe.h > new file mode 100644 > index 0000000000..e54191d4f7 > --- /dev/null > +++ b/Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaMain/StaticSkuDataDxe/Sta= ticSkuDataDxe.h > @@ -0,0 +1,41 @@ > +/** @file > + UBA static sku data update dxe driver. > + > + @copyright > + Copyright 2013 - 2022 Intel Corporation.
> + > + SPDX-License-Identifier: BSD-2-Clause-Patent > +**/ > + > +#ifndef _STATIC_SKU_DATA_DXE_H_ > +#define _STATIC_SKU_DATA_DXE_H_ > + > +#include > +#include > + > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > + > +EFI_STATUS > +InstallMpTableData ( > + IN UBA_CONFIG_DATABASE_PROTOCOL *UbaConfigProtocol > +); > + > +EFI_STATUS > +InstallPirqData ( > + IN UBA_CONFIG_DATABASE_PROTOCOL *UbaConfigProtocol > +); > + > +EFI_STATUS > +InstallAcpiFixupTableData ( > + IN UBA_CONFIG_DATABASE_PROTOCOL *UbaConfigProtocol > +); > + > +#endif // _STATIC_SKU_DATA_DXE_H_ > diff --git a/Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaMain/StaticSkuData= Dxe/StaticSkuDataDxe.inf b/Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaMain/S= taticSkuDataDxe/StaticSkuDataDxe.inf > new file mode 100644 > index 0000000000..97a1931c84 > --- /dev/null > +++ b/Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaMain/StaticSkuDataDxe/Sta= ticSkuDataDxe.inf > @@ -0,0 +1,59 @@ > +## @file > +# Static Board Data DXE Driver. > +# > +# @copyright > +# Copyright 2018 - 2022 Intel Corporation.
> +# > +# SPDX-License-Identifier: BSD-2-Clause-Patent > +## > + > +[Defines] > + INF_VERSION =3D 0x00010005 > + BASE_NAME =3D StaticSkuDataDxeBaseline > + FILE_GUID =3D 2C03C058-4305-7829-7E84-C7B3D6232F4= 2 > + MODULE_TYPE =3D DXE_DRIVER > + VERSION_STRING =3D 1.0 > + > + ENTRY_POINT =3D StaticSkuConfigDataDxeEntry > + > +# > +# The following information is for reference only and not required by th= e build tools. > +# > +# VALID_ARCHITECTURES =3D x64 > +# > + > +[Sources] > + StaticSkuDataDxe.c > + StaticSkuDataDxe.h > + DeviceDataInstall.c > + PlatformDeviceDataSRP10nm.c > + AcpiStaticData.c > + > +[Packages] > + MdePkg/MdePkg.dec > + MdeModulePkg/MdeModulePkg.dec > + WhitleySiliconPkg/SiliconPkg.dec > + WhitleySiliconPkg/CpRcPkg.dec > + WhitleyOpenBoardPkg/PlatformPkg.dec > + > +[LibraryClasses] > + BaseLib > + BaseMemoryLib > + MemoryAllocationLib > + UefiBootServicesTableLib > + UefiDriverEntryPoint > + UefiLib > + DebugLib > + IoLib > + HobLib > + > +[Guids] > + gEfiPlatformInfoGuid > + > +[Protocols] > + gUbaConfigDatabaseProtocolGuid > + > +[Depex] > + gEfiPlatformTypeWilsonCitySMTProtocolGuid OR > + gEfiPlatformTypeWilsonCityRPProtocolGuid OR > + gEfiPlatformTypeJunctionCityProtocolGuid > diff --git a/Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaRpBoards.dsc b/Pla= tform/Intel/WhitleyOpenBoardPkg/Uba/UbaRpBoards.dsc > index f37093bccd..48b26de427 100644 > --- a/Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaRpBoards.dsc > +++ b/Platform/Intel/WhitleyOpenBoardPkg/Uba/UbaRpBoards.dsc > @@ -30,6 +30,11 @@ $(RP_PKG)/Uba/BoardInit/Pei/BoardInitPei.inf { > } > =20 > [Components.X64] > +# > +# Currently shared by all platforms > +# > +$(RP_PKG)/Uba/UbaMain/StaticSkuDataDxe/StaticSkuDataDxe.inf > + > # > # Platform TypeWilsonCityRP > # > --=20 > 2.27.0.windows.1