[systemd-devel] [PATCH 1/1] graphics: Do not require nonstandard console control protocol

Tom Gundersen teg at jklm.no
Wed Jan 15 03:34:29 PST 2014


On Wed, Jan 15, 2014 at 12:08 PM, Joonas Lahtinen
<joonas.lahtinen at linux.intel.com> wrote:
> Console Control Protocol is a nonstandard UEFI interface and lack of
> it shall not be treated as an error.

Ah, great! I was struggling to make the splash work on tianocore for
the longest time, and this fixes it indeed.

Applied and pushed.

Only minor issue left now is that we need to explicitly clear the
screen before writing in console mode (as can be seen if you boot into
tianocore and press 'P' followed by any other keys to switch between
the modes). Care to take a look at that?

Cheers,

Tom

>  src/efi/graphics.c | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/src/efi/graphics.c b/src/efi/graphics.c
> index 062ce27..c85daa3 100644
> --- a/src/efi/graphics.c
> +++ b/src/efi/graphics.c
> @@ -67,8 +67,10 @@ EFI_STATUS graphics_mode(BOOLEAN on) {
>          EFI_STATUS err;
>
>          err = LibLocateProtocol(&ConsoleControlProtocolGuid, (VOID **)&ConsoleControl);
> -        if (EFI_ERROR(err))
> -                return err;
> +        if (EFI_ERROR(err)) {
> +                /* console control protocol is nonstandard and might not exist. */
> +                return err == EFI_NOT_FOUND ? EFI_SUCCESS : err;
> +        }
>
>          /* check current mode */
>          err = uefi_call_wrapper(ConsoleControl->GetMode, 4, ConsoleControl, &current, &uga_exists, &stdin_locked);
> --
> 1.8.1.4
>
> _______________________________________________
> systemd-devel mailing list
> systemd-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/systemd-devel


More information about the systemd-devel mailing list