No subject
Sascha Hauer
s.hauer at pengutronix.de
Fri Jul 22 05:44:14 PDT 2016
>From Sascha Hauer <s.hauer at pengutronix.de> # This line is ignored.
From: Sascha Hauer <s.hauer at pengutronix.de>
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
More information about the barebox
mailing list