| /** @file | |
| Capsule format guid for Quark capsule image. | |
| Copyright (c) 2013-2015 Intel Corporation. | |
| 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 _QUARK_CAPSULE_GUID_H_ | |
| #define _QUARK_CAPSULE_GUID_H_ | |
| #define QUARK_CAPSULE_GUID \ | |
| { 0xd400d1e4, 0xa314, 0x442b, { 0x89, 0xed, 0xa9, 0x2e, 0x4c, 0x81, 0x97, 0xcb } } | |
| #define SMI_INPUT_UPDATE_CAP 0x27 | |
| #define SMI_INPUT_GET_CAP 0x28 | |
| #define SMI_CAP_FUNCTION 0xEF | |
| #pragma pack(1) | |
| typedef struct { | |
| UINT64 Address; | |
| UINT32 BufferOffset; | |
| UINT32 Size; | |
| UINT32 Flags; | |
| UINT32 Reserved; | |
| } CAPSULE_FRAGMENT; | |
| typedef struct { | |
| UINTN CapsuleLocation; // Top of the capsule that point to structure CAPSULE_FRAGMENT | |
| UINTN CapsuleSize; // Size of the capsule | |
| EFI_STATUS Status; // Returned status | |
| } CAPSULE_INFO_PACKET; | |
| typedef struct { | |
| UINTN BlocksCompleted; // # of blocks processed | |
| UINTN TotalBlocks; // Total # of blocks to be processed | |
| EFI_STATUS Status; // returned status | |
| } UPDATE_STATUS_PACKET; | |
| #pragma pack() | |
| extern EFI_GUID gEfiQuarkCapsuleGuid; | |
| #endif |