mirror of
https://source.denx.de/u-boot/u-boot.git
synced 2026-06-13 15:03:58 +03:00
bootstd: Allow storing the OS command line in the bootflow
Some operating systems have a command line which can be adjusted before booting. Store this in the bootflow so it can be controlled within U-Boot. Fix up the example output while we are here, since there are a few new items. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
This commit is contained in:
@@ -324,6 +324,12 @@ static int do_bootflow_info(struct cmd_tbl *cmdtp, int flag, int argc,
|
||||
printf("Buffer: %lx\n", (ulong)map_to_sysmem(bflow->buf));
|
||||
printf("Size: %x (%d bytes)\n", bflow->size, bflow->size);
|
||||
printf("OS: %s\n", bflow->os_name ? bflow->os_name : "(none)");
|
||||
printf("Cmdline: ");
|
||||
if (bflow->cmdline)
|
||||
puts(bflow->cmdline);
|
||||
else
|
||||
puts("(none)");
|
||||
putc('\n');
|
||||
printf("Logo: %s\n", bflow->logo ?
|
||||
simple_xtoa((ulong)map_to_sysmem(bflow->logo)) : "(none)");
|
||||
if (bflow->logo) {
|
||||
|
||||
@@ -258,7 +258,6 @@ displayed and booted::
|
||||
Name: mmc@7e202000.bootdev.part_2
|
||||
Device: mmc@7e202000.bootdev
|
||||
Block dev: mmc@7e202000.blk
|
||||
Sequence: 1
|
||||
Method: distro
|
||||
State: ready
|
||||
Partition: 2
|
||||
@@ -266,6 +265,10 @@ displayed and booted::
|
||||
Filename: extlinux/extlinux.conf
|
||||
Buffer: 3db7ae88
|
||||
Size: 232 (562 bytes)
|
||||
OS: Fedora-Workstation-armhfp-31-1.9 (5.3.7-301.fc31.armv7hl)
|
||||
Cmdline: (none)
|
||||
Logo: (none)
|
||||
FDT: <NULL>
|
||||
Error: 0
|
||||
U-Boot> bootflow boot
|
||||
** Booting bootflow 'smsc95xx_eth.bootdev.0'
|
||||
|
||||
@@ -81,6 +81,7 @@ enum bootflow_flags_t {
|
||||
* @fdt_size: Size of FDT file
|
||||
* @fdt_addr: Address of loaded fdt
|
||||
* @flags: Flags for the bootflow (see enum bootflow_flags_t)
|
||||
* @cmdline: OS command line, or NULL if not known (allocated)
|
||||
*/
|
||||
struct bootflow {
|
||||
struct list_head bm_node;
|
||||
@@ -104,6 +105,7 @@ struct bootflow {
|
||||
int fdt_size;
|
||||
ulong fdt_addr;
|
||||
int flags;
|
||||
char *cmdline;
|
||||
};
|
||||
|
||||
/**
|
||||
|
||||
@@ -226,6 +226,7 @@ static int bootflow_cmd_info(struct unit_test_state *uts)
|
||||
ut_assert_nextlinen("Buffer: ");
|
||||
ut_assert_nextline("Size: 253 (595 bytes)");
|
||||
ut_assert_nextline("OS: Fedora-Workstation-armhfp-31-1.9 (5.3.7-301.fc31.armv7hl)");
|
||||
ut_assert_nextline("Cmdline: (none)");
|
||||
ut_assert_nextline("Logo: (none)");
|
||||
ut_assert_nextline("FDT: <NULL>");
|
||||
ut_assert_nextline("Error: 0");
|
||||
|
||||
Reference in New Issue
Block a user