diff options
| author | Peter Jones <pjones@redhat.com> | 2013-09-26 09:44:50 -0400 |
|---|---|---|
| committer | Peter Jones <pjones@redhat.com> | 2013-09-26 09:56:26 -0400 |
| commit | 193b5b6120ea07785dce8adbac3bc83f33de4fa6 (patch) | |
| tree | 1f8ba646c8c0e54c58292058d3589b8e63b72ccf /console_control.h | |
| parent | d65cbcfa6f2d42f385df9e8c2d5e649d4189dafb (diff) | |
| download | efi-boot-shim-193b5b6120ea07785dce8adbac3bc83f33de4fa6.tar.gz efi-boot-shim-193b5b6120ea07785dce8adbac3bc83f33de4fa6.zip | |
MokManager needs to disable the graphics console.
Without this patch, on some machines we never see MokManager's UI. This
protocol has never (I think?) been officially published, and yet I still
have new hardware that needs it.
If you're looking for a reference, look at:
EdkCompatibilityPkg/Foundation/Protocol/ConsoleControl/ConsoleControl.c
in the edk2 tree from Tiano.
Signed-off-by: Peter Jones <pjones@redhat.com>
Diffstat (limited to 'console_control.h')
| -rw-r--r-- | console_control.h | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/console_control.h b/console_control.h new file mode 100644 index 00000000..5fb8a4ae --- /dev/null +++ b/console_control.h @@ -0,0 +1,44 @@ +#ifndef _SHIM_CONSOLE_CONTROL_H +#define _SHIM_CONSOLE_CONTROL_H 1 + +#define EFI_CONSOLE_CONTROL_PROTOCOL_GUID \ + { 0xf42f7782, 0x12e, 0x4c12, {0x99, 0x56, 0x49, 0xf9, 0x43, 0x4, 0xf7, 0x21} } + +typedef struct _EFI_CONSOLE_CONTROL_PROTOCOL EFI_CONSOLE_CONTROL_PROTOCOL; + +typedef enum { + EfiConsoleControlScreenText, + EfiConsoleControlScreenGraphics, + EfiConsoleControlScreenMaxValue +} EFI_CONSOLE_CONTROL_SCREEN_MODE; + +typedef +EFI_STATUS +(EFIAPI *EFI_CONSOLE_CONTROL_PROTOCOL_GET_MODE) ( + IN EFI_CONSOLE_CONTROL_PROTOCOL *This, + OUT EFI_CONSOLE_CONTROL_SCREEN_MODE *Mode, + OUT BOOLEAN *GopUgaExists, OPTIONAL + OUT BOOLEAN *StdInLocked OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_CONSOLE_CONTROL_PROTOCOL_SET_MODE) ( + IN EFI_CONSOLE_CONTROL_PROTOCOL *This, + IN EFI_CONSOLE_CONTROL_SCREEN_MODE Mode + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_CONSOLE_CONTROL_PROTOCOL_LOCK_STD_IN) ( + IN EFI_CONSOLE_CONTROL_PROTOCOL *This, + IN CHAR16 *Password + ); + +struct _EFI_CONSOLE_CONTROL_PROTOCOL { + EFI_CONSOLE_CONTROL_PROTOCOL_GET_MODE GetMode; + EFI_CONSOLE_CONTROL_PROTOCOL_SET_MODE SetMode; + EFI_CONSOLE_CONTROL_PROTOCOL_LOCK_STD_IN LockStdIn; +}; + +#endif /* _SHIM_CONSOLE_CONTROL_H */ |
