21 Oct, 2015

1 commit


05 Aug, 2015

4 commits

  • The EFI stub can pass a table to U-Boot with information about the memory map
    Potentially other things will follow. Add a way to access this table.

    Signed-off-by: Simon Glass
    Reviewed-by: Bin Meng

    Simon Glass
     
  • Most EFI implementations use 64-bit. Add a way to build U-Boot as a 64-bit
    EFI payload. The payload unpacks a (32-bit) U-Boot and starts it. This can
    be enabled for x86 boards at present.

    Signed-off-by: Simon Glass
    Improvements to how the payload is built:
    Signed-off-by: Bin Meng
    Reviewed-by: Bin Meng
    Tested-by: Bin Meng

    Simon Glass
     
  • It is useful to be able to load U-Boot onto a board even if is it already
    running EFI. This can allow access to the U-Boot command interface, flexible
    booting options and easier development.

    The easiest way to do this is to build U-Boot as a binary blob and have an
    EFI stub copy it into RAM. Add support for this feature, targeting 32-bit
    initially.

    Also add a way to detect when U-Boot has been loaded via a stub. This goes
    in common.h since it needs to be widely available so that we avoid redoing
    initialisation that should be skipped.

    Signed-off-by: Simon Glass
    Improvements to how the payload is built:
    Signed-off-by: Bin Meng
    Reviewed-by: Bin Meng
    Tested-by: Bin Meng

    Simon Glass
     
  • When running as an EFI application, U-Boot must request memory from EFI,
    and provide access to the boot services U-Boot needs.

    Add library code to perform these tasks. This includes efi_main() which is
    the entry point from EFI. U-Boot is built as a shared library.

    Signed-off-by: Simon Glass
    Reviewed-by: Bin Meng

    Simon Glass