Home | History | Annotate | Download | only in Guid
      1 /** @file
      2 
      3 Capsule format guid for Quark capsule image.
      4 
      5 Copyright (c) 2013-2015 Intel Corporation.
      6 
      7 This program and the accompanying materials
      8 are licensed and made available under the terms and conditions of the BSD License
      9 which accompanies this distribution.  The full text of the license may be found at
     10 http://opensource.org/licenses/bsd-license.php
     11 
     12 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
     13 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
     14 
     15 **/
     16 
     17 #ifndef _QUARK_CAPSULE_GUID_H_
     18 #define _QUARK_CAPSULE_GUID_H_
     19 
     20 #define QUARK_CAPSULE_GUID \
     21   { 0xd400d1e4, 0xa314, 0x442b, { 0x89, 0xed, 0xa9, 0x2e, 0x4c, 0x81, 0x97, 0xcb } }
     22 
     23 #define SMI_INPUT_UPDATE_CAP 0x27
     24 #define SMI_INPUT_GET_CAP    0x28
     25 
     26 #define SMI_CAP_FUNCTION     0xEF
     27 
     28 #pragma pack(1)
     29 typedef struct {
     30    UINT64  Address;
     31    UINT32  BufferOffset;
     32    UINT32  Size;
     33    UINT32  Flags;
     34    UINT32  Reserved;
     35 } CAPSULE_FRAGMENT;
     36 
     37 typedef struct {
     38   UINTN         CapsuleLocation;  // Top of the capsule that point to structure CAPSULE_FRAGMENT
     39   UINTN         CapsuleSize;    // Size of the capsule
     40   EFI_STATUS   Status;      // Returned status
     41 } CAPSULE_INFO_PACKET;
     42 
     43 typedef struct {
     44   UINTN           BlocksCompleted;  // # of blocks processed
     45   UINTN           TotalBlocks;      // Total # of blocks to be processed
     46   EFI_STATUS      Status;            // returned status
     47 } UPDATE_STATUS_PACKET;
     48 #pragma pack()
     49 
     50 extern EFI_GUID gEfiQuarkCapsuleGuid;
     51 
     52 #endif
     53