>From Sascha Hauer <s.hauer@xxxxxxxxxxxxxx> # This line is ignored. From: Sascha Hauer <s.hauer@xxxxxxxxxxxxxx> Subject: rework boot/blspec code In-Reply-To: The boot command code is for converting a list of strings into boot entries and iterating over the boot entries starting one after the other until one succeeds. boot entries can be boot scripts or bootloader spec entries, nevertheless the boot code uses a "struct blspec" for both. This series separated this properly, puts the bootloader spec specific data into its own struct leaving the generic data for the boot code. As a central component the boot code should also have a C API, which it currently does not have as the it's implemented in the boot command code, so this series move the bulk of the code to a place under common/ where it can be called by C code aswell. Also several other cleanups are done like (hopefully) more consistent message printing. Sascha ---------------------------------------------------------------- Sascha Hauer (18): blspec: remove unused blspec_boot_devicename blspec: Remove once/default handling blspec: remove unused function prototype boot: Call blspec_scan_directory() only on strings containing an absolute path include: Move bulk of boot.h to bootm.h blpec: rename struct lspec -> bootentries blspec: factor out a struct bootentry bootentries: Add title/description blspec: separate bootentries from blspec entries blspec: Make blspec_boot static bootentries: Move menu display string allocation to bootentries_alloc() bootentries: Move struct bootentries to include/boot.h boot: Use struct bootentries to pass around data boot: Move code to common/ boot: add single quotes when printing boot target names boot command: Explicitly complain when boot target list is empty blspec: Turn message back to debug level boot: Print a message when a boot target string does not lead to a boot target arch/arm/boards/archosg9/archos_features.c | 1 - arch/arm/lib/bootm.c | 1 + commands/Kconfig | 1 + commands/boot.c | 415 ++--------------------------- commands/bootm.c | 2 +- common/Kconfig | 3 + common/Makefile | 1 + common/blspec.c | 343 ++++++++++-------------- common/boot.c | 339 +++++++++++++++++++++++ common/bootm.c | 3 +- common/image-fit.c | 2 +- drivers/usb/gadget/f_fastboot.c | 2 +- include/blspec.h | 91 +------ include/boot.h | 139 ++-------- include/bootm.h | 125 +++++++++ include/image-fit.h | 2 +- 16 files changed, 676 insertions(+), 794 deletions(-) create mode 100644 common/boot.c create mode 100644 include/bootm.h _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox