From nobody Thu Dec 18 10:50:48 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+77131+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+77131+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=linux.microsoft.com ARC-Seal: i=1; a=rsa-sha256; t=1624656178; cv=none; d=zohomail.com; s=zohoarc; b=Ob6iuIB2K/VFYYvglMNGsHa+qgPsIEFNCjHBnrVH16SKRJqjKqWUCiv+Zb7CHU2ffpoRjYm1DkRFhFIYJrXbTQmsoR78wsRKH4nC7lzXVfTSg/fm8SlNobf0Dcq1Rd8Qw2fYGbSwaVfzPW7TS7rTXwXF8N/q5Ee2fAaARn6gApk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1624656178; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=cV79yEGOzIHfKuP3g10EuJcauekGJO1MHDLqY4Bo84c=; b=UYi4lYP8bWGRpl+0fYHs2/vfDdwMpXNkbFwfyXxqQiPAy+EiShj1XXv7L6Y+MDPMxIIYXmZT5++TNPmk+LmICsD/6RMKPT1EZBqm+f4uQdl+La8KEHRxYzgPTBu5jAE5Q2h29mWmbViHsVWA2IIDBNHPlI2ERGHNRaU6Z9yaUhA= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+77131+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1624656178286761.5696990373515; Fri, 25 Jun 2021 14:22:58 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id GuvCYY1788612xajD68es6ie; Fri, 25 Jun 2021 14:22:57 -0700 X-Received: from linux.microsoft.com (linux.microsoft.com [13.77.154.182]) by mx.groups.io with SMTP id smtpd.web11.362.1624656172420915055 for ; Fri, 25 Jun 2021 14:22:52 -0700 X-Received: from localhost.localdomain (unknown [167.220.2.74]) by linux.microsoft.com (Postfix) with ESMTPSA id 2F88D20B83F5; Fri, 25 Jun 2021 14:22:52 -0700 (PDT) DKIM-Filter: OpenDKIM Filter v2.11.0 linux.microsoft.com 2F88D20B83F5 From: "Michael Kubacki" To: devel@edk2.groups.io Cc: Agyeman Prince , Nate DeSimone Subject: [edk2-devel] [edk2-platforms][PATCH v4 34/41] SimicsIch10Pkg: Remove PCH SPI SMM Protocol from package Date: Fri, 25 Jun 2021 17:21:13 -0400 Message-Id: <20210625212120.235-35-mikuback@linux.microsoft.com> In-Reply-To: <20210625212120.235-1-mikuback@linux.microsoft.com> References: <20210625212120.235-1-mikuback@linux.microsoft.com> MIME-Version: 1.0 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,mikuback@linux.microsoft.com X-Gm-Message-State: 3X03NbDzZl4o82A4YT8RHQprx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1624656177; bh=BLy32ub+lIM4Euu4+O4WCdi7vUNTbLCT7esfLUFEoms=; h=Cc:Date:From:Reply-To:Subject:To; b=lNkUPxxD7n/t2lOJycMJOITJ4Dy33f32lAUWcCtZlFAHB9XaxFQ2dYfpzN0jgpfbHYc ZK01vbronerrYnjYZyhvJ7eo6iLzz+rrKPxjDOWvMZRvE0S6uDvQs2rKShhSOpKzueLaP xNnliHWdfaFh1Ky9TOHiOPSeotMLy4vPtKE= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" From: Michael Kubacki REF:https://bugzilla.tianocore.org/show_bug.cgi?id=3D3307 gEfiSmmSpiProtocolGuid is now declared in IntelSiliconPkg.dec. This change updates Ich10Pkg to remove the protocol declaration in the package and update libraries and modules to use the protocol from IntelSiliconPkg. Cc: Agyeman Prince Signed-off-by: Michael Kubacki Reviewed-by: Nate DeSimone --- Silicon/Intel/SimicsIch10Pkg/LibraryPrivate/BasePchSpiCommonLib/SpiCommon.= c | 24 +- Silicon/Intel/SimicsIch10Pkg/Spi/Smm/PchSpi.c = | 4 +- Silicon/Intel/SimicsIch10Pkg/Ich10Pkg.dec = | 5 - Silicon/Intel/SimicsIch10Pkg/Include/Protocol/Spi.h = | 295 -------------------- Silicon/Intel/SimicsIch10Pkg/IncludePrivate/Library/PchSpiCommonLib.h = | 26 +- Silicon/Intel/SimicsIch10Pkg/Spi/Smm/PchSpiSmm.inf = | 3 +- 6 files changed, 29 insertions(+), 328 deletions(-) diff --git a/Silicon/Intel/SimicsIch10Pkg/LibraryPrivate/BasePchSpiCommonLi= b/SpiCommon.c b/Silicon/Intel/SimicsIch10Pkg/LibraryPrivate/BasePchSpiCommo= nLib/SpiCommon.c index f2907ef53bfc..fc2a8be76b6a 100644 --- a/Silicon/Intel/SimicsIch10Pkg/LibraryPrivate/BasePchSpiCommonLib/SpiCo= mmon.c +++ b/Silicon/Intel/SimicsIch10Pkg/LibraryPrivate/BasePchSpiCommonLib/SpiCo= mmon.c @@ -158,7 +158,7 @@ PchPmTimerStallRuntimeSafe ( EFI_STATUS EFIAPI SpiProtocolFlashRead ( - IN EFI_SPI_PROTOCOL *This, + IN PCH_SPI_PROTOCOL *This, IN FLASH_REGION_TYPE FlashRegionType, IN UINT32 Address, IN UINT32 ByteCount, @@ -197,7 +197,7 @@ SpiProtocolFlashRead ( EFI_STATUS EFIAPI SpiProtocolFlashWrite ( - IN EFI_SPI_PROTOCOL *This, + IN PCH_SPI_PROTOCOL *This, IN FLASH_REGION_TYPE FlashRegionType, IN UINT32 Address, IN UINT32 ByteCount, @@ -235,7 +235,7 @@ SpiProtocolFlashWrite ( EFI_STATUS EFIAPI SpiProtocolFlashErase ( - IN EFI_SPI_PROTOCOL *This, + IN PCH_SPI_PROTOCOL *This, IN FLASH_REGION_TYPE FlashRegionType, IN UINT32 Address, IN UINT32 ByteCount @@ -274,7 +274,7 @@ SpiProtocolFlashErase ( EFI_STATUS EFIAPI SpiProtocolFlashReadSfdp ( - IN EFI_SPI_PROTOCOL *This, + IN PCH_SPI_PROTOCOL *This, IN UINT8 ComponentNumber, IN UINT32 Address, IN UINT32 ByteCount, @@ -328,7 +328,7 @@ SpiProtocolFlashReadSfdp ( EFI_STATUS EFIAPI SpiProtocolFlashReadJedecId ( - IN EFI_SPI_PROTOCOL *This, + IN PCH_SPI_PROTOCOL *This, IN UINT8 ComponentNumber, IN UINT32 ByteCount, OUT UINT8 *JedecId @@ -379,7 +379,7 @@ SpiProtocolFlashReadJedecId ( EFI_STATUS EFIAPI SpiProtocolFlashWriteStatus ( - IN EFI_SPI_PROTOCOL *This, + IN PCH_SPI_PROTOCOL *This, IN UINT32 ByteCount, IN UINT8 *StatusValue ) @@ -414,7 +414,7 @@ SpiProtocolFlashWriteStatus ( EFI_STATUS EFIAPI SpiProtocolFlashReadStatus ( - IN EFI_SPI_PROTOCOL *This, + IN PCH_SPI_PROTOCOL *This, IN UINT32 ByteCount, OUT UINT8 *StatusValue ) @@ -450,7 +450,7 @@ SpiProtocolFlashReadStatus ( EFI_STATUS EFIAPI SpiProtocolGetRegionAddress ( - IN EFI_SPI_PROTOCOL *This, + IN PCH_SPI_PROTOCOL *This, IN FLASH_REGION_TYPE FlashRegionType, OUT UINT32 *BaseAddress, OUT UINT32 *RegionSize @@ -510,7 +510,7 @@ SpiProtocolGetRegionAddress ( EFI_STATUS EFIAPI SpiProtocolReadPchSoftStrap ( - IN EFI_SPI_PROTOCOL *This, + IN PCH_SPI_PROTOCOL *This, IN UINT32 SoftStrapAddr, IN UINT32 ByteCount, OUT VOID *SoftStrapValue @@ -568,7 +568,7 @@ SpiProtocolReadPchSoftStrap ( EFI_STATUS EFIAPI SpiProtocolReadCpuSoftStrap ( - IN EFI_SPI_PROTOCOL *This, + IN PCH_SPI_PROTOCOL *This, IN UINT32 SoftStrapAddr, IN UINT32 ByteCount, OUT VOID *SoftStrapValue @@ -626,7 +626,7 @@ SpiProtocolReadCpuSoftStrap ( **/ EFI_STATUS SendSpiCmd ( - IN EFI_SPI_PROTOCOL *This, + IN PCH_SPI_PROTOCOL *This, IN FLASH_REGION_TYPE FlashRegionType, IN FLASH_CYCLE_TYPE FlashCycleType, IN UINT32 Address, @@ -897,7 +897,7 @@ SendSpiCmd ( **/ BOOLEAN WaitForSpiCycleComplete ( - IN EFI_SPI_PROTOCOL *This, + IN PCH_SPI_PROTOCOL *This, IN UINTN PchSpiBar0, IN BOOLEAN ErrorCheck ) diff --git a/Silicon/Intel/SimicsIch10Pkg/Spi/Smm/PchSpi.c b/Silicon/Intel/= SimicsIch10Pkg/Spi/Smm/PchSpi.c index 0baf730a4823..e4a81f91316c 100644 --- a/Silicon/Intel/SimicsIch10Pkg/Spi/Smm/PchSpi.c +++ b/Silicon/Intel/SimicsIch10Pkg/Spi/Smm/PchSpi.c @@ -92,11 +92,11 @@ InstallPchSpi ( return Status; } // - // Install the SMM EFI_SPI_PROTOCOL interface + // Install the SMM PCH_SPI_PROTOCOL interface // Status =3D gSmst->SmmInstallProtocolInterface ( &(mSpiInstance->Handle), - &gEfiSmmSpiProtocolGuid, + &gPchSmmSpiProtocolGuid, EFI_NATIVE_INTERFACE, &(mSpiInstance->SpiProtocol) ); diff --git a/Silicon/Intel/SimicsIch10Pkg/Ich10Pkg.dec b/Silicon/Intel/Simi= csIch10Pkg/Ich10Pkg.dec index 8d395a8b4370..58850f54e95c 100644 --- a/Silicon/Intel/SimicsIch10Pkg/Ich10Pkg.dec +++ b/Silicon/Intel/SimicsIch10Pkg/Ich10Pkg.dec @@ -13,8 +13,3 @@ [Defines] =20 [Includes] Include - -[Ppis] - -[Protocols] - gEfiSmmSpiProtocolGuid =3D {0xbd75fe35, 0xfdce, 0x49d7, {0xa9, 0xdd, 0xb= 2, 0x6f, 0x1f, 0xc6, 0xb4, 0x37}} diff --git a/Silicon/Intel/SimicsIch10Pkg/Include/Protocol/Spi.h b/Silicon/= Intel/SimicsIch10Pkg/Include/Protocol/Spi.h deleted file mode 100644 index b0c5b3d0e624..000000000000 --- a/Silicon/Intel/SimicsIch10Pkg/Include/Protocol/Spi.h +++ /dev/null @@ -1,295 +0,0 @@ -/** @file - This file defines the PCH SPI Protocol which implements the - Intel(R) PCH SPI Host Controller Compatibility Interface. - - Copyright (c) 2019 Intel Corporation. All rights reserved.
- - SPDX-License-Identifier: BSD-2-Clause-Patent -**/ - -#ifndef _PCH_SPI_PROTOCOL_H_ -#define _PCH_SPI_PROTOCOL_H_ - -// -// Extern the GUID for protocol users. -// -extern EFI_GUID gEfiSpiProtocolGuid; -extern EFI_GUID gEfiSmmSpiProtocolGuid; - -// -// Forward reference for ANSI C compatibility -// -typedef struct _PCH_SPI_PROTOCOL EFI_SPI_PROTOCOL; - -// -// SPI protocol data structures and definitions -// - -/** - Flash Region Type -**/ -typedef enum { - FlashRegionDescriptor, - FlashRegionBios, - FlashRegionMe, - FlashRegionGbE, - FlashRegionPlatformData, - FlashRegionDer, - FlashRegionAll, - FlashRegionMax -} FLASH_REGION_TYPE; - - -// -// Protocol member functions -// - -/** - Read data from the flash part. - - @param[in] This Pointer to the PCH_SPI_PROTOCOL instance. - @param[in] FlashRegionType The Flash Region type for flash cycle wh= ich is listed in the Descriptor. - @param[in] Address The Flash Linear Address must fall withi= n a region for which BIOS has access permissions. - @param[in] ByteCount Number of bytes in the data portion of t= he SPI cycle. - @param[out] Buffer The Pointer to caller-allocated buffer c= ontaining the dada received. - It is the caller's responsibility to mak= e sure Buffer is large enough for the total number of bytes read. - - @retval EFI_SUCCESS Command succeed. - @retval EFI_INVALID_PARAMETER The parameters specified are not valid. - @retval EFI_DEVICE_ERROR Device error, command aborts abnormally. -**/ -typedef -EFI_STATUS -(EFIAPI *PCH_SPI_FLASH_READ) ( - IN EFI_SPI_PROTOCOL *This, - IN FLASH_REGION_TYPE FlashRegionType, - IN UINT32 Address, - IN UINT32 ByteCount, - OUT UINT8 *Buffer - ); - -/** - Write data to the flash part. Remark: Erase may be needed before write t= o the flash part. - - @param[in] This Pointer to the PCH_SPI_PROTOCOL instance. - @param[in] FlashRegionType The Flash Region type for flash cycle wh= ich is listed in the Descriptor. - @param[in] Address The Flash Linear Address must fall withi= n a region for which BIOS has access permissions. - @param[in] ByteCount Number of bytes in the data portion of t= he SPI cycle. - @param[in] Buffer Pointer to caller-allocated buffer conta= ining the data sent during the SPI cycle. - - @retval EFI_SUCCESS Command succeed. - @retval EFI_INVALID_PARAMETER The parameters specified are not valid. - @retval EFI_DEVICE_ERROR Device error, command aborts abnormally. -**/ -typedef -EFI_STATUS -(EFIAPI *PCH_SPI_FLASH_WRITE) ( - IN EFI_SPI_PROTOCOL *This, - IN FLASH_REGION_TYPE FlashRegionType, - IN UINT32 Address, - IN UINT32 ByteCount, - IN UINT8 *Buffer - ); - -/** - Erase some area on the flash part. - - @param[in] This Pointer to the PCH_SPI_PROTOCOL instance. - @param[in] FlashRegionType The Flash Region type for flash cycle wh= ich is listed in the Descriptor. - @param[in] Address The Flash Linear Address must fall withi= n a region for which BIOS has access permissions. - @param[in] ByteCount Number of bytes in the data portion of t= he SPI cycle. - - @retval EFI_SUCCESS Command succeed. - @retval EFI_INVALID_PARAMETER The parameters specified are not valid. - @retval EFI_DEVICE_ERROR Device error, command aborts abnormally. -**/ -typedef -EFI_STATUS -(EFIAPI *PCH_SPI_FLASH_ERASE) ( - IN EFI_SPI_PROTOCOL *This, - IN FLASH_REGION_TYPE FlashRegionType, - IN UINT32 Address, - IN UINT32 ByteCount - ); - -/** - Read SFDP data from the flash part. - - @param[in] This Pointer to the PCH_SPI_PROTOCOL instance. - @param[in] ComponentNumber The Componen Number for chip select - @param[in] Address The starting byte address for SFDP data = read. - @param[in] ByteCount Number of bytes in SFDP data portion of = the SPI cycle - @param[out] SfdpData The Pointer to caller-allocated buffer c= ontaining the SFDP data received - It is the caller's responsibility to mak= e sure Buffer is large enough for the total number of bytes read - - @retval EFI_SUCCESS Command succeed. - @retval EFI_INVALID_PARAMETER The parameters specified are not valid. - @retval EFI_DEVICE_ERROR Device error, command aborts abnormally. -**/ -typedef -EFI_STATUS -(EFIAPI *PCH_SPI_FLASH_READ_SFDP) ( - IN EFI_SPI_PROTOCOL *This, - IN UINT8 ComponentNumber, - IN UINT32 Address, - IN UINT32 ByteCount, - OUT UINT8 *SfdpData - ); - -/** - Read Jedec Id from the flash part. - - @param[in] This Pointer to the PCH_SPI_PROTOCOL instance. - @param[in] ComponentNumber The Componen Number for chip select - @param[in] ByteCount Number of bytes in JedecId data portion = of the SPI cycle, the data size is 3 typically - @param[out] JedecId The Pointer to caller-allocated buffer c= ontaining JEDEC ID received - It is the caller's responsibility to mak= e sure Buffer is large enough for the total number of bytes read. - - @retval EFI_SUCCESS Command succeed. - @retval EFI_INVALID_PARAMETER The parameters specified are not valid. - @retval EFI_DEVICE_ERROR Device error, command aborts abnormally. -**/ -typedef -EFI_STATUS -(EFIAPI *PCH_SPI_FLASH_READ_JEDEC_ID) ( - IN EFI_SPI_PROTOCOL *This, - IN UINT8 ComponentNumber, - IN UINT32 ByteCount, - OUT UINT8 *JedecId - ); - -/** - Write the status register in the flash part. - - @param[in] This Pointer to the PCH_SPI_PROTOCOL instance. - @param[in] ByteCount Number of bytes in Status data portion o= f the SPI cycle, the data size is 1 typically - @param[in] StatusValue The Pointer to caller-allocated buffer c= ontaining the value of Status register writing - - @retval EFI_SUCCESS Command succeed. - @retval EFI_INVALID_PARAMETER The parameters specified are not valid. - @retval EFI_DEVICE_ERROR Device error, command aborts abnormally. -**/ -typedef -EFI_STATUS -(EFIAPI *PCH_SPI_FLASH_WRITE_STATUS) ( - IN EFI_SPI_PROTOCOL *This, - IN UINT32 ByteCount, - IN UINT8 *StatusValue - ); - -/** - Read status register in the flash part. - - @param[in] This Pointer to the PCH_SPI_PROTOCOL instance. - @param[in] ByteCount Number of bytes in Status data portion o= f the SPI cycle, the data size is 1 typically - @param[out] StatusValue The Pointer to caller-allocated buffer c= ontaining the value of Status register received. - - @retval EFI_SUCCESS Command succeed. - @retval EFI_INVALID_PARAMETER The parameters specified are not valid. - @retval EFI_DEVICE_ERROR Device error, command aborts abnormally. -**/ -typedef -EFI_STATUS -(EFIAPI *PCH_SPI_FLASH_READ_STATUS) ( - IN EFI_SPI_PROTOCOL *This, - IN UINT32 ByteCount, - OUT UINT8 *StatusValue - ); - -/** - Get the SPI region base and size, based on the enum type - - @param[in] This Pointer to the PCH_SPI_PROTOCOL instance. - @param[in] FlashRegionType The Flash Region type for for the base a= ddress which is listed in the Descriptor. - @param[out] BaseAddress The Flash Linear Address for the Region = 'n' Base - @param[out] RegionSize The size for the Region 'n' - - @retval EFI_SUCCESS Read success - @retval EFI_INVALID_PARAMETER Invalid region type given - @retval EFI_DEVICE_ERROR The region is not used -**/ -typedef -EFI_STATUS -(EFIAPI *PCH_SPI_GET_REGION_ADDRESS) ( - IN EFI_SPI_PROTOCOL *This, - IN FLASH_REGION_TYPE FlashRegionType, - OUT UINT32 *BaseAddress, - OUT UINT32 *RegionSize - ); - -/** - Read PCH Soft Strap Values - - @param[in] This Pointer to the PCH_SPI_PROTOCOL instance. - @param[in] SoftStrapAddr PCH Soft Strap address offset from FPSBA. - @param[in] ByteCount Number of bytes in SoftStrap data portio= n of the SPI cycle - @param[out] SoftStrapValue The Pointer to caller-allocated buffer c= ontaining PCH Soft Strap Value. - If the value of ByteCount is 0, the data= type of SoftStrapValue should be UINT16 and SoftStrapValue will be PCH Sof= t Strap Length - It is the caller's responsibility to mak= e sure Buffer is large enough for the total number of bytes read. - - @retval EFI_SUCCESS Command succeed. - @retval EFI_INVALID_PARAMETER The parameters specified are not valid. - @retval EFI_DEVICE_ERROR Device error, command aborts abnormally. -**/ -typedef -EFI_STATUS -(EFIAPI *PCH_SPI_READ_PCH_SOFTSTRAP) ( - IN EFI_SPI_PROTOCOL *This, - IN UINT32 SoftStrapAddr, - IN UINT32 ByteCount, - OUT VOID *SoftStrapValue - ); - -/** - Read CPU Soft Strap Values - - @param[in] This Pointer to the PCH_SPI_PROTOCOL instance. - @param[in] SoftStrapAddr CPU Soft Strap address offset from FCPUS= BA. - @param[in] ByteCount Number of bytes in SoftStrap data portio= n of the SPI cycle. - @param[out] SoftStrapValue The Pointer to caller-allocated buffer c= ontaining CPU Soft Strap Value. - If the value of ByteCount is 0, the data= type of SoftStrapValue should be UINT16 and SoftStrapValue will be PCH Sof= t Strap Length - It is the caller's responsibility to mak= e sure Buffer is large enough for the total number of bytes read. - - @retval EFI_SUCCESS Command succeed. - @retval EFI_INVALID_PARAMETER The parameters specified are not valid. - @retval EFI_DEVICE_ERROR Device error, command aborts abnormally. -**/ -typedef -EFI_STATUS -(EFIAPI *PCH_SPI_READ_CPU_SOFTSTRAP) ( - IN EFI_SPI_PROTOCOL *This, - IN UINT32 SoftStrapAddr, - IN UINT32 ByteCount, - OUT VOID *SoftStrapValue - ); - -/** - These protocols/PPI allows a platform module to perform SPI operations t= hrough the - Intel PCH SPI Host Controller Interface. -**/ -struct _PCH_SPI_PROTOCOL { - /** - This member specifies the revision of this structure. This field is us= ed to - indicate backwards compatible changes to the protocol. - **/ - UINT8 Revision; - PCH_SPI_FLASH_READ FlashRead; ///< Read data fro= m the flash part. - PCH_SPI_FLASH_WRITE FlashWrite; ///< Write data to= the flash part. Remark: Erase may be needed before write to the flash part. - PCH_SPI_FLASH_ERASE FlashErase; ///< Erase some ar= ea on the flash part. - PCH_SPI_FLASH_READ_SFDP FlashReadSfdp; ///< Read SFDP dat= a from the flash part. - PCH_SPI_FLASH_READ_JEDEC_ID FlashReadJedecId; ///< Read Jedec Id= from the flash part. - PCH_SPI_FLASH_WRITE_STATUS FlashWriteStatus; ///< Write the sta= tus register in the flash part. - PCH_SPI_FLASH_READ_STATUS FlashReadStatus; ///< Read status r= egister in the flash part. - PCH_SPI_GET_REGION_ADDRESS GetRegionAddress; ///< Get the SPI r= egion base and size - PCH_SPI_READ_PCH_SOFTSTRAP ReadPchSoftStrap; ///< Read PCH Soft= Strap Values - PCH_SPI_READ_CPU_SOFTSTRAP ReadCpuSoftStrap; ///< Read CPU Soft= Strap Values -}; - -/** - PCH SPI PPI/PROTOCOL revision number - - Revision 1: Initial version -**/ -#define PCH_SPI_SERVICES_REVISION 1 - -#endif diff --git a/Silicon/Intel/SimicsIch10Pkg/IncludePrivate/Library/PchSpiComm= onLib.h b/Silicon/Intel/SimicsIch10Pkg/IncludePrivate/Library/PchSpiCommonL= ib.h index cf60f1fd5881..2c8162ac8170 100644 --- a/Silicon/Intel/SimicsIch10Pkg/IncludePrivate/Library/PchSpiCommonLib.h +++ b/Silicon/Intel/SimicsIch10Pkg/IncludePrivate/Library/PchSpiCommonLib.h @@ -48,7 +48,7 @@ typedef enum { typedef struct { UINT32 Signature; EFI_HANDLE Handle; - EFI_SPI_PROTOCOL SpiProtocol; + PCH_SPI_PROTOCOL SpiProtocol; UINT16 PchAcpiBase; UINTN PchSpiBase; UINT16 ReadPermission; @@ -148,7 +148,7 @@ ReleaseSpiBar0 ( EFI_STATUS EFIAPI SpiProtocolFlashRead ( - IN EFI_SPI_PROTOCOL *This, + IN PCH_SPI_PROTOCOL *This, IN FLASH_REGION_TYPE FlashRegionType, IN UINT32 Address, IN UINT32 ByteCount, @@ -171,7 +171,7 @@ SpiProtocolFlashRead ( EFI_STATUS EFIAPI SpiProtocolFlashWrite ( - IN EFI_SPI_PROTOCOL *This, + IN PCH_SPI_PROTOCOL *This, IN FLASH_REGION_TYPE FlashRegionType, IN UINT32 Address, IN UINT32 ByteCount, @@ -193,7 +193,7 @@ SpiProtocolFlashWrite ( EFI_STATUS EFIAPI SpiProtocolFlashErase ( - IN EFI_SPI_PROTOCOL *This, + IN PCH_SPI_PROTOCOL *This, IN FLASH_REGION_TYPE FlashRegionType, IN UINT32 Address, IN UINT32 ByteCount @@ -216,7 +216,7 @@ SpiProtocolFlashErase ( EFI_STATUS EFIAPI SpiProtocolFlashReadSfdp ( - IN EFI_SPI_PROTOCOL *This, + IN PCH_SPI_PROTOCOL *This, IN UINT8 ComponentNumber, IN UINT32 Address, IN UINT32 ByteCount, @@ -239,7 +239,7 @@ SpiProtocolFlashReadSfdp ( EFI_STATUS EFIAPI SpiProtocolFlashReadJedecId ( - IN EFI_SPI_PROTOCOL *This, + IN PCH_SPI_PROTOCOL *This, IN UINT8 ComponentNumber, IN UINT32 ByteCount, OUT UINT8 *JedecId @@ -259,7 +259,7 @@ SpiProtocolFlashReadJedecId ( EFI_STATUS EFIAPI SpiProtocolFlashWriteStatus ( - IN EFI_SPI_PROTOCOL *This, + IN PCH_SPI_PROTOCOL *This, IN UINT32 ByteCount, IN UINT8 *StatusValue ); @@ -278,7 +278,7 @@ SpiProtocolFlashWriteStatus ( EFI_STATUS EFIAPI SpiProtocolFlashReadStatus ( - IN EFI_SPI_PROTOCOL *This, + IN PCH_SPI_PROTOCOL *This, IN UINT32 ByteCount, OUT UINT8 *StatusValue ); @@ -298,7 +298,7 @@ SpiProtocolFlashReadStatus ( EFI_STATUS EFIAPI SpiProtocolGetRegionAddress ( - IN EFI_SPI_PROTOCOL *This, + IN PCH_SPI_PROTOCOL *This, IN FLASH_REGION_TYPE FlashRegionType, OUT UINT32 *BaseAddress, OUT UINT32 *RegionSize @@ -321,7 +321,7 @@ SpiProtocolGetRegionAddress ( EFI_STATUS EFIAPI SpiProtocolReadPchSoftStrap ( - IN EFI_SPI_PROTOCOL *This, + IN PCH_SPI_PROTOCOL *This, IN UINT32 SoftStrapAddr, IN UINT32 ByteCount, OUT VOID *SoftStrapValue @@ -344,7 +344,7 @@ SpiProtocolReadPchSoftStrap ( EFI_STATUS EFIAPI SpiProtocolReadCpuSoftStrap ( - IN EFI_SPI_PROTOCOL *This, + IN PCH_SPI_PROTOCOL *This, IN UINT32 SoftStrapAddr, IN UINT32 ByteCount, OUT VOID *SoftStrapValue @@ -367,7 +367,7 @@ SpiProtocolReadCpuSoftStrap ( **/ EFI_STATUS SendSpiCmd ( - IN EFI_SPI_PROTOCOL *This, + IN PCH_SPI_PROTOCOL *This, IN FLASH_REGION_TYPE FlashRegionType, IN FLASH_CYCLE_TYPE FlashCycleType, IN UINT32 Address, @@ -388,7 +388,7 @@ SendSpiCmd ( **/ BOOLEAN WaitForSpiCycleComplete ( - IN EFI_SPI_PROTOCOL *This, + IN PCH_SPI_PROTOCOL *This, IN UINTN PchSpiBar0, IN BOOLEAN ErrorCheck ); diff --git a/Silicon/Intel/SimicsIch10Pkg/Spi/Smm/PchSpiSmm.inf b/Silicon/I= ntel/SimicsIch10Pkg/Spi/Smm/PchSpiSmm.inf index 7b60d36c5b9c..35655ed5b5aa 100644 --- a/Silicon/Intel/SimicsIch10Pkg/Spi/Smm/PchSpiSmm.inf +++ b/Silicon/Intel/SimicsIch10Pkg/Spi/Smm/PchSpiSmm.inf @@ -28,6 +28,7 @@ [Defines] =20 [Packages] MdePkg/MdePkg.dec + IntelSiliconPkg/IntelSiliconPkg.dec SimicsIch10Pkg/Ich10Pkg.dec =20 [Sources] @@ -36,7 +37,7 @@ [Sources] =20 =20 [Protocols] - gEfiSmmSpiProtocolGuid # PRODUCES #SERVER_BIOS + gPchSmmSpiProtocolGuid # PRODUCES =20 =20 [Depex] --=20 2.28.0.windows.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#77131): https://edk2.groups.io/g/devel/message/77131 Mute This Topic: https://groups.io/mt/83794823/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-