/** @file This file declares Vector Handoff Info PPI that describes an array of interrupt and/or exception vectors that are in use and need to persist. This is an optional PPI that may be produced by SEC. If present, it provides a description of the interrupt and/or exception vectors that were established in the SEC Phase and need to persist into PEI and DXE. Copyright (c) 2013 - 2018, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent @par Revision Reference: This PPI is introduced in PI Version 1.2.1. **/ #ifndef __VECTOR_HANDOFF_INFO_H__ #define __VECTOR_HANDOFF_INFO_H__ /// /// NOTE: EFI_PEI_VECTOR_HANDOFF_INFO_PPI_GUID can also be used in the PEI Phase /// to build a GUIDed HOB that contains an array of EFI_VECTOR_HANDOFF_INFO. /// #define EFI_PEI_VECTOR_HANDOFF_INFO_PPI_GUID \ { 0x3cd652b4, 0x6d33, 0x4dce, { 0x89, 0xdb, 0x83, 0xdf, 0x97, 0x66, 0xfc, 0xca }} /// /// Vector Handoff Info Attributes ///@{ #define EFI_VECTOR_HANDOFF_DO_NOT_HOOK 0x00000000 #define EFI_VECTOR_HANDOFF_HOOK_BEFORE 0x00000001 #define EFI_VECTOR_HANDOFF_HOOK_AFTER 0x00000002 #define EFI_VECTOR_HANDOFF_LAST_ENTRY 0x80000000 ///@} /// /// EFI_VECTOR_HANDOFF_INFO entries that describes the interrupt and/or /// exception vectors in use in the PEI Phase. /// typedef struct { // // The interrupt or exception vector that is in use and must be preserved. // UINT32 VectorNumber; // // A bitmask that describes the attributes ofthe interrupt or exception vector. // UINT32 Attribute; // // The GUID identifies the party who created the entry. For the // EFI_VECTOR_HANDOFF_DO_NOT_HOOK case, this establishes the single owner. // EFI_GUID Owner; } EFI_VECTOR_HANDOFF_INFO; /// /// Provides a description of the interrupt and/or exception vectors that /// were established in the SEC Phase and need to persist into PEI and DXE. /// typedef struct _EFI_PEI_VECTOR_HANDOFF_INFO_PPI { // // Pointer to an array of interrupt and /or exception vectors. // EFI_VECTOR_HANDOFF_INFO *Info; } EFI_PEI_VECTOR_HANDOFF_INFO_PPI; extern EFI_GUID gEfiVectorHandoffInfoPpiGuid; #endif