1/* Copyright (c) 2010 The Chromium OS Authors. All rights reserved. 2 * Use of this source code is governed by a BSD-style license that can be 3 * found in the LICENSE file. 4 */ 5 6#define EFI_STATUS int 7#define VOID void 8#define INT16 int16_t 9#define UINT16 uint16_t 10#define INT8 int8_t 11#define UINT8 uint8_t 12#define INT32 int32_t 13#define UINT32 uint32_t 14#define STATIC static 15#define IN /**/ 16#define OUT /**/ 17#define EFIAPI /**/ 18 19#define EFIERR(a) (a) 20#define EFI_SUCCESS 0 21#define EFI_LOAD_ERROR EFIERR (1) 22#define EFI_INVALID_PARAMETER EFIERR (2) 23#define EFI_UNSUPPORTED EFIERR (3) 24#define EFI_BAD_BUFFER_SIZE EFIERR (4) 25#define EFI_BUFFER_TOO_SMALL EFIERR (5) 26#define EFI_NOT_READY EFIERR (6) 27#define EFI_DEVICE_ERROR EFIERR (7) 28#define EFI_WRITE_PROTECTED EFIERR (8) 29#define EFI_OUT_OF_RESOURCES EFIERR (9) 30#define EFI_VOLUME_CORRUPTED EFIERR (10) 31#define EFI_VOLUME_FULL EFIERR (11) 32#define EFI_NO_MEDIA EFIERR (12) 33#define EFI_MEDIA_CHANGED EFIERR (13) 34#define EFI_NOT_FOUND EFIERR (14) 35#define EFI_ACCESS_DENIED EFIERR (15) 36#define EFI_NO_RESPONSE EFIERR (16) 37#define EFI_NO_MAPPING EFIERR (17) 38#define EFI_TIMEOUT EFIERR (18) 39#define EFI_NOT_STARTED EFIERR (19) 40#define EFI_ALREADY_STARTED EFIERR (20) 41#define EFI_ABORTED EFIERR (21) 42#define EFI_ICMP_ERROR EFIERR (22) 43#define EFI_TFTP_ERROR EFIERR (23) 44#define EFI_PROTOCOL_ERROR EFIERR (24) 45#define EFI_INCOMPATIBLE_VERSION EFIERR (25) 46#define EFI_SECURITY_VIOLATION EFIERR (26) 47#define EFI_CRC_ERROR EFIERR (27) 48#define EFI_END_OF_MEDIA EFIERR (28) 49#define EFI_END_OF_FILE EFIERR (31) 50#define EFI_INVALID_LANGUAGE EFIERR (32) 51 52#define EFIWARN(a) ((a)+EFI_INVALID_LANGUAGE) 53#define EFI_WARN_UNKNOWN_GLYPH EFIWARN (1) 54#define EFI_WARN_DELETE_FAILURE EFIWARN (2) 55#define EFI_WARN_WRITE_FAILURE EFIWARN (3) 56#define EFI_WARN_BUFFER_TOO_SMALL EFIWARN (4) 57 58#define EFI_ERROR(Status) (Status != 0 && Status < EFIWARN(1)) 59 60EFI_STATUS 61EfiCompress ( 62 IN UINT8 *SrcBuffer, 63 IN UINT32 SrcSize, 64 IN UINT8 *DstBuffer, 65 IN OUT UINT32 *DstSize 66 ); 67 68EFI_STATUS 69EFIAPI 70EfiGetInfo ( 71 IN VOID *Source, 72 IN UINT32 SrcSize, 73 OUT UINT32 *DstSize, 74 OUT UINT32 *ScratchSize 75 ); 76 77EFI_STATUS 78EFIAPI 79EfiDecompress ( 80 IN VOID *Source, 81 IN UINT32 SrcSize, 82 IN OUT VOID *Destination, 83 IN UINT32 DstSize, 84 IN OUT VOID *Scratch, 85 IN UINT32 ScratchSize 86 ); 87