1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef BOOT_BOOT_H
3 #define BOOT_BOOT_H
4 
5 #include <linux/types.h>
6 
7 #define IPL_START	0x200
8 
9 #ifndef __ASSEMBLY__
10 
11 void startup_kernel(void);
12 unsigned long detect_memory(void);
13 bool is_ipl_block_dump(void);
14 void store_ipl_parmblock(void);
15 void setup_boot_command_line(void);
16 void parse_boot_command_line(void);
17 void verify_facilities(void);
18 void print_missing_facilities(void);
19 void sclp_early_setup_buffer(void);
20 void print_pgm_check_info(void);
21 unsigned long get_random_base(unsigned long safe_addr);
22 void __printf(1, 2) decompressor_printk(const char *fmt, ...);
23 
24 /* Symbols defined by linker scripts */
25 extern const char kernel_version[];
26 extern unsigned long memory_limit;
27 extern unsigned long vmalloc_size;
28 extern int vmalloc_size_set;
29 extern int kaslr_enabled;
30 extern char __boot_data_start[], __boot_data_end[];
31 extern char __boot_data_preserved_start[], __boot_data_preserved_end[];
32 extern char _decompressor_syms_start[], _decompressor_syms_end[];
33 extern char _stack_start[], _stack_end[];
34 
35 unsigned long read_ipl_report(unsigned long safe_offset);
36 
37 #endif /* __ASSEMBLY__ */
38 #endif /* BOOT_BOOT_H */
39