xref: /linux/arch/arm64/include/asm/setup.h (revision 0a149ab78ee220c75eef797abea7a29f4490e226)
1 // SPDX-License-Identifier: GPL-2.0
2 
3 #ifndef __ARM64_ASM_SETUP_H
4 #define __ARM64_ASM_SETUP_H
5 
6 #include <linux/string.h>
7 
8 #include <uapi/asm/setup.h>
9 
10 void *get_early_fdt_ptr(void);
11 void early_fdt_map(u64 dt_phys);
12 
13 /*
14  * These two variables are used in the head.S file.
15  */
16 extern phys_addr_t __fdt_pointer __initdata;
17 extern u64 __cacheline_aligned boot_args[4];
18 
19 static inline bool arch_parse_debug_rodata(char *arg)
20 {
21 	extern bool rodata_enabled;
22 	extern bool rodata_full;
23 
24 	if (!arg)
25 		return false;
26 
27 	if (!strcmp(arg, "full")) {
28 		rodata_enabled = rodata_full = true;
29 		return true;
30 	}
31 
32 	if (!strcmp(arg, "off")) {
33 		rodata_enabled = rodata_full = false;
34 		return true;
35 	}
36 
37 	if (!strcmp(arg, "on")) {
38 		rodata_enabled = true;
39 		rodata_full = false;
40 		return true;
41 	}
42 
43 	return false;
44 }
45 #define arch_parse_debug_rodata arch_parse_debug_rodata
46 
47 #endif
48