5 decompress protocol, Efi_decompress_protocol, Decompress – Intel Extensible Firmware Interface User Manual
Page 756: Decompress protocol

Extensible Firmware Interface Specification
17-16
12/01/02
Version 1.10
17.5 Decompress Protocol
This section provides a detailed description of the
EFI_DECOMPRESS_PROTOCOL
.
EFI_DECOMPRESS_PROTOCOL
Summary
Provides a decompression service.
GUID
#define EFI_DECOMPRESS_PROTOCOL_GUID \
{0xd8117cfe,0x94a6,0x11d4,0x9a,0x3a,0x0,0x90,0x27,0x3f,0xc1,0x4d}
Protocol Interface Structure
typedef struct _EFI_DECOMPRESS_PROTOCOL {
EFI_DECOMPRESS_GET_INFO
GetInfo;
EFI_DECOMPRESS_DECOMPRESS
Decompress;
} EFI_DECOMPRESS_PROTOCOL;
Parameters
GetInfo
Given the compressed source buffer, this function retrieves the size of
the uncompressed destination buffer and the size of the scratch buffer
required to perform the decompression. It is the caller’s responsibility to
allocate the destination buffer and the scratch buffer prior to calling
function description.
Decompress
Decompresses a compressed source buffer into an uncompressed
destination buffer. It is the caller’s responsibility to allocate the
destination buffer and a scratch buffer prior to making this call. See the
Decompress()
function description.
Description
The
EFI_DECOMPRESS_PROTOCOL
provides a decompression service that allows a compressed
source buffer in memory to be decompressed into a destination buffer in memory. It also requires a
temporary scratch buffer to perform the decompression. The
GetInfo()
function retrieves the
size of the destination buffer and the size of the scratch buffer that the caller is required to allocate.
The
Decompress()
function performs the decompression. The scratch buffer can be freed after
the decompression is complete.