/* console_control.h - definitions of the console control protocol */ /* * VAS_EBOOT -- GRand Unified Bootloader * Copyright (C) 2006,2007 Free Software Foundation, Inc. * * VAS_EBOOT is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * VAS_EBOOT is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with VAS_EBOOT. If not, see . */ /* The console control protocol is not a part of the EFI spec, but defined in Intel's Sample Implementation. */ #ifndef VAS_EBOOT_EFI_CONSOLE_CONTROL_HEADER #define VAS_EBOOT_EFI_CONSOLE_CONTROL_HEADER 1 #include #define VAS_EBOOT_EFI_CONSOLE_CONTROL_GUID \ { 0xf42f7782, 0x12e, 0x4c12, \ { 0x99, 0x56, 0x49, 0xf9, 0x43, 0x4, 0xf7, 0x21 } \ } enum VasEBoot_efi_screen_mode { VAS_EBOOT_EFI_SCREEN_TEXT, VAS_EBOOT_EFI_SCREEN_GRAPHICS, VAS_EBOOT_EFI_SCREEN_TEXT_MAX_VALUE }; typedef enum VasEBoot_efi_screen_mode VasEBoot_efi_screen_mode_t; struct VasEBoot_efi_console_control_protocol { VasEBoot_efi_status_t (__VasEBoot_efi_api *get_mode) (struct VasEBoot_efi_console_control_protocol *this, VasEBoot_efi_screen_mode_t *mode, VasEBoot_efi_boolean_t *uga_exists, VasEBoot_efi_boolean_t *std_in_locked); VasEBoot_efi_status_t (__VasEBoot_efi_api *set_mode) (struct VasEBoot_efi_console_control_protocol *this, VasEBoot_efi_screen_mode_t mode); VasEBoot_efi_status_t (__VasEBoot_efi_api *lock_std_in) (struct VasEBoot_efi_console_control_protocol *this, VasEBoot_efi_char16_t *password); }; typedef struct VasEBoot_efi_console_control_protocol VasEBoot_efi_console_control_protocol_t; #endif /* ! VAS_EBOOT_EFI_CONSOLE_CONTROL_HEADER */