diff options
author | Jiaqing Zhao <jiaqing.zhao@intel.com> | 2020-11-15 15:26:19 +0800 |
---|---|---|
committer | Jiaqing Zhao <jiaqing.zhao@intel.com> | 2020-11-15 15:26:19 +0800 |
commit | 6c04004f63b963448d17ecb46b1d48824a20d00e (patch) | |
tree | 2de4ad66fbdac08cd9257046f1a68d4f1d66b2ad /inc | |
parent | 773f30af293fc174732891994bb8deafe015c75d (diff) | |
download | gnu-efi-6c04004f63b963448d17ecb46b1d48824a20d00e.tar.gz |
Add EFI_SHELL_DYNAMIC_COMMAND_PROTOCOL definitions
Signed-off-by: Jiaqing Zhao <jiaqing.zhao@intel.com>
Diffstat (limited to 'inc')
-rw-r--r-- | inc/efilib.h | 1 | ||||
-rw-r--r-- | inc/efishell.h | 27 |
2 files changed, 28 insertions, 0 deletions
diff --git a/inc/efilib.h b/inc/efilib.h index 1e0ae56..6b6faf4 100644 --- a/inc/efilib.h +++ b/inc/efilib.h @@ -150,6 +150,7 @@ extern EFI_GUID SimpleTextInputExProtocol; extern EFI_GUID ShellProtocolGuid; extern EFI_GUID ShellParametersProtocolGuid; +extern EFI_GUID ShellDynamicCommandProtocolGuid; // // EFI Variable strings diff --git a/inc/efishell.h b/inc/efishell.h index 7561007..aa3fab2 100644 --- a/inc/efishell.h +++ b/inc/efishell.h @@ -419,4 +419,31 @@ typedef struct _EFI_SHELL_PARAMETERS_PROTOCOL { SHELL_FILE_HANDLE StdErr; } EFI_SHELL_PARAMETERS_PROTOCOL; +#define EFI_SHELL_DYNAMIC_COMMAND_PROTOCOL_GUID \ + { 0x3c7200e9, 0x005f, 0x4ea4, { 0x87, 0xde, 0xa3, 0xdf, 0xac, 0x8a, 0x27, 0xc3 } } + +INTERFACE_DECL(_EFI_SHELL_DYNAMIC_COMMAND_PROTOCOL); + +typedef +SHELL_STATUS +(EFIAPI *SHELL_COMMAND_HANDLER)( + IN struct _EFI_SHELL_DYNAMIC_COMMAND_PROTOCOL *This, + IN EFI_SYSTEM_TABLE *SystemTable, + IN EFI_SHELL_PARAMETERS_PROTOCOL *ShellParameters, + IN EFI_SHELL_PROTOCOL *Shell + ); + +typedef +CHAR16* +(EFIAPI *SHELL_COMMAND_GETHELP)( + IN struct _EFI_SHELL_DYNAMIC_COMMAND_PROTOCOL *This, + IN CONST CHAR8 *Language + ); + +typedef struct _EFI_SHELL_DYNAMIC_COMMAND_PROTOCOL { + CONST CHAR16 *CommandName; + SHELL_COMMAND_HANDLER Handler; + SHELL_COMMAND_GETHELP GetHelp; +} EFI_SHELL_DYNAMIC_COMMAND_PROTOCOL; + #endif |