1 /*
2  * decls for symbols defined in the linker script
3  *
4  * Copyright (c) 2012 The Chromium OS Authors.
5  *
6  * Licensed under the GPL-2 or later.
7  */
8 
9 #ifndef __SANDBOX_SECTIONS_H
10 #define __SANDBOX_SECTIONS_H
11 
12 #include <asm-generic/sections.h>
13 
14 struct sandbox_cmdline_option;
15 
16 static inline struct sandbox_cmdline_option **
__u_boot_sandbox_option_start(void)17 __u_boot_sandbox_option_start(void)
18 {
19 	static char start[0] __aligned(4) __attribute__((unused))
20 		__section(".u_boot_sandbox_getopt_start");
21 
22 	return (struct sandbox_cmdline_option **)&start;
23 }
24 
25 static inline struct sandbox_cmdline_option **
__u_boot_sandbox_option_end(void)26 __u_boot_sandbox_option_end(void)
27 {
28 	static char end[0] __aligned(4) __attribute__((unused))
29 		__section(".u_boot_sandbox_getopt_end");
30 
31 	return (struct sandbox_cmdline_option **)&end;
32 }
33 
__u_boot_sandbox_option_count(void)34 static inline size_t __u_boot_sandbox_option_count(void)
35 {
36 	return __u_boot_sandbox_option_end() - __u_boot_sandbox_option_start();
37 }
38 
39 #endif
40