summaryrefslogtreecommitdiff
path: root/Silicon/AMD/Styx/AmdModulePkg/Include/Ppi/IscpPpi.h
diff options
context:
space:
mode:
Diffstat (limited to 'Silicon/AMD/Styx/AmdModulePkg/Include/Ppi/IscpPpi.h')
-rw-r--r--Silicon/AMD/Styx/AmdModulePkg/Include/Ppi/IscpPpi.h438
1 files changed, 219 insertions, 219 deletions
diff --git a/Silicon/AMD/Styx/AmdModulePkg/Include/Ppi/IscpPpi.h b/Silicon/AMD/Styx/AmdModulePkg/Include/Ppi/IscpPpi.h
index ca59b11..12a6ed9 100644
--- a/Silicon/AMD/Styx/AmdModulePkg/Include/Ppi/IscpPpi.h
+++ b/Silicon/AMD/Styx/AmdModulePkg/Include/Ppi/IscpPpi.h
@@ -1,219 +1,219 @@
-/* $NoKeywords */
-/**
- * @file
- *
- * IscpPpi.h
- *
- * Contains Intra-SoC Communication Protocol-Protocol Interface definitions.
- *
- * @xrefitem bom "File Content Label" "Release Content"
- * @e project: FDK
- * @e sub-project: UEFI
- * @e version: $Revision: 334098 $ @e date: $Date: 2016-01-08 14:21:15 -0600 (Fri, 08 Jan 2016) $
- *
- */
-/*****************************************************************************
-*
-* Copyright 2013 - 2016 ADVANCED MICRO DEVICES, INC. All Rights Reserved.
-*
-* This program and the accompanying materials are licensed and made available
-* under the terms and conditions of the BSD License which accompanies this
-* distribution. The full text of the license may be found at
-* http://opensource.org/licenses/bsd-license.php
-*
-* THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
-* WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR
-* IMPLIED.
-*
-***************************************************************************/
-
-
-#ifndef _PEI_ISCP_PPI_H_
-#define _PEI_ISCP_PPI_H_
-
-/*----------------------------------------------------------------------------------------
- * M O D U L E S U S E D
- *----------------------------------------------------------------------------------------
- */
-#include <Iscp.h>
-
-
-/*----------------------------------------------------------------------------------------
- * D E F I N I T I O N S A N D M A C R O S
- *----------------------------------------------------------------------------------------
- */
-#define PEI_ISCP_PPI_GUID {\
- 0xca2c1ecd, 0xc702, 0x49b1, { 0xae, 0x24, 0x9b, 0x6f, 0xa8, 0x71, 0x3b, 0x23 } \
-}
-
-
-/*----------------------------------------------------------------------------------------
- * T Y P E D E F S A N D S T R U C T U R E S
- *----------------------------------------------------------------------------------------
- */
-typedef struct _EFI_PEI_ISCP_PPI EFI_PEI_ISCP_PPI;
-
-
-/// ISCP Memory Transaction
-typedef
-EFI_STATUS
-(EFIAPI *PEI_ISCP_MEMORY_TRANSACTION)(
- IN CONST EFI_PEI_SERVICES **PeiServices, ///< Pointer to the PEI Services Table
- IN OUT AMD_MEMORY_RANGE_DESCRIPTOR *MemRangeDescriptor ///< Pointer to Memory Range Descriptor
- );
-
-
-/// ISCP Fuse Transaction
-typedef
-EFI_STATUS
-(EFIAPI *PEI_ISCP_FUSE_TRANSACTION)(
- IN CONST EFI_PEI_SERVICES **PeiServices, ///< Pointer to the PEI Services Table
- IN OUT ISCP_FUSE_INFO *FuseInfo ///< Pointer to the Fuse Info structure
- );
-
-
-/// ISCP CPU Retrieve ID Transaction
-typedef
-EFI_STATUS
-(EFIAPI *PEI_ISCP_CPU_RETRIEVE_ID_TRANSACTION)(
- IN CONST EFI_PEI_SERVICES **PeiServices, ///< Pointer to the PEI Services Table
- IN OUT ISCP_CPU_RESET_INFO *CpuResetInfo ///< Pointer to CPU Reset Info structure
- );
-
-
-/// ISCP CPU Reset transaction
-typedef
-EFI_STATUS
-(EFIAPI *PEI_ISCP_CPU_RESET_TRANSACTION)(
- IN CONST EFI_PEI_SERVICES **PeiServices, ///< Pointer to the PEI Services Table
- IN OUT ISCP_CPU_RESET_INFO *CpuResetInfo ///< Pointer to CPU Reset Info structure
- );
-
-
-/// ISCP Get Real-Time-Clock Transaction
-typedef
-EFI_STATUS
-(EFIAPI *PEI_ISCP_GET_RTC_TRANSACTION)(
- IN CONST EFI_PEI_SERVICES **PeiServices, ///< Pointer to the PEI Services Table
- IN OUT ISCP_RTC_INFO *RtcInfo ///< Pointer to the Real-Time-Clock
- );
-
-
-/// ISCP Set Real-Time-Clock Transaction
-typedef
-EFI_STATUS
-(EFIAPI *PEI_ISCP_SET_RTC_TRANSACTION)(
- IN CONST EFI_PEI_SERVICES **PeiServices, ///< Pointer to the PEI Services Table
- IN OUT ISCP_RTC_INFO *RtcInfo ///< Pointer to the Real-Time-Clock
- );
-
-
-/// ISCP Get MAC Address Transaction
-typedef
-EFI_STATUS
-(EFIAPI *PEI_ISCP_GET_MAC_ADDRESS_TRANSACTION)(
- IN CONST EFI_PEI_SERVICES **PeiServices, ///< Pointer to the PEI Services Table
- IN OUT ISCP_MAC_INFO *MacInfo ///< Pointer to the MAC Address info
- );
-
-
-/// ISCP Set MAC Address Transaction
-typedef
-EFI_STATUS
-(EFIAPI *PEI_ISCP_SET_MAC_ADDRESS_TRANSACTION)(
- IN CONST EFI_PEI_SERVICES **PeiServices, ///< Pointer to the PEI Services Table
- IN OUT ISCP_MAC_INFO *MacInfo ///< Pointer to the MAC Address info
- );
-
-
-/// ISCP Update Firmware Volume Block Transaction
-typedef
-EFI_STATUS
-(EFIAPI *PEI_ISCP_UPDATE_FV_BLOCK_TRANSACTION)(
- IN CONST EFI_PEI_SERVICES **PeiServices, ///< Pointer to the PEI Services Table
- IN CONST UINT32 Offset, ///< Offset from base of FV Block
- IN OUT UINT8 *NvData, ///< Pointer to the NV data being stored
- IN CONST UINT32 NvSize ///< Size of NV Data being stored
- );
-
-
-/// SCP Load Firmware Volume Block Transaction
-typedef
-EFI_STATUS
-(EFIAPI *PEI_ISCP_LOAD_FV_BLOCK_TRANSACTION)(
- IN CONST EFI_PEI_SERVICES **PeiServices, ///< Pointer to the PEI Services Table
- IN CONST UINT32 Offset, ///< Offset from base of FV Block
- IN OUT UINT8 *NvData, ///< Pointer to the NV data being stored
- IN CONST UINT32 NvSize ///< Size of NV Data being stored
- );
-
-
-/// ISCP Erase Firmware Volume Block Transaction
-typedef
-EFI_STATUS
-(EFIAPI *PEI_ISCP_ERASE_FV_BLOCK_TRANSACTION)(
- IN CONST EFI_PEI_SERVICES **PeiServices, ///< Pointer to the PEI Services Table
- IN CONST UINT32 Offset, ///< Offset from base of FV Block
- IN CONST UINT32 NvSize ///< Size of NV Data being stored
- );
-
-
-/// ISCP PCIE Reset Transaction
-typedef
-EFI_STATUS
-(EFIAPI *PEI_ISCP_PCIE_RESET_TRANSACTION)(
- IN CONST EFI_PEI_SERVICES **PeiServices, ///< Pointer to the PEI Services Table
- IN OUT ISCP_PCIE_RESET_INFO *PcieResetInfo ///< Pointer to PCIE Reset info structure
- );
-
-
-/// ISCP Send UART Config Transaction
-typedef
-EFI_STATUS
-(EFIAPI *PEI_ISCP_SEND_UART_CONFIG_TRANSACTION)(
- IN CONST EFI_PEI_SERVICES **PeiServices, ///< Pointer to the PEI Services Table
- IN OUT ISCP_UART_INFO *UartInfo ///< Pointer to UART Config info structure
- );
-
-/// ISCP Sata1 get Transaction
-typedef
-EFI_STATUS
-(EFIAPI *PEI_ISCP_SATA1_GET_TRANSACTION)(
- IN CONST EFI_PEI_SERVICES **PeiServices, ///< Pointer to the PEI Services Table
- IN OUT ISCP_SATA1_RESET_INFO *Sata1ResetInfo ///< Pointer to SATA1 reset structure
- );
-
-/// ISCP BMC Present
-typedef
-EFI_STATUS
-(EFIAPI *PEI_ISCP_BMC_PRESENT_TRANSACTION)(
- IN CONST EFI_PEI_SERVICES **PeiServices, ///< Pointer to the PEI Services Table
- OUT ISCP_BMC_PRESENCE_INFO *BmcPresenceInfo ///< Pointer to BMC presence structure
- );
-
-/// This PPI provides several services in PEI to work with the underlying
-/// Intra-SOC Communication Protocol capabilities of the platform. These
-/// services include the ability for PEI to send/receive Firmware Setup data,
-/// retrieve memory data, retrieve fuse data, perform CPU core reset, e.g launch,
-/// retrieve OEM NVRAM transactions.
-struct _EFI_PEI_ISCP_PPI {
- PEI_ISCP_MEMORY_TRANSACTION ExecuteMemoryTransaction;
- PEI_ISCP_FUSE_TRANSACTION ExecuteFuseTransaction;
- PEI_ISCP_CPU_RETRIEVE_ID_TRANSACTION ExecuteCpuRetrieveIdTransaction;
- PEI_ISCP_CPU_RESET_TRANSACTION ExecuteCpuResetTransaction;
- PEI_ISCP_GET_RTC_TRANSACTION ExecuteGetRtcTransaction;
- PEI_ISCP_SET_RTC_TRANSACTION ExecuteSetRtcTransaction;
- PEI_ISCP_GET_MAC_ADDRESS_TRANSACTION ExecuteGetMacAddressTransaction;
- PEI_ISCP_SET_MAC_ADDRESS_TRANSACTION ExecuteSetMacAddressTransaction;
- PEI_ISCP_UPDATE_FV_BLOCK_TRANSACTION ExecuteUpdateFvBlock;
- PEI_ISCP_LOAD_FV_BLOCK_TRANSACTION ExecuteLoadNvBlock;
- PEI_ISCP_ERASE_FV_BLOCK_TRANSACTION ExecuteEraseNvBlock;
- PEI_ISCP_PCIE_RESET_TRANSACTION ExecutePcieResetTransaction;
- PEI_ISCP_SEND_UART_CONFIG_TRANSACTION ExecuteSendUartConfigTransaction;
- PEI_ISCP_SATA1_GET_TRANSACTION ExecuteSata1GetTransaction;
- PEI_ISCP_BMC_PRESENT_TRANSACTION ExecuteBmcPresentTransaction;
-};
-
-extern EFI_GUID gPeiIscpPpiGuid;
-
-#endif // #ifndef _PEI_ISCP_PPI_H_
+/* $NoKeywords */
+/**
+ * @file
+ *
+ * IscpPpi.h
+ *
+ * Contains Intra-SoC Communication Protocol-Protocol Interface definitions.
+ *
+ * @xrefitem bom "File Content Label" "Release Content"
+ * @e project: FDK
+ * @e sub-project: UEFI
+ * @e version: $Revision: 334098 $ @e date: $Date: 2016-01-08 14:21:15 -0600 (Fri, 08 Jan 2016) $
+ *
+ */
+/*****************************************************************************
+*
+* Copyright 2013 - 2016 ADVANCED MICRO DEVICES, INC. All Rights Reserved.
+*
+* This program and the accompanying materials are licensed and made available
+* under the terms and conditions of the BSD License which accompanies this
+* distribution. The full text of the license may be found at
+* http://opensource.org/licenses/bsd-license.php
+*
+* THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
+* WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR
+* IMPLIED.
+*
+***************************************************************************/
+
+
+#ifndef _PEI_ISCP_PPI_H_
+#define _PEI_ISCP_PPI_H_
+
+/*----------------------------------------------------------------------------------------
+ * M O D U L E S U S E D
+ *----------------------------------------------------------------------------------------
+ */
+#include <Iscp.h>
+
+
+/*----------------------------------------------------------------------------------------
+ * D E F I N I T I O N S A N D M A C R O S
+ *----------------------------------------------------------------------------------------
+ */
+#define PEI_ISCP_PPI_GUID {\
+ 0xca2c1ecd, 0xc702, 0x49b1, { 0xae, 0x24, 0x9b, 0x6f, 0xa8, 0x71, 0x3b, 0x23 } \
+}
+
+
+/*----------------------------------------------------------------------------------------
+ * T Y P E D E F S A N D S T R U C T U R E S
+ *----------------------------------------------------------------------------------------
+ */
+typedef struct _EFI_PEI_ISCP_PPI EFI_PEI_ISCP_PPI;
+
+
+/// ISCP Memory Transaction
+typedef
+EFI_STATUS
+(EFIAPI *PEI_ISCP_MEMORY_TRANSACTION)(
+ IN CONST EFI_PEI_SERVICES **PeiServices, ///< Pointer to the PEI Services Table
+ IN OUT AMD_MEMORY_RANGE_DESCRIPTOR *MemRangeDescriptor ///< Pointer to Memory Range Descriptor
+ );
+
+
+/// ISCP Fuse Transaction
+typedef
+EFI_STATUS
+(EFIAPI *PEI_ISCP_FUSE_TRANSACTION)(
+ IN CONST EFI_PEI_SERVICES **PeiServices, ///< Pointer to the PEI Services Table
+ IN OUT ISCP_FUSE_INFO *FuseInfo ///< Pointer to the Fuse Info structure
+ );
+
+
+/// ISCP CPU Retrieve ID Transaction
+typedef
+EFI_STATUS
+(EFIAPI *PEI_ISCP_CPU_RETRIEVE_ID_TRANSACTION)(
+ IN CONST EFI_PEI_SERVICES **PeiServices, ///< Pointer to the PEI Services Table
+ IN OUT ISCP_CPU_RESET_INFO *CpuResetInfo ///< Pointer to CPU Reset Info structure
+ );
+
+
+/// ISCP CPU Reset transaction
+typedef
+EFI_STATUS
+(EFIAPI *PEI_ISCP_CPU_RESET_TRANSACTION)(
+ IN CONST EFI_PEI_SERVICES **PeiServices, ///< Pointer to the PEI Services Table
+ IN OUT ISCP_CPU_RESET_INFO *CpuResetInfo ///< Pointer to CPU Reset Info structure
+ );
+
+
+/// ISCP Get Real-Time-Clock Transaction
+typedef
+EFI_STATUS
+(EFIAPI *PEI_ISCP_GET_RTC_TRANSACTION)(
+ IN CONST EFI_PEI_SERVICES **PeiServices, ///< Pointer to the PEI Services Table
+ IN OUT ISCP_RTC_INFO *RtcInfo ///< Pointer to the Real-Time-Clock
+ );
+
+
+/// ISCP Set Real-Time-Clock Transaction
+typedef
+EFI_STATUS
+(EFIAPI *PEI_ISCP_SET_RTC_TRANSACTION)(
+ IN CONST EFI_PEI_SERVICES **PeiServices, ///< Pointer to the PEI Services Table
+ IN OUT ISCP_RTC_INFO *RtcInfo ///< Pointer to the Real-Time-Clock
+ );
+
+
+/// ISCP Get MAC Address Transaction
+typedef
+EFI_STATUS
+(EFIAPI *PEI_ISCP_GET_MAC_ADDRESS_TRANSACTION)(
+ IN CONST EFI_PEI_SERVICES **PeiServices, ///< Pointer to the PEI Services Table
+ IN OUT ISCP_MAC_INFO *MacInfo ///< Pointer to the MAC Address info
+ );
+
+
+/// ISCP Set MAC Address Transaction
+typedef
+EFI_STATUS
+(EFIAPI *PEI_ISCP_SET_MAC_ADDRESS_TRANSACTION)(
+ IN CONST EFI_PEI_SERVICES **PeiServices, ///< Pointer to the PEI Services Table
+ IN OUT ISCP_MAC_INFO *MacInfo ///< Pointer to the MAC Address info
+ );
+
+
+/// ISCP Update Firmware Volume Block Transaction
+typedef
+EFI_STATUS
+(EFIAPI *PEI_ISCP_UPDATE_FV_BLOCK_TRANSACTION)(
+ IN CONST EFI_PEI_SERVICES **PeiServices, ///< Pointer to the PEI Services Table
+ IN CONST UINT32 Offset, ///< Offset from base of FV Block
+ IN OUT UINT8 *NvData, ///< Pointer to the NV data being stored
+ IN CONST UINT32 NvSize ///< Size of NV Data being stored
+ );
+
+
+/// SCP Load Firmware Volume Block Transaction
+typedef
+EFI_STATUS
+(EFIAPI *PEI_ISCP_LOAD_FV_BLOCK_TRANSACTION)(
+ IN CONST EFI_PEI_SERVICES **PeiServices, ///< Pointer to the PEI Services Table
+ IN CONST UINT32 Offset, ///< Offset from base of FV Block
+ IN OUT UINT8 *NvData, ///< Pointer to the NV data being stored
+ IN CONST UINT32 NvSize ///< Size of NV Data being stored
+ );
+
+
+/// ISCP Erase Firmware Volume Block Transaction
+typedef
+EFI_STATUS
+(EFIAPI *PEI_ISCP_ERASE_FV_BLOCK_TRANSACTION)(
+ IN CONST EFI_PEI_SERVICES **PeiServices, ///< Pointer to the PEI Services Table
+ IN CONST UINT32 Offset, ///< Offset from base of FV Block
+ IN CONST UINT32 NvSize ///< Size of NV Data being stored
+ );
+
+
+/// ISCP PCIE Reset Transaction
+typedef
+EFI_STATUS
+(EFIAPI *PEI_ISCP_PCIE_RESET_TRANSACTION)(
+ IN CONST EFI_PEI_SERVICES **PeiServices, ///< Pointer to the PEI Services Table
+ IN OUT ISCP_PCIE_RESET_INFO *PcieResetInfo ///< Pointer to PCIE Reset info structure
+ );
+
+
+/// ISCP Send UART Config Transaction
+typedef
+EFI_STATUS
+(EFIAPI *PEI_ISCP_SEND_UART_CONFIG_TRANSACTION)(
+ IN CONST EFI_PEI_SERVICES **PeiServices, ///< Pointer to the PEI Services Table
+ IN OUT ISCP_UART_INFO *UartInfo ///< Pointer to UART Config info structure
+ );
+
+/// ISCP Sata1 get Transaction
+typedef
+EFI_STATUS
+(EFIAPI *PEI_ISCP_SATA1_GET_TRANSACTION)(
+ IN CONST EFI_PEI_SERVICES **PeiServices, ///< Pointer to the PEI Services Table
+ IN OUT ISCP_SATA1_RESET_INFO *Sata1ResetInfo ///< Pointer to SATA1 reset structure
+ );
+
+/// ISCP BMC Present
+typedef
+EFI_STATUS
+(EFIAPI *PEI_ISCP_BMC_PRESENT_TRANSACTION)(
+ IN CONST EFI_PEI_SERVICES **PeiServices, ///< Pointer to the PEI Services Table
+ OUT ISCP_BMC_PRESENCE_INFO *BmcPresenceInfo ///< Pointer to BMC presence structure
+ );
+
+/// This PPI provides several services in PEI to work with the underlying
+/// Intra-SOC Communication Protocol capabilities of the platform. These
+/// services include the ability for PEI to send/receive Firmware Setup data,
+/// retrieve memory data, retrieve fuse data, perform CPU core reset, e.g launch,
+/// retrieve OEM NVRAM transactions.
+struct _EFI_PEI_ISCP_PPI {
+ PEI_ISCP_MEMORY_TRANSACTION ExecuteMemoryTransaction;
+ PEI_ISCP_FUSE_TRANSACTION ExecuteFuseTransaction;
+ PEI_ISCP_CPU_RETRIEVE_ID_TRANSACTION ExecuteCpuRetrieveIdTransaction;
+ PEI_ISCP_CPU_RESET_TRANSACTION ExecuteCpuResetTransaction;
+ PEI_ISCP_GET_RTC_TRANSACTION ExecuteGetRtcTransaction;
+ PEI_ISCP_SET_RTC_TRANSACTION ExecuteSetRtcTransaction;
+ PEI_ISCP_GET_MAC_ADDRESS_TRANSACTION ExecuteGetMacAddressTransaction;
+ PEI_ISCP_SET_MAC_ADDRESS_TRANSACTION ExecuteSetMacAddressTransaction;
+ PEI_ISCP_UPDATE_FV_BLOCK_TRANSACTION ExecuteUpdateFvBlock;
+ PEI_ISCP_LOAD_FV_BLOCK_TRANSACTION ExecuteLoadNvBlock;
+ PEI_ISCP_ERASE_FV_BLOCK_TRANSACTION ExecuteEraseNvBlock;
+ PEI_ISCP_PCIE_RESET_TRANSACTION ExecutePcieResetTransaction;
+ PEI_ISCP_SEND_UART_CONFIG_TRANSACTION ExecuteSendUartConfigTransaction;
+ PEI_ISCP_SATA1_GET_TRANSACTION ExecuteSata1GetTransaction;
+ PEI_ISCP_BMC_PRESENT_TRANSACTION ExecuteBmcPresentTransaction;
+};
+
+extern EFI_GUID gPeiIscpPpiGuid;
+
+#endif // #ifndef _PEI_ISCP_PPI_H_