/* $NoKeywords: $ */
|
/**
|
* @file
|
*
|
* AMD RAS APEI Protocol
|
*
|
* AMD Ras Interface Protocol GUID initialization
|
*
|
* @xrefitem bom "File Content Label" "Release Content"
|
* @e project: FDK
|
* @e sub-project: UEFI
|
* @e \$Revision: 281924 $ @e \$Date: 2014-01-02 13:57:19 -0600 (Thu, 02 Jan 2014) $
|
*/
|
/*****************************************************************************
|
*
|
* 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 _AMD_RAS_APEI_PROTOCOL_H_
|
#define _AMD_RAS_APEI_PROTOCOL_H_
|
|
#include "AmdApei.h"
|
|
//
|
// GUID definition
|
//
|
#define AMD_RAS_APEI_PROTOCOL_GUID \
|
{ 0xe9dbcc60, 0x8f93, 0x47ed, 0x84, 0x78, 0x46, 0x78, 0xf1, 0x9f, 0x73, 0x4a }
|
// {E9DBCC60-8F93-47ed-8478-4678F19F734A}
|
|
extern EFI_GUID gAmdRasApeiProtocolGuid;
|
|
// current PPI revision
|
#define AMD_RAS_APEI_REV 0x01
|
|
/*----------------------------------------------------------------------------------------
|
* P R O T O T Y P E S O F L O C A L F U N C T I O N S
|
*----------------------------------------------------------------------------------------
|
*/
|
typedef struct _AMD_RAS_APEI_PROTOCOL AMD_RAS_APEI_PROTOCOL;
|
|
/// APEI Interface data pointer
|
typedef
|
struct _AMD_APEI_INTERFACE {
|
APEI_DRIVER_PRIVATE_DATA *ApeiPrivData;
|
} AMD_APEI_INTERFACE;
|
|
|
/// APEI add Boot error record
|
typedef
|
EFI_STATUS
|
(EFIAPI *AMD_ADD_BOOT_ERROR_RECORD_ENTRY) (
|
IN UINT8 *ErrorRecord,
|
IN UINT32 RecordLen,
|
IN UINT8 ErrorType,
|
IN UINT8 SeverityType
|
);
|
|
/// APEI add HEST error source
|
typedef
|
EFI_STATUS
|
(EFIAPI *ADD_HEST_ERROR_SOURCE_ENTRY) (
|
IN UINT8 *pErrorRecord,
|
IN UINT32 RecordLen
|
);
|
|
|
/// RAS APEI Protocol Structure
|
typedef struct _AMD_RAS_APEI_PROTOCOL {
|
AMD_APEI_INTERFACE *AmdApeiInterface; /// APEI Interface
|
AMD_ADD_BOOT_ERROR_RECORD_ENTRY AddBootErrorRecordEntry; /// Boot error record to be added
|
ADD_HEST_ERROR_SOURCE_ENTRY AddHestErrorSourceEntry; /// HEST error source to be added
|
} AMD_RAS_APEI_PROTOCOL;
|
|
|
#endif //_AMD_RAS_APEI_PROTOCOL_H_
|