[U-Boot] [PATCH v1 00/12] efi_loader+video: support for Shell.efi

Rob Clark
2017-09-10T13:22:21Z

This patchset gets Shell.efi working to the point where we can start
running SCT.efi (the UEFI test suite). There is more fat/fs work needed
so that SCT can actually write results to a file so we can even see what
is passing and what is not.

This applies on top of the "efi_loader: enough UEFI for standard distro
boot" patchset plus two patches from Heinrich which are also required:

efi_loader: support 16 protocols per efi_object
efi_loader: allow creating new handles

Leif added stubbed implementations for the additional protocols that
Shell.efi required, on top of what was added in the standard distro boot
patchset, and I fleshed out the implementation enough for what Shell/
SCT required. There are still parts unimplemented, but IMHO the better
thing to do is concentrate on what is needed to get SCT running properly
so that we can implement the remaining bits having tests to test the
implementation.

There are 3 dm/video patches at the end, which aren't strictly required
but fix issues with Shell running on vidconsole. (It is very convenient
for debugging to have Shell on screen with u-boot debug prints going to
serial.)

The last HACK patch is not intended to be merged, just to show the
remaining TODOs to have things working properly.

Leif Lindholm (3):
efi_loader: add stub EFI_DEVICE_PATH_UTILITIES_PROTOCOL
efi_loader: add stub HII protocols
efi_loader: add EFI_UNICODE_COLLATION_PROTOCOL stub

Rob Clark (9):
efi_loader: start fleshing out HII
efi_loader: flesh out unicode protocol
efi_loader: start fleshing out efi_device_path_utilities
efi_loader: SIMPLE_TEXT_INPUT_EX plus wire up objects properly
efi_loader: console support for color attributes
dm: video: Fix cache flushes
dm: video: Add basic ANSI escape sequence support
dm: video: Add color ANSI escape sequence support
HACK: efi_loader: hacks for SCT

drivers/video/vidconsole-uclass.c | 209 ++++++++++++
drivers/video/video-uclass.c | 4 +-
include/config_distro_bootcmd.h | 2 +-
include/efi_api.h | 429 +++++++++++++++++++++++-
include/efi_loader.h | 21 +-
include/video.h | 7 +
include/video_console.h | 11 +
lib/efi_loader/Makefile | 1 +
lib/efi_loader/efi_boottime.c | 26 +-
lib/efi_loader/efi_console.c | 160 ++++++++-
lib/efi_loader/efi_device_path_utilities.c | 87 +++++
lib/efi_loader/efi_file.c | 11 +-
lib/efi_loader/efi_hii.c | 505 +++++++++++++++++++++++++++++
lib/efi_loader/efi_unicode.c | 170 ++++++++++
14 files changed, 1610 insertions(+), 33 deletions(-)
create mode 100644 lib/efi_loader/efi_device_path_utilities.c
create mode 100644 lib/efi_loader/efi_hii.c
create mode 100644 lib/efi_loader/efi_unicode.c

--
2.13.5