diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2011-11-26 21:33:59 +0100 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2011-11-29 20:51:31 +0100 |
commit | 020a30be0d9a3b56a98c4e4094d13d3b4e3bd4eb (patch) | |
tree | 58705c8fbff18a82690e25a34778f063054adf03 /include/magicvar.h | |
parent | 6fa8c93a5ecefe4effa0e0425441a8ff6b2ce6ab (diff) | |
download | barebox-020a30be0d9a3b56a98c4e4094d13d3b4e3bd4eb.tar.gz barebox-020a30be0d9a3b56a98c4e4094d13d3b4e3bd4eb.tar.xz |
add magicvar command
The magicvar command gives an overview about all environment variables
with a special meaning.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'include/magicvar.h')
-rw-r--r-- | include/magicvar.h | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/include/magicvar.h b/include/magicvar.h new file mode 100644 index 0000000000..d27a2e32a3 --- /dev/null +++ b/include/magicvar.h @@ -0,0 +1,32 @@ +#ifndef __MAGIC_VARS_H +#define __MAGIC_VARS_H + +#include <linux/stringify.h> + +struct magicvar { + const char *name; + const char *description; +}; + +extern struct magicvar __barebox_magicvar_start; +extern struct magicvar __barebox_magicvar_end; + +#ifdef CONFIG_CMD_MAGICVAR_HELP +#define MAGICVAR_DESCRIPTION(d) (d) +#else +#define MAGICVAR_DESCRIPTION(d) NULL +#endif + +#ifdef CONFIG_CMD_MAGICVAR +#define BAREBOX_MAGICVAR(_name, _description) \ +extern const struct magicvar __barebox_magicvar_##_name; \ +const struct magicvar __barebox_magicvar_##_name \ + __attribute__ ((unused,section (".barebox_magicvar_" __stringify(_name)))) = { \ + .name = #_name, \ + .description = MAGICVAR_DESCRIPTION(_description), \ +}; +#else +#define BAREBOX_MAGICVAR(_name, _description) +#endif + +#endif /* __MAGIC_VARS_H */ |