
Alex,
On Fri, Jan 25, 2019 at 12:56:52PM +0100, Alexander Graf wrote:
On 24.01.19 12:04, AKASHI Takahiro wrote:
This patch set is a collection of patches to enhance efi user interfaces /commands. It will help improve user experience on efi boot and make it more usable *without* edk2's shell utility.
Let's see how it works: => efidebug boot add 1 SHELL scsi 1:1 /Shell.efi "" => efidebug boot add 2 HELLO scsi 1:1 /hello.efi "" => efidebug boot dump Boot0001: attributes: A-- (0x00000001) label: SHELL file_path: /VenHw(e61d73b9-a384-4acc-aeab-82e828f3628b)/Scsi(1,0)/HD(1,MBR,0x086246ba,0x800,0x40000)/\Shell.efi data: Boot0002: attributes: A-- (0x00000001) label: HELLO file_path: /VenHw(e61d73b9-a384-4acc-aeab-82e828f3628b)/Scsi(1,0)/HD(1,MBR,0x086246ba,0x800,0x40000)/\hello.efi data:
=> efidebug boot order 1 2 => efidebug boot order 1: Boot0001: SHELL 2: Boot0002: HELLO
=> run -e Boot0002 (or bootefi bootmgr - 2) ; '-' means no dtb specified WARNING: booting without device tree Booting: HELLO ## Starting EFI application at 000000007db8b040 ... Hello, world! ## Application terminated, r = 0
=> env set -e PlatformLang en ; important! => env print -e Boot0001: BS|RT, DataSize = 0x79 00000000: 01 00 00 00 66 00 53 00 48 00 45 00 4c 00 4c 00 ....f.S.H.E.L.L. 00000010: 00 00 01 04 14 00 b9 73 1d e6 84 a3 cc 4a ae ab .......s.....J.. 00000020: 82 e8 28 f3 62 8b 03 02 08 00 01 00 00 00 04 01 ..(.b........... 00000030: 2a 00 01 00 00 00 00 08 00 00 00 00 00 00 00 00 *............... 00000040: 04 00 00 00 00 00 ba 46 62 08 00 00 00 00 00 00 .......Fb....... 00000050: 00 00 00 00 00 00 01 01 04 04 1c 00 5c 00 5c 00 .............. 00000060: 53 00 68 00 65 00 6c 00 6c 00 2e 00 65 00 66 00 S.h.e.l.l...e.f. 00000070: 69 00 00 00 7f ff 04 00 00 i........ Boot0002: BS|RT, DataSize = 0x79 00000000: 01 00 00 00 66 00 48 00 45 00 4c 00 4c 00 4f 00 ....f.H.E.L.L.O. 00000010: 00 00 01 04 14 00 b9 73 1d e6 84 a3 cc 4a ae ab .......s.....J.. 00000020: 82 e8 28 f3 62 8b 03 02 08 00 01 00 00 00 04 01 ..(.b........... 00000030: 2a 00 01 00 00 00 00 08 00 00 00 00 00 00 00 00 *............... 00000040: 04 00 00 00 00 00 ba 46 62 08 00 00 00 00 00 00 .......Fb....... 00000050: 00 00 00 00 00 00 01 01 04 04 1c 00 5c 00 5c 00 .............. 00000060: 68 00 65 00 6c 00 6c 00 6f 00 2e 00 65 00 66 00 h.e.l.l.o...e.f. 00000070: 69 00 00 00 7f ff 04 00 00 i........ BootOrder: BS|RT, DataSize = 0x4 00000000: 01 00 02 00 .... PlatformLang: BS|RT, DataSize = 0x2 00000000: 65 6e en
=> run -e Boot0001 or bootefi bootmgr
(UEFI shell ...)
"env set" command now supports UEFI shell-like syntax:
=> env set -e foo =S"akashi" =0x012345 =Habcdef => env print -e foo foo: BS|RT, DataSize = 0xd 00000000: 61 6b 61 73 68 69 45 23 01 00 ab cd ef akashiE#.....
Other useful sub commands are: => efidebug devices ; print uefi devices => efidebug drivers ; print uefi drivers => efidebug dh ; print uefi handles => efidebug images ; print loaded images => efidebug memmap ; dump uefi memory map
Enjoy!
Did this patch set successfully pass Travis tests? Could you please point me to the results?
Not yet, probably next time? It may take some time for me to set up travis.
-Takahiro Akashi
Thanks,
Alex