From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by mx.groups.io with SMTP id smtpd.web09.2673.1581502018510087127 for ; Wed, 12 Feb 2020 02:06:58 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=tyudw6GU; spf=pass (domain: intel.com, ip: 192.55.52.115, mailfrom: rangasai.v.chaganty@intel.com) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga103.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 12 Feb 2020 02:06:58 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.70,428,1574150400"; d="scan'208";a="313358664" Received: from fmsmsx103.amr.corp.intel.com ([10.18.124.201]) by orsmga001.jf.intel.com with ESMTP; 12 Feb 2020 02:06:57 -0800 Received: from fmsmsx157.amr.corp.intel.com (10.18.116.73) by FMSMSX103.amr.corp.intel.com (10.18.124.201) with Microsoft SMTP Server (TLS) id 14.3.439.0; Wed, 12 Feb 2020 02:06:57 -0800 Received: from FMSEDG001.ED.cps.intel.com (10.1.192.133) by FMSMSX157.amr.corp.intel.com (10.18.116.73) with Microsoft SMTP Server (TLS) id 14.3.439.0; Wed, 12 Feb 2020 02:06:56 -0800 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (104.47.56.172) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (TLS) id 14.3.439.0; Wed, 12 Feb 2020 02:06:56 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=d5I3gaQR6Ix09T2TH9dGzMk/23IDTpxHWNV3jdytqjP0NcpNeSmElJ0VUeQ4jqvtK+cmlp/RuXwLSV8jhRfBsLq7bkZqObEMoW67FygRfIhppK6x0R8LK587x13eP/5nzhyB5z36VCWmdJUjdK91IUhQX+eU5lE8WmSH3o/IWZeemlEqW85B63xthFAIdrvSYhWy9MnGNINimKFdjwH3kQyRrk9Ju6iWeKSYqrRcisX41HnqdOI91qcnXDtXjkgxhHeft+5VZNq67ZHlAAX6c+oodln7TtQrrQxZUpsa0DCWzWu1pr32FVsURxJCMMOXzvr+Dd7JUZe0P8djv8bKnQ== 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-SenderADCheck; bh=F1+sIyPc4f+O9I7cIR/NGy5kPIb3sSv1adDxwrA/8y0=; b=ZUsCwViq06G9i1M8LD9ow1VMMtF/pttbiBi/KFbw/AeR7SGthyuuSYIpHe0z1DwwJjsfH621U50tRNRAUn7Rq4ujJ0PjDdX6e0gHUNCOG/SSD6elYIWU0lULmKDudsqvoIIA0sp/EeDeu7T+pHIxL0dmtmdZENt3aycqPkhcmtKyPRjIjs8vtKnpyG/84wi0We+uurz6wKM2ccBg0eKWC4gVZBaLwlpVJUDeiuFMxPQz+0KXaEwU9BKKEJ+A6NrgUeGgHJdkLKL7jBmEixOill3q44+GLUraQr94fXk3yGYIh2GHgFww2LcGzDipgu/rm0x5DoMDsNgOXFQfq+SrUQ== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=F1+sIyPc4f+O9I7cIR/NGy5kPIb3sSv1adDxwrA/8y0=; b=tyudw6GU5w2KyGE1sNmdlxdXe7q+c2slAeXO0FBvnZz5NzCAOcym5131LJ5pYNC70x+5ySbMnA0UVwf9/RnRpQHh3dbqk4v9s5fstlpZaJ290xZVLMmnN77V0BdYgG0LfOsmUnYBzcJeKScSJKVWOvt//CzZOwQ+EKqcoZM2XsM= Received: from BY5PR11MB4151.namprd11.prod.outlook.com (10.255.162.214) by BY5PR11MB3912.namprd11.prod.outlook.com (10.255.163.18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2707.26; Wed, 12 Feb 2020 10:06:54 +0000 Received: from BY5PR11MB4151.namprd11.prod.outlook.com ([fe80::85c1:670e:7f34:6ca9]) by BY5PR11MB4151.namprd11.prod.outlook.com ([fe80::85c1:670e:7f34:6ca9%6]) with mapi id 15.20.2707.030; Wed, 12 Feb 2020 10:06:54 +0000 From: "Chaganty, Rangasai V" To: "Esakkithevar, Kathappan" , "devel@edk2.groups.io" CC: "Chiu, Chasel" , "Desimone, Nathaniel L" , "Kethi Reddy, Deepika" , "Agyeman, Prince" Subject: Re: [edk2-platforms] [PATCH v2 2/7] CometlakeOpenBoardPkg/CometlakeURvp: Add headers Thread-Topic: [edk2-platforms] [PATCH v2 2/7] CometlakeOpenBoardPkg/CometlakeURvp: Add headers Thread-Index: AQHV4Q9dof+cb+LRJECjO0LRHjhY3KgXViHQ Date: Wed, 12 Feb 2020 10:06:54 +0000 Message-ID: References: <20200211191241.53188-1-kathappan.esakkithevar@intel.com> <20200211191241.53188-3-kathappan.esakkithevar@intel.com> In-Reply-To: <20200211191241.53188-3-kathappan.esakkithevar@intel.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-reaction: no-action dlp-version: 11.2.0.6 dlp-product: dlpe-windows authentication-results: spf=none (sender IP is ) smtp.mailfrom=rangasai.v.chaganty@intel.com; x-originating-ip: [134.134.136.223] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: bbee0b9c-80d2-4401-b0cc-08d7afa34988 x-ms-traffictypediagnostic: BY5PR11MB3912: x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-forefront-prvs: 0311124FA9 x-forefront-antispam-report: SFV:NSPM;SFS:(10019020)(39860400002)(136003)(376002)(396003)(346002)(366004)(189003)(199004)(55016002)(76116006)(66946007)(9686003)(53546011)(66556008)(71200400001)(66476007)(478600001)(30864003)(66446008)(5660300002)(54906003)(52536014)(33656002)(6506007)(7696005)(8676002)(316002)(110136005)(186003)(86362001)(64756008)(26005)(81156014)(107886003)(2906002)(81166006)(8936002)(4326008);DIR:OUT;SFP:1102;SCL:1;SRVR:BY5PR11MB3912;H:BY5PR11MB4151.namprd11.prod.outlook.com;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;MX:1;A:1; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: mBhlQTc6SMWn3WkzhMs1GumWWCIwOIjakFUpN8JtcQPdtYsUiUIcutTjyE0Ag1pXtfgL+Lvh+SIuAsJ/AWGAyNqAUUJE89Smthhlu0/83/l9SZlRXsFTnhQKryZwEDp9LotpPmx0Fn1lK10yyTlVpIGoGFqtSwUJX551hBninsix5jhQW9UZgIu+XL+VIjlfCyhIVmRZOBaoYfN2VBObaphyuXIpCARRJkNpCpqN3QyxHKRktQT74klOuyVXFH4anR32vbMBJUU390bvhguCbyIx08ChdNTcKKIe4qh3Q3tZVuATxpDtCoUDPNkZcvIi6OtBdL2cL+Z4TQKTkpJvPMhnWzeh+D8xrheFXqbOJG1tYnMbONICQxG0sfJTOJpYpmKRkP10F1DU1ndgdqFw4xsII0Fnc+55U4DNu0z2G+5iwHxMlPwyKAn0Y4ozF0Fh1I4muFN/H1AZISP2poPGSgWocTQAfBl+peU9wtsVKDC14rZtUiNVb1kpb1JFGWLfMcEoA82xSy/rxEYFThH2Xw== x-ms-exchange-antispam-messagedata: /te8r2WhvvSEkQaqQ5zUEyjmq9tRi9IaWuaIUrQYyVQx+kLMxXA29ePMdP0qLjHGRPK6hkarpqsuF2XX/B8YZvoyg52kBxUof+0TgN0q9FdpisiE6oQOaCZk+00O15T6VJROx4mUespL6+9Uv0UM7Q== MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: bbee0b9c-80d2-4401-b0cc-08d7afa34988 X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Feb 2020 10:06:54.2500 (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: sb+TkUVneValXDb3GHvBsylEJskZmSXGCMle30qVgrd7LZbG+JCY3TKzQMGVrpJI8hR9v2ahx03aBrGva0y/2VAZxazFjUtr5QGMj2iEAiE= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR11MB3912 Return-Path: rangasai.v.chaganty@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Reviewed-by: Sai Chaganty -----Original Message----- From: Esakkithevar, Kathappan =20 Sent: Tuesday, February 11, 2020 11:13 AM To: devel@edk2.groups.io Cc: Chaganty, Rangasai V ; Chiu, Chasel ; Desimone, Nathaniel L = ; Kethi Reddy, Deepika ; Agyeman, Prince Subject: [edk2-platforms] [PATCH v2 2/7] CometlakeOpenBoardPkg/CometlakeURv= p: Add headers REF:https://bugzilla.tianocore.org/show_bug.cgi?id=3D2280 Header files for the CometlakeURvp board instance. Signed-off-by: Kathappan Esakkithevar Cc: Sai Chaganty Cc: Chasel Chiu Cc: Nate DeSimone Cc: Deepika Kethi Reddy Cc: Prince Agyeman --- .../CometlakeURvp/Include/Fdf/FlashMapInclude.fdf | 49 ++++++++ .../CometlakeURvp/Include/PeiPlatformHookLib.h | 131 +++++++++++++++++= ++++ .../CometlakeURvp/Include/PeiPlatformLib.h | 40 +++++++ .../CometlakeURvp/Include/PlatformBoardConfig.h | 105 +++++++++++++++++ .../CometlakeURvp/Include/PlatformInfo.h | 44 +++++++ 5 files changed, 369 insertions(+) create mode 100644 Platform/Intel/CometlakeOpenBoardPkg/CometlakeURvp/Incl= ude/Fdf/FlashMapInclude.fdf create mode 100644 Platform/Intel/CometlakeOpenBoardPkg/CometlakeURvp/Incl= ude/PeiPlatformHookLib.h create mode 100644 Platform/Intel/CometlakeOpenBoardPkg/CometlakeURvp/Incl= ude/PeiPlatformLib.h create mode 100644 Platform/Intel/CometlakeOpenBoardPkg/CometlakeURvp/Incl= ude/PlatformBoardConfig.h create mode 100644 Platform/Intel/CometlakeOpenBoardPkg/CometlakeURvp/Incl= ude/PlatformInfo.h diff --git a/Platform/Intel/CometlakeOpenBoardPkg/CometlakeURvp/Include/Fdf= /FlashMapInclude.fdf b/Platform/Intel/CometlakeOpenBoardPkg/CometlakeURvp/I= nclude/Fdf/FlashMapInclude.fdf new file mode 100644 index 0000000000..d9959a79d0 --- /dev/null +++ b/Platform/Intel/CometlakeOpenBoardPkg/CometlakeURvp/Include/Fdf/Fla +++ shMapInclude.fdf @@ -0,0 +1,49 @@ +## @file +# FDF file for the CometlakeURvp board. +# +# Copyright (c) 2020, Intel Corporation. All rights reserved.
# # =20 +SPDX-License-Identifier: BSD-2-Clause-Patent # ## + +#=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D# +# 8 M BIOS - for FSP wrapper +#=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D# +DEFINE FLASH_BASE =3D 0x= FF800000 # +DEFINE FLASH_SIZE =3D 0x= 00800000 # +DEFINE FLASH_BLOCK_SIZE =3D 0x= 00010000 # +DEFINE FLASH_NUM_BLOCKS =3D 0x= 00000080 # +#=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D# + +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashNvStorageOffset =3D 0x= 00000000 # Flash addr (0xFF800000) +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashNvStorageSize =3D 0x= 00040000 # +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashNvStorageVariableOffset =3D 0x= 00000000 # Flash addr (0xFF800000) +SET gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableSize =3D 0x= 0001E000 # +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingOffset =3D=20 +0x0001E000 # Flash addr (0xFF81E000) SET gEfiMdeModulePkgTokenSpaceGuid.P= cdFlashNvStorageFtwWorkingSize =3D 0x00002000 # +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareOffset =3D 0x= 00020000 # Flash addr (0xFF820000) +SET gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize =3D 0x= 00020000 # +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedOffset =3D 0x= 00040000 # Flash addr (0xFF840000) +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedSize =3D 0x= 00050000 # +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvSecurityOffset =3D 0x= 00090000 # Flash addr (0xFF890000) +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvSecuritySize =3D 0x= 00070000 # +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvOsBootOffset =3D 0x= 00100000 # Flash addr (0xFF900000) +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvOsBootSize =3D 0x= 00090000 # +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvUefiBootOffset =3D 0x= 00190000 # Flash addr (0xFF990000) +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvUefiBootSize =3D 0x= 00190000 # +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvPostMemoryOffset =3D 0x= 00320000 # Flash addr (0xFFB20000) +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvPostMemorySize =3D 0x= 00170000 # +SET gSiPkgTokenSpaceGuid.PcdFlashMicrocodeFvOffset =3D 0x= 00490000 # Flash addr (0xFFC90000) +SET gSiPkgTokenSpaceGuid.PcdFlashMicrocodeFvSize =3D 0x= 000B0000 # +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspSOffset =3D 0x= 00540000 # Flash addr (0xFFD40000) +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspSSize =3D 0x= 00070000 # +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspMOffset =3D 0x= 005B0000 # Flash addr (0xFFDB0000) +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspMSize =3D 0x= 000EC000 # +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspTOffset =3D 0x= 0069C000 # Flash addr (0xFFE9C000) +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspTSize =3D 0x= 00014000 # +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedPreMemoryOffset =3D 0x= 006B0000 # Flash addr (0xFFEB0000) +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedPreMemorySize =3D 0x= 00010000 # +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvPreMemoryOffset =3D 0x= 006C0000 # Flash addr (0xFFEC0000) +SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvPreMemorySize =3D 0x= 00140000 # + diff --git a/Platform/Intel/CometlakeOpenBoardPkg/CometlakeURvp/Include/Pei= PlatformHookLib.h b/Platform/Intel/CometlakeOpenBoardPkg/CometlakeURvp/Incl= ude/PeiPlatformHookLib.h new file mode 100644 index 0000000000..690054d2e9 --- /dev/null +++ b/Platform/Intel/CometlakeOpenBoardPkg/CometlakeURvp/Include/PeiPlat +++ formHookLib.h @@ -0,0 +1,131 @@ +/** @file + + Copyright (c) 2020, Intel Corporation. All rights reserved.
+ SPDX-License-Identifier: BSD-2-Clause-Patent **/ + +#ifndef _PEI_PLATFORM_HOOK_LIB_H_ +#define _PEI_PLATFORM_HOOK_LIB_H_ + +#include +#include +#include + + +//EC Command to provide one byte of debug indication #define=20 +BSSB_DEBUG_INDICATION 0xAE +/** + Configure EC for specific devices + + @param[in] PchLan - The PchLan of PCH_SETUP variable. + @param[in] BootMode - The current boot mode. +**/ +VOID +EcInit ( + IN UINT8 PchLan, + IN EFI_BOOT_MODE BootMode + ); + +/** + Checks if Premium PMIC present + + @retval TRUE if present + @retval FALSE it discrete/other PMIC **/ BOOLEAN=20 +IsPremiumPmicPresent ( + VOID + ); + +/** + Pmic Programming to supprort LPAL Feature + + @retval NONE +**/ +VOID +PremiumPmicDisableSlpS0Voltage ( + VOID + ); + +/** +Pmic Programming to supprort LPAL Feature + @retval NONE +**/ +VOID +PremiumPmicEnableSlpS0Voltage( + VOID + ); + +/** + Do platform specific programming pre-memory. For example, EC init,=20 +Chipset programming + + @retval Status +**/ +EFI_STATUS +PlatformSpecificInitPreMem ( + VOID + ); + +/** + Do platform specific programming post-memory. + + @retval Status +**/ +EFI_STATUS +PlatformSpecificInit ( + VOID + ); + +/** + Configure GPIO and SIO Before Memory is ready. + + @retval EFI_SUCCESS Operation success. +**/ +EFI_STATUS +BoardInitPreMem ( + VOID + ); + +/** + Configure GPIO and SIO + + @retval EFI_SUCCESS Operation success. +**/ +EFI_STATUS +BoardInit ( + VOID + ); + +/** +Voltage Margining Routine + +@retval EFI_SUCCESS Operation success +**/ +EFI_STATUS +VoltageMarginingRoutine( + VOID + ); + +/** + Detect recovery mode + + @retval EFI_SUCCESS System in Recovery Mode + @retval EFI_UNSUPPORTED System doesn't support Recovery Mode + @retval EFI_NOT_FOUND System is not in Recovery Mode +**/ +EFI_STATUS +IsRecoveryMode ( + VOID + ); + +/** + Early board Configuration before Memory is ready. + + @retval EFI_SUCCESS Operation success. +**/ +EFI_STATUS +BoardInitEarlyPreMem ( + VOID + ); +#endif + diff --git a/Platform/Intel/CometlakeOpenBoardPkg/CometlakeURvp/Include/Pei= PlatformLib.h b/Platform/Intel/CometlakeOpenBoardPkg/CometlakeURvp/Include/= PeiPlatformLib.h new file mode 100644 index 0000000000..3443479a52 --- /dev/null +++ b/Platform/Intel/CometlakeOpenBoardPkg/CometlakeURvp/Include/PeiPlat +++ formLib.h @@ -0,0 +1,40 @@ +/** @file + + Copyright (c) 2020, Intel Corporation. All rights reserved.
+ SPDX-License-Identifier: BSD-2-Clause-Patent **/ + +#ifndef _PEI_PLATFORM_LIB_H_ +#define _PEI_PLATFORM_LIB_H_ + + + +#define PEI_DEVICE_DISABLED 0 +#define PEI_DEVICE_ENABLED 1 + +typedef struct { + UINT8 Register; + UINT32 Value; +} PCH_GPIO_DEV; + +// +// GPIO Initialization Data Structure +// +typedef struct{ + PCH_GPIO_DEV Use_Sel; + PCH_GPIO_DEV Use_Sel2; + PCH_GPIO_DEV Use_Sel3; + PCH_GPIO_DEV Io_Sel; + PCH_GPIO_DEV Io_Sel2; + PCH_GPIO_DEV Io_Sel3; + PCH_GPIO_DEV Lvl; + PCH_GPIO_DEV Lvl2; + PCH_GPIO_DEV Lvl3; + PCH_GPIO_DEV Inv; + PCH_GPIO_DEV Blink; + PCH_GPIO_DEV Rst_Sel; + PCH_GPIO_DEV Rst_Sel2; +} GPIO_INIT_STRUCT; + +#endif + diff --git a/Platform/Intel/CometlakeOpenBoardPkg/CometlakeURvp/Include/Pla= tformBoardConfig.h b/Platform/Intel/CometlakeOpenBoardPkg/CometlakeURvp/Inc= lude/PlatformBoardConfig.h new file mode 100644 index 0000000000..4d286b897a --- /dev/null +++ b/Platform/Intel/CometlakeOpenBoardPkg/CometlakeURvp/Include/Platfor +++ mBoardConfig.h @@ -0,0 +1,105 @@ +/** @file + Header file for Platform Boards Configurations. + + + Copyright (c) 2020, Intel Corporation. All rights reserved.
+ SPDX-License-Identifier: BSD-2-Clause-Patent **/ + +#ifndef _PLATFORM_BOARD_CONFIG_H +#define _PLATFORM_BOARD_CONFIG_H + +#include +#include +#include +#include +#include + +#define IS_ALIGNED(addr, size) (((addr) & (size - 1)) ? 0 : 1) +#define ALIGN16(size) (IS_ALIGNED(size, 16) ? size : ((size + 16)= & 0xFFF0)) + +#define BOARD_CONFIG_BLOCK_PEI_PREMEM_VERSION 0x00000001 #define=20 +BOARD_CONFIG_BLOCK_PEI_POSTMEM_VERSION 0x00000001 #define=20 +BOARD_CONFIG_BLOCK_DXE_VERSION 0x00000001 #define=20 +BOARD_NO_BATTERY_SUPPORT 0 #define BOARD_REAL_BATTERY_SUPPORTED BIT0=20 +#define BOARD_VIRTUAL_BATTERY_SUPPORTED BIT1 + +#pragma pack(1) + +typedef struct { + CONFIG_BLOCK_HEADER Header; ///< Offset 0-27 Config Block= Header +} BOARD_CONFIG_BLOCK; + +typedef struct { + UINT8 GpioSupport; + UINT32 WakeGpioNo; + UINT8 HoldRstExpanderNo; + UINT32 HoldRstGpioNo; + BOOLEAN HoldRstActive; + UINT8 PwrEnableExpanderNo; + UINT32 PwrEnableGpioNo; + BOOLEAN PwrEnableActive; +} SWITCH_GRAPHIC_GPIO; + +typedef struct { + UINT8 ClkReqNumber : 4; + UINT8 ClkReqSupported : 1; + UINT8 DeviceResetPadActiveHigh : 1; + UINT32 DeviceResetPad; +} ROOT_PORT_CLK_INFO; + +typedef struct { + UINT8 Section; + UINT8 Pin; +} EXPANDER_GPIO_CONFIG; + +typedef enum { + BoardGpioTypePch, + BoardGpioTypeExpander, + BoardGpioTypeNotSupported =3D 0xFF +} BOARD_GPIO_TYPE; + +typedef struct { + UINT8 Type; + UINT8 Reserved[3]; // alignment for COMMON_GPIO_CONFIG + union { + UINT32 Pin; + EXPANDER_GPIO_CONFIG Expander; + } u; +} BOARD_GPIO_CONFIG; + +// Do not change the encoding. It must correspond with PCH_PCIE_CLOCK_USAG= E from PCH RC. +#define NOT_USED 0xFF +#define FREE_RUNNING 0x80 +#define LAN_CLOCK 0x70 +#define PCIE_PEG 0x40 +#define PCIE_PCH 0x00 + +typedef struct { + UINT32 ClockUsage; + UINT32 ClkReqSupported; +} PCIE_CLOCK_CONFIG; + +typedef union { + UINT64 Blob; + BOARD_GPIO_CONFIG BoardGpioConfig; + ROOT_PORT_CLK_INFO Info; + PCIE_CLOCK_CONFIG PcieClock; +} PCD64_BLOB; + +typedef union { + UINT32 Blob; + USB20_AFE Info; +} PCD32_BLOB; + +#ifndef IO_EXPANDER_DISABLED +#define IO_EXPANDER_DISABLED 0xFF +#endif + +#define SPD_DATA_SIZE 512 + +#pragma pack() + +#endif // _PLATFORM_BOARD_CONFIG_H + diff --git a/Platform/Intel/CometlakeOpenBoardPkg/CometlakeURvp/Include/Pla= tformInfo.h b/Platform/Intel/CometlakeOpenBoardPkg/CometlakeURvp/Include/Pl= atformInfo.h new file mode 100644 index 0000000000..f8854485b4 --- /dev/null +++ b/Platform/Intel/CometlakeOpenBoardPkg/CometlakeURvp/Include/Platfor +++ mInfo.h @@ -0,0 +1,44 @@ +/** @file + GUID used for Platform Info Data entries in the HOB list. + + + Copyright (c) 2020, Intel Corporation. All rights reserved.
+ SPDX-License-Identifier: BSD-2-Clause-Patent **/ + +#ifndef _PLATFORM_INFO_H_ +#define _PLATFORM_INFO_H_ + +#pragma pack(1) + +/// +/// PCH_GPIO_PAD is equivalent to GPIO_PAD which is defined in=20 +GpioConfig.h /// typedef UINT32 PCH_GPIO_PAD; //Copied from=20 +GpioConfig.h (need to change it based on include) + +typedef struct { +UINT8 Expander; +UINT8 Pin; +UINT16 Reserved; // Reserved for future use +} IO_EXPANDER_PAD; + +typedef union { +PCH_GPIO_PAD PchGpio; +IO_EXPANDER_PAD IoExpGpio; +} GPIO_PAD_CONFIG; + +typedef struct { +UINT8 GpioType; // 0: Disabled (no GPIO support), 1: PCH= , 2: I/O Expander +UINT8 Reserved[3]; // Reserved for future use +GPIO_PAD_CONFIG GpioData; +} PACKED_GPIO_CONFIG; + +typedef union { +PACKED_GPIO_CONFIG PackedGpio; +UINT64 Data64; +} COMMON_GPIO_CONFIG; + +#pragma pack() + +#endif + -- 2.16.2.windows.1