Use submodule way to access brotli in MdeModulePkg based on brotli version 666c3280cc11dc433c303d79a83d4ffbdd12cc8d. The newly added BrotliDecUefiSupport.h/.c are used by directory 'brotli'. REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2559 Cc: Liming Gao <liming.gao@intel.com> Cc: Jian J Wang <jian.j.wang@intel.com> Cc: Hao A Wu <hao.a.wu@intel.com> Signed-off-by: Shenglei Zhang <shenglei.zhang@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
		
			
				
	
	
		
			49 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			49 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /** @file
 | |
|   BROTLI UEFI header file
 | |
| 
 | |
|   Allows BROTLI code to build under UEFI (edk2) build environment
 | |
| 
 | |
|   Copyright (c) 2017 - 2020, Intel Corporation. All rights reserved.<BR>
 | |
|   SPDX-License-Identifier: BSD-2-Clause-Patent
 | |
| 
 | |
| **/
 | |
| 
 | |
| #ifndef __BROTLI_DECOMPRESS_INTERNAL_H__
 | |
| #define __BROTLI_DECOMPRESS_INTERNAL_H__
 | |
| 
 | |
| #include <PiPei.h>
 | |
| #include <Library/ExtractGuidedSectionLib.h>
 | |
| #include <brotli/c/include/brotli/types.h>
 | |
| #include <brotli/c/include/brotli/decode.h>
 | |
| 
 | |
| typedef struct
 | |
| {
 | |
|   VOID     *Buff;
 | |
|   UINTN    BuffSize;
 | |
| } BROTLI_BUFF;
 | |
| 
 | |
| #define FILE_BUFFER_SIZE     65536
 | |
| #define BROTLI_INFO_SIZE     8
 | |
| #define BROTLI_DECODE_MAX    8
 | |
| #define BROTLI_SCRATCH_MAX   16
 | |
| 
 | |
| EFI_STATUS
 | |
| EFIAPI
 | |
| BrotliUefiDecompressGetInfo (
 | |
|   IN  CONST VOID  *Source,
 | |
|   IN  UINT32      SourceSize,
 | |
|   OUT UINT32      *DestinationSize,
 | |
|   OUT UINT32      *ScratchSize
 | |
|   );
 | |
| 
 | |
| EFI_STATUS
 | |
| EFIAPI
 | |
| BrotliUefiDecompress (
 | |
|   IN CONST VOID  *Source,
 | |
|   IN UINTN       SourceSize,
 | |
|   IN OUT VOID    *Destination,
 | |
|   IN OUT VOID    *Scratch
 | |
|   );
 | |
| 
 | |
| #endif
 |