1/* SPDX-License-Identifier: GPL-2.0 */ 2#ifndef BOOT_COMPRESSED_DECOMPRESSOR_H 3#define BOOT_COMPRESSED_DECOMPRESSOR_H 4 5#ifdef CONFIG_KERNEL_UNCOMPRESSED 6static inline void *decompress_kernel(void) {} 7#else 8void *decompress_kernel(void); 9#endif 10unsigned long mem_safe_offset(void); 11void error(char *m); 12 13struct vmlinux_info { 14 unsigned long default_lma; 15 void (*entry)(void); 16 unsigned long image_size; /* does not include .bss */ 17 unsigned long bss_size; /* uncompressed image .bss size */ 18 unsigned long bootdata_off; 19 unsigned long bootdata_size; 20 unsigned long bootdata_preserved_off; 21 unsigned long bootdata_preserved_size; 22 unsigned long dynsym_start; 23 unsigned long rela_dyn_start; 24 unsigned long rela_dyn_end; 25}; 26 27extern char _vmlinux_info[]; 28#define vmlinux (*(struct vmlinux_info *)_vmlinux_info) 29 30#endif /* BOOT_COMPRESSED_DECOMPRESSOR_H */ 31