Loading...
Note: File does not exist in v3.15.
1/* SPDX-License-Identifier: GPL-2.0 */
2#ifndef BOOT_COMPRESSED_DECOMPRESSOR_H
3#define BOOT_COMPRESSED_DECOMPRESSOR_H
4
5#include <linux/stddef.h>
6
7#ifdef CONFIG_KERNEL_UNCOMPRESSED
8static inline void *decompress_kernel(void) { return NULL; }
9#else
10void *decompress_kernel(void);
11#endif
12unsigned long mem_safe_offset(void);
13void error(char *m);
14
15struct vmlinux_info {
16 unsigned long default_lma;
17 void (*entry)(void);
18 unsigned long image_size; /* does not include .bss */
19 unsigned long bss_size; /* uncompressed image .bss size */
20 unsigned long bootdata_off;
21 unsigned long bootdata_size;
22 unsigned long bootdata_preserved_off;
23 unsigned long bootdata_preserved_size;
24 unsigned long dynsym_start;
25 unsigned long rela_dyn_start;
26 unsigned long rela_dyn_end;
27 unsigned long amode31_size;
28};
29
30/* Symbols defined by linker scripts */
31extern char _end[];
32extern unsigned char _compressed_start[];
33extern unsigned char _compressed_end[];
34extern char _vmlinux_info[];
35
36#define vmlinux (*(struct vmlinux_info *)_vmlinux_info)
37
38#endif /* BOOT_COMPRESSED_DECOMPRESSOR_H */