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 14struct sandbox_cmdline_option; 15 16static inline struct sandbox_cmdline_option ** 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 25static inline struct sandbox_cmdline_option ** 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 34static 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