
Hi Simon,
On Wed, Jul 22, 2015 at 11:48 PM, Simon Glass sjg@chromium.org wrote:
This series allows U-Boot to be built as an EFI payload so that U-Boot can be started on almost any x86 platform that supports EFI. This is implemented as a stub which EFI can load plus a payload that is copied to RAM. The payload contains a normal U-Boot binary image and device tree.
This allows U-Boot to run on platforms that have EFI support but are not supported natively by U-Boot. It also allows testing and fiddling with the board using U-Boots memory display and other commands.
In addition, U-Boot can be built as an EFI application. This should work regardless of the board type since it only relies on EFI services. However only 32-bit EFI is supported in this case. Again it can be used to snoop around the platform.
A README provides further details of how this series operates.
This is really great work! Thank you.
So far I've finished reviewing the first 33 patch in the series, which covers the u-boot efi application support. After I started to look at the efi payload support whening review patch#34, I came up with another solution[1] to create efi payload which is different from yours. My version does not touch ASFLAGS_REMOVE for u-boot-dtb.o hence I believe it can be easily portable to ARM.
I've tested u-boot.efi on Intel Crown Bay and QEMU, and u-boot-payload.efi on QEMU 64-bit. They work like a charm. It's amazing work!
I will continue reviewing the remaining patches tomorrow.
[1]: http://patchwork.ozlabs.org/patch/499458/
[snip]
Regards, Bin