forked from OERV-BSP/u-boot
@@ -11,7 +11,8 @@ Synopis
|
||||
bootflow scan [-abelGH] [bootdev]
|
||||
bootflow list [-e]
|
||||
bootflow select [<num|name>]
|
||||
bootflow info [-d]
|
||||
bootflow info [-ds]
|
||||
bootflow read
|
||||
bootflow boot
|
||||
bootflow cmdline [set|get|clear|delete|auto] <param> [<value>]
|
||||
|
||||
@@ -191,11 +192,29 @@ Error
|
||||
|
||||
Use the `-d` flag to dump out the contents of the bootfile file.
|
||||
|
||||
The `-s` flag shows any x86 setup block, instead of the above.
|
||||
|
||||
|
||||
bootflow read
|
||||
~~~~~~~~~~~~~
|
||||
|
||||
This reads any files related to the bootflow. Some bootflows with large files
|
||||
avoid doing this when the bootflow is scanned, since it uses a lot of memory
|
||||
and takes extra time. The files are then automatically read when `bootflow boot`
|
||||
is used.
|
||||
|
||||
This command reads these files immediately. Typically this fills in the bootflow
|
||||
`buf` property, which can be used to examine the bootflow.
|
||||
|
||||
Note that reading the files does not result in any extra parsing, nor loading of
|
||||
images in the files. This is purely used to read in the data ready for
|
||||
booting, or examination.
|
||||
|
||||
|
||||
bootflow boot
|
||||
~~~~~~~~~~~~~
|
||||
|
||||
This boots the current bootflow.
|
||||
This boots the current bootflow, reading any required files first.
|
||||
|
||||
|
||||
bootflow cmdline
|
||||
@@ -522,6 +541,122 @@ the cmdline is word-wrapped here and some parts of the command line are elided::
|
||||
[ 0.000000] Command line: loglevel=7 ... usb-storage.quirks=13fe:6500:u earlycon=uart8250,mmio32,0xfe03e000,115200n8
|
||||
[ 0.000000] x86/split lock detection: warning about user-space split_locks
|
||||
|
||||
This shows looking at x86 setup information::
|
||||
|
||||
=> bootfl sel 0
|
||||
=> bootfl i -s
|
||||
Setup located at 77b56010:
|
||||
|
||||
ACPI RSDP addr : 0
|
||||
E820: 2 entries
|
||||
Addr Size Type
|
||||
0 1000 RAM
|
||||
fffff000 1000 Reserved
|
||||
Setup sectors : 1e
|
||||
Root flags : 1
|
||||
Sys size : 63420
|
||||
RAM size : 0
|
||||
Video mode : ffff
|
||||
Root dev : 0
|
||||
Boot flag : 0
|
||||
Jump : 66eb
|
||||
Header : 53726448
|
||||
Kernel V2
|
||||
Version : 20d
|
||||
Real mode switch : 0
|
||||
Start sys seg : 1000
|
||||
Kernel version : 38cc
|
||||
@00003acc:
|
||||
Type of loader : ff
|
||||
unknown
|
||||
Load flags : 1
|
||||
: loaded-high
|
||||
Setup move size : 8000
|
||||
Code32 start : 100000
|
||||
Ramdisk image : 0
|
||||
Ramdisk size : 0
|
||||
Bootsect kludge : 0
|
||||
Heap end ptr : 5160
|
||||
Ext loader ver : 0
|
||||
Ext loader type : 0
|
||||
Command line ptr : 735000
|
||||
Initrd addr max : 7fffffff
|
||||
Kernel alignment : 200000
|
||||
Relocatable kernel : 1
|
||||
Min alignment : 15
|
||||
: 200000
|
||||
Xload flags : 3
|
||||
: 64-bit-entry can-load-above-4gb
|
||||
Cmdline size : 7ff
|
||||
Hardware subarch : 0
|
||||
HW subarch data : 0
|
||||
Payload offset : 26e
|
||||
Payload length : 612045
|
||||
Setup data : 0
|
||||
Pref address : 1000000
|
||||
Init size : 1383000
|
||||
Handover offset : 0
|
||||
|
||||
This shows reading a bootflow to examine the kernel::
|
||||
|
||||
=> bootfl i 0
|
||||
Name:
|
||||
Device: emmc@1c,0.bootdev
|
||||
Block dev: emmc@1c,0.blk
|
||||
Method: cros
|
||||
State: ready
|
||||
Partition: 2
|
||||
Subdir: (none)
|
||||
Filename: <NULL>
|
||||
Buffer: 0
|
||||
Size: 63ee00 (6548992 bytes)
|
||||
OS: ChromeOS
|
||||
Cmdline: console= loglevel=7 init=/sbin/init cros_secure oops=panic panic=-1 root=PARTUUID=35c775e7-3735-d745-93e5-d9e0238f7ed0/PARTNROFF=1 rootwait rw dm_verity.error_behavior=3 dm_verity.max_bios=-1 dm_verity.dev_wait=0 dm="1 vroot none rw 1,0 3788800 verity payload=ROOT_DEV hashtree=HASH_DEV hashstart=3788800 alg=sha1 root_hexdigest=55052b629d3ac889f25a9583ea12cdcd3ea15ff8 salt=a2d4d9e574069f4fed5e3961b99054b7a4905414b60a25d89974a7334021165c" noinitrd vt.global_cursor_default=0 kern_guid=35c775e7-3735-d745-93e5-d9e0238f7ed0 add_efi_memmap boot=local noresume noswap i915.modeset=1 tpm_tis.force=1 tpm_tis.interrupts=0 nmi_watchdog=panic,lapic disablevmx=off
|
||||
X86 setup: 77b56010
|
||||
Logo: (none)
|
||||
FDT: <NULL>
|
||||
Error: 0
|
||||
|
||||
Note that `Buffer` is 0 so it has not be read yet. Using `bootflow read`::
|
||||
|
||||
=> bootfl read
|
||||
=> bootfl info
|
||||
Name:
|
||||
Device: emmc@1c,0.bootdev
|
||||
Block dev: emmc@1c,0.blk
|
||||
Method: cros
|
||||
State: ready
|
||||
Partition: 2
|
||||
Subdir: (none)
|
||||
Filename: <NULL>
|
||||
Buffer: 77b7e400
|
||||
Size: 63ee00 (6548992 bytes)
|
||||
OS: ChromeOS
|
||||
Cmdline: console= loglevel=7 init=/sbin/init cros_secure oops=panic panic=-1 root=PARTUUID=35c775e7-3735-d745-93e5-d9e0238f7ed0/PARTNROFF=1 rootwait rw dm_verity.error_behavior=3 dm_verity.max_bios=-1 dm_verity.dev_wait=0 dm="1 vroot none rw 1,0 3788800 verity payload=ROOT_DEV hashtree=HASH_DEV hashstart=3788800 alg=sha1 root_hexdigest=55052b629d3ac889f25a9583ea12cdcd3ea15ff8 salt=a2d4d9e574069f4fed5e3961b99054b7a4905414b60a25d89974a7334021165c" noinitrd vt.global_cursor_default=0 kern_guid=35c775e7-3735-d745-93e5-d9e0238f7ed0 add_efi_memmap boot=local noresume noswap i915.modeset=1 tpm_tis.force=1 tpm_tis.interrupts=0 nmi_watchdog=panic,lapic disablevmx=off
|
||||
X86 setup: 781b4400
|
||||
Logo: (none)
|
||||
FDT: <NULL>
|
||||
Error: 0
|
||||
|
||||
Now the buffer can be accessed::
|
||||
|
||||
=> md 77b7e400
|
||||
77b7e400: 1186f6fc 40000002 b8fa0c75 00000018 .......@u.......
|
||||
77b7e410: c08ed88e a68dd08e 000001e8 000000e8 ................
|
||||
77b7e420: ed815d00 00000021 62c280b8 89e80100 .]..!......b....
|
||||
77b7e430: 22f7e8c4 c0850061 22ec850f eb890061 ..."a......"a...
|
||||
77b7e440: 0230868b 01480000 21d0f7c3 00fb81c3 ..0...H....!....
|
||||
77b7e450: 7d010000 0000bb05 c3810100 00d4f000 ...}............
|
||||
77b7e460: 8130858d 85890061 00618132 3095010f ..0.a...2.a....0
|
||||
77b7e470: 0f006181 c883e020 e0220f20 e000bb8d .a.. ... .".....
|
||||
77b7e480: c0310062 001800b9 8dabf300 62e000bb b.1............b
|
||||
77b7e490: 07878d00 89000010 00bb8d07 8d0062f0 .............b..
|
||||
77b7e4a0: 00100787 0004b900 07890000 00100005 ................
|
||||
77b7e4b0: 08c78300 8df37549 630000bb 0183b800 ....Iu.....c....
|
||||
77b7e4c0: 00b90000 89000008 00000507 c7830020 ............ ...
|
||||
77b7e4d0: f3754908 e000838d 220f0062 0080b9d8 .Iu.....b.."....
|
||||
77b7e4e0: 320fc000 08e8ba0f c031300f b8d0000f ...2.....01.....
|
||||
77b7e4f0: 00000020 6ad8000f 00858d10 50000002 ......j.......P
|
||||
|
||||
|
||||
Return value
|
||||
|
||||
Reference in New Issue
Block a user