ARM: mxs: tools: Add support for boot progress display flag
Subsystems (2)
PATCH v3 1/1 ARM: mxs: tools: Add support for boot progress display flag
mkimage -T mxs now support new flag in config file:
DISPLAYPROGRESS - makes boot process print HTLLC characters for each BootROM instruction.
--- arch/arm/cpu/arm926ejs/mxs/mxsimage-signed.cfg | 1 + arch/arm/cpu/arm926ejs/mxs/mxsimage.mx23.cfg | 1 + arch/arm/cpu/arm926ejs/mxs/mxsimage.mx28.cfg | 1 + doc/README.mxsimage | 13 +++++++++---- tools/mxsimage.c | 16 ++++++++++------ tools/mxsimage.h | 5 +++-- 6 files changed, 25 insertions(+), 12 deletions(-)
arch/arm/cpu/arm926ejs/mxs/mxsimage-signed.cfg +1 -0
@@ -1,3 +1,4 @@ +DISPLAYPROGRESS SECTION 0x0 BOOTABLE TAG LAST LOAD 0x1000 spl/u-boot-spl.bin
arch/arm/cpu/arm926ejs/mxs/mxsimage.mx23.cfg +1 -0
@@ -1,3 +1,4 @@ +DISPLAYPROGRESS SECTION 0x0 BOOTABLE TAG LAST LOAD 0x1000 spl/u-boot-spl.bin
arch/arm/cpu/arm926ejs/mxs/mxsimage.mx28.cfg +1 -0
@@ -1,3 +1,4 @@ +DISPLAYPROGRESS SECTION 0x0 BOOTABLE TAG LAST LOAD 0x1000 spl/u-boot-spl.bin
doc/README.mxsimage +9 -4
@@ -27,7 +27,7 @@ These semantics and rules will be outlined now. - Each line of the configuration file contains exactly one instruction. - Every numeric value must be encoded in hexadecimal and in format 0xabcdef12 . - The configuration file is a concatenation of blocks called "sections" and - optionally "DCD blocks" (see below). + optionally "DCD blocks" (see below), and optional flags lines. - Each "section" is started by the "SECTION" instruction. - The "SECTION" instruction has the following semantics:
@@ -139,9 +139,14 @@ These semantics and rules will be outlined now. NOOP - This instruction does nothing. -- If the verbose output from the BootROM is enabled, the BootROM will produce a - letter on the Debug UART for each instruction it started processing. Here is a - mapping between the above instructions and the BootROM verbose output: + - An optional flags lines can be one of the following: + + DISPLAYPROGRESS + - Enable boot progress output form the BootROM. + +- If the boot progress output from the BootROM is enabled, the BootROM will + produce a letter on the Debug UART for each instruction it started processing. + Here is a mapping between the above instructions and the BootROM output: H -- SB Image header loaded T -- TAG instruction
tools/mxsimage.c +10 -6
@@ -125,7 +125,7 @@ struct sb_image_ctx { unsigned int in_section:1; unsigned int in_dcd:1;/* Image configuration */ - unsigned int verbose_boot:1; + unsigned int display_progress:1; unsigned int silent_dump:1;char *input_filename;char *output_filename;
@@ -1308,8 +1308,7 @@ static int sb_prefill_image_header(struct sb_image_ctx *ictx)sizeof (struct sb_sections_header ) /SB_BLOCK_SIZE ; hdr->timestamp_us =sb_get_timestamp () *1000000 ; -/* FIXME -- add proper config option */ - hdr->flags = ictx->verbose_boot ?SB_IMAGE_FLAG_VERBOSE :0 , + hdr->flags = ictx->display_progress ?SB_IMAGE_FLAG_DISPLAY_PROGRESS :0 ;/* FIXME -- We support only default key */ hdr->key_count =1 ;
@@ -1427,6 +1426,12 @@ static int sb_parse_line(struct sb_image_ctx *ictx, struct sb_cmd_list *cmd) } cmd->cmd = rptr; + +/* set DISPLAY_PROGRESS flag */ +if (!strcmp (tok,"DISPLAYPROGRESS" )) { + ictx->display_progress =1 ; +return 0 ; + }/* DCD */ if (!strcmp (tok,"DCD" )) {
@@ -1681,10 +1686,10 @@ static int sb_verify_image_header(struct sb_image_ctx *ictx,ntohs (hdr->component_version.minor), ntohs(hdr->component_version.revision)); -if (hdr->flags & ~SB_IMAGE_FLAG_VERBOSE ) +if (hdr->flags & ~SB_IMAGE_FLAGS_MASK ) ret = -EINVAL ;soprintf (ictx,"%s Image flags: %s\n" , stat[!!ret], - hdr->flags &SB_IMAGE_FLAG_VERBOSE ?"Verbose_boot" :"" ); + hdr->flags &SB_IMAGE_FLAG_DISPLAY_PROGRESS ?"Display_progress" :"" );if (ret)return ret;
@@ -2287,7 +2292,6 @@ static int mxsimage_generate(struct image_tool_params *params, ctx.cfg_filename = params->imagename; ctx.output_filename = params->imagefile; - ctx.verbose_boot =1 ; ret =sb_build_tree_from_cfg (&ctx);if (ret)
tools/mxsimage.h +3 -2
@@ -81,8 +81,9 @@ struct sb_boot_image_header {#define SB_VERSION_MAJOR 1#define SB_VERSION_MINOR 1 -/* Enable to HTLLC verbose boot report. */ -#define SB_IMAGE_FLAG_VERBOSE (1 << 0) +/* Enable to HTLLC boot report. */ +#define SB_IMAGE_FLAG_DISPLAY_PROGRESS (1 << 0) +#define SB_IMAGE_FLAGS_MASK (SB_IMAGE_FLAG_DISPLAY_PROGRESS)struct sb_key_dictionary_key {/* The CBC-MAC of image and sections header. */
Signature · 1 line
1.8.5.3
PATCH v3 1/1 ARM: mxs: tools: Add support for boot progress display flag
Quoted 5 lines · Alexey Ignatov
mkimage -T mxs now support new flag in config file:
DISPLAYPROGRESS - makes boot process print HTLLC characters for each BootROM instruction.Signed-off-by Alexey Ignatov <[email protected]>
Quoted 8 lines
--- arch/arm/cpu/arm926ejs/mxs/mxsimage-signed.cfg | 1 + arch/arm/cpu/arm926ejs/mxs/mxsimage.mx23.cfg | 1 + arch/arm/cpu/arm926ejs/mxs/mxsimage.mx28.cfg | 1 + doc/README.mxsimage | 13 +++++++++---- tools/mxsimage.c | 16 ++++++++++------ tools/mxsimage.h | 5 +++-- 6 files changed, 25 insertions(+), 12 deletions(-)
A hint: Please add a changelog so the people reading your patch don't have to go searching for the changes you did in the next version. What did you change here?
Best regards,
Marek Vasut
PATCH v3 1/1 ARM: mxs: tools: Add support for boot progress display flag
In reply to Alexey IgnatovSorry, forgot to add changelog.
v1: initial version
v2: contains an error, don't use it
v3: removed VERBOSEPROGRESS flag, added DISPLAYPROGRESS flag to default mkimage configs, added documentation
PATCH v3 1/1 ARM: mxs: tools: Add support for boot progress display flag
Quoted 6 lines · Alexey Ignatov
Sorry, forgot to add changelog.
v1: initial version
v2: contains an error, don't use it
v3: removed VERBOSEPROGRESS flag, added DISPLAYPROGRESS flag to default mkimage configs, added documentation
Calm down, no need to haste with re-posting :) There is one last minor detail about those () in +#define SB_IMAGE_FLAGS_MASK (SB_IMAGE_FLAG_DISPLAY_PROGRESS) so a V4 would be likely the one which will go in, unless someone has any other objections :)
Best regards,
Marek Vasut