summaryrefslogtreecommitdiffstats
path: root/include/boot.h
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2016-07-20 13:58:20 +0200
committerSascha Hauer <s.hauer@pengutronix.de>2016-07-26 08:31:35 +0200
commitbf07b3411a023a031bea60140cc47668c7e1af2d (patch)
treef35d6a96e2b9a1a032875e3ddbc20651111faaed /include/boot.h
parent3ab18b3cd0a07fc6b84248b84dacd3330f02189e (diff)
downloadbarebox-bf07b3411a023a031bea60140cc47668c7e1af2d.tar.gz
barebox-bf07b3411a023a031bea60140cc47668c7e1af2d.tar.xz
bootentries: Move struct bootentries to include/boot.h
The boot function prototypes are declared in include/blspec.h. Move them to include/boot.h where they belong. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'include/boot.h')
-rw-r--r--include/boot.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/include/boot.h b/include/boot.h
index da40ac2ece..e0a61c5644 100644
--- a/include/boot.h
+++ b/include/boot.h
@@ -2,6 +2,7 @@
#define __BOOT_H
#include <of.h>
+#include <menu.h>
#include <environment.h>
#ifdef CONFIG_FLEXIBLE_BOOTARGS
@@ -19,4 +20,23 @@ static inline int linux_bootargs_overwrite(const char *bootargs)
}
#endif
+struct bootentries {
+ struct list_head entries;
+ struct menu *menu;
+};
+
+struct bootentry {
+ struct list_head list;
+ struct menu_entry me;
+ char *title;
+ char *description;
+ int (*boot)(struct bootentry *entry, int verbose, int dryrun);
+ void (*release)(struct bootentry *entry);
+};
+
+int bootentries_add_entry(struct bootentries *entries, struct bootentry *entry);
+
+#define bootentries_for_each_entry(bootentries, entry) \
+ list_for_each_entry(entry, &bootentries->entries, list)
+
#endif /* __BOOT_H */