efi: Call console-control to enter text mode

Change-Id: Ife1df3415bc5a31801bcb3d925f1b7c3a105f51b
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2250
Reviewed-by: Adrien Destugues <[email protected]>
This commit is contained in:
Alexander von Gluck IV
2020-12-07 11:32:28 +00:00
committed by Adrien Destugues
parent 8eafd6cd04
commit 9adc70887e
2 changed files with 80 additions and 0 deletions
@@ -0,0 +1,34 @@
// Copyright 2020 Haiku, Inc. All rights reserved
// Released under the terms of the MIT License
#pragma once
#include <efi/types.h>
#define EFI_CONSOLE_CONTROL_PROTOCOL_GUID \
{0xf42f7782, 0x012e, 0x4c12, \
{0x99, 0x56, 0x49, 0xf9, 0x43, 0x04, 0xf7, 0x21}}
extern efi_guid ConsoleControlProtocol;
typedef enum {
EfiConsoleControlScreenText,
EfiConsoleControlScreenGraphics,
EfiConsoleControlScreenMax
} efi_console_control_screen_mode;
typedef struct efi_console_control_protocol {
uint64_t Revision;
efi_status (*GetMode) (struct efi_console_control_protocol* self,
efi_console_control_screen_mode* mode,
bool* gopUgaExists,
bool* stdInLocked) EFIAPI;
efi_status (*SetMode) (struct efi_console_control_protocol* self,
efi_console_control_screen_mode mode) EFIAPI;
efi_status (*LockStdIn) (struct efi_console_control_protocol* self,
uint16_t* password);
} efi_console_control_protocol;