]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Include/Protocol/SimpleTextInEx.h
MdePkg/SimpleTextInEx.h: Fix comments alignment
[mirror_edk2.git] / MdePkg / Include / Protocol / SimpleTextInEx.h
index 6420a55a9fc50d9cc719f14da889993b01b30a52..ffc11c601e1304e3ee283d4675a4a633dc4bd571 100644 (file)
@@ -1,24 +1,26 @@
 /** @file\r
   Simple Text Input Ex protocol from the UEFI 2.0 specification.\r
-  \r
+\r
   This protocol defines an extension to the EFI_SIMPLE_TEXT_INPUT_PROTOCOL\r
   which exposes much more state and modifier information from the input device,\r
   also allows one to register a notification for a particular keystroke.\r
 \r
-  Copyright (c) 2006 - 2009, Intel Corporation. All rights reserved.<BR>\r
-  This program and the accompanying materials                          \r
-  are licensed and made available under the terms and conditions of the BSD License         \r
-  which accompanies this distribution.  The full text of the license may be found at        \r
-  http://opensource.org/licenses/bsd-license.php                                            \r
+  Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>\r
+  This program and the accompanying materials\r
+  are licensed and made available under the terms and conditions of the BSD License\r
+  which accompanies this distribution.  The full text of the license may be found at\r
+  http://opensource.org/licenses/bsd-license.php\r
 \r
-  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,                     \r
-  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.             \r
+  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
+  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
 \r
 **/\r
 \r
 #ifndef __SIMPLE_TEXT_IN_EX_H__\r
 #define __SIMPLE_TEXT_IN_EX_H__\r
 \r
+#include <Protocol/SimpleTextIn.h>\r
+\r
 #define EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL_GUID \\r
   {0xdd9e7534, 0x7762, 0x4698, { 0x8c, 0x14, 0xf5, 0x85, 0x17, 0xa6, 0x25, 0xaa } }\r
 \r
@@ -45,7 +47,7 @@ typedef struct _EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL EFI_SIMPLE_TEXT_INPUT_EX_PROTO
 \r
 \r
   @retval EFI_SUCCESS       The device was reset.\r
-  \r
+\r
   @retval EFI_DEVICE_ERROR  The device is not functioning\r
                             correctly and could not be reset.\r
 \r
@@ -111,17 +113,21 @@ typedef struct {
 #define EFI_MENU_KEY_PRESSED      0x00000100\r
 #define EFI_SYS_REQ_PRESSED       0x00000200\r
 \r
-//                            \r
-// Toggle state               \r
-//                            \r
+//\r
+// Toggle state\r
+//\r
 #define EFI_TOGGLE_STATE_VALID    0x80\r
+#define EFI_KEY_STATE_EXPOSED     0x40\r
 #define EFI_SCROLL_LOCK_ACTIVE    0x01\r
 #define EFI_NUM_LOCK_ACTIVE       0x02\r
 #define EFI_CAPS_LOCK_ACTIVE      0x04\r
-                              \r
-//                            \r
-// EFI Scan codes             \r
-//                            \r
+\r
+//\r
+// EFI Scan codes\r
+//\r
+#define SCAN_F11                  0x0015\r
+#define SCAN_F12                  0x0016\r
+#define SCAN_PAUSE                0x0048\r
 #define SCAN_F13                  0x0068\r
 #define SCAN_F14                  0x0069\r
 #define SCAN_F15                  0x006A\r
@@ -176,21 +182,18 @@ typedef struct {
   state information, and in those cases the high order bit in the\r
   respective Toggle and Shift state fields should not be active.\r
 \r
-  \r
+\r
   @param This     A pointer to the EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL instance.\r
 \r
   @param KeyData  A pointer to a buffer that is filled in with\r
                   the keystroke state data for the key that was\r
                   pressed.\r
 \r
-  \r
-  @retval EFI_SUCCESS     The keystroke information was\r
-                          returned.\r
-  \r
-  @retval EFI_NOT_READY   There was no keystroke data available.\r
-                          EFI_DEVICE_ERROR The keystroke\r
-                          information was not returned due to\r
-                          hardware errors.\r
+\r
+  @retval EFI_SUCCESS      The keystroke information was returned.\r
+  @retval EFI_NOT_READY    There was no keystroke data available.\r
+  @retval EFI_DEVICE_ERROR The keystroke information was not returned due to\r
+                           hardware errors.\r
 \r
 \r
 **/\r
@@ -204,13 +207,13 @@ EFI_STATUS
 /**\r
   The SetState() function allows the input device hardware to\r
   have state settings adjusted.\r
-  \r
+\r
   @param This           A pointer to the EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL instance.\r
-  \r
+\r
   @param KeyToggleState Pointer to the EFI_KEY_TOGGLE_STATE to\r
                         set the state for the input device.\r
-  \r
-  \r
+\r
+\r
   @retval EFI_SUCCESS       The device state was set appropriately.\r
 \r
   @retval EFI_DEVICE_ERROR  The device is not functioning\r
@@ -240,23 +243,24 @@ EFI_STATUS
 /**\r
   The RegisterKeystrokeNotify() function registers a function\r
   which will be called when a specified keystroke will occur.\r
-  \r
+\r
   @param This                     A pointer to the EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL instance.\r
-  \r
+\r
   @param KeyData                  A pointer to a buffer that is filled in with\r
                                   the keystroke information for the key that was\r
-                                  pressed.\r
-  \r
-  @param KeyNotificationFunction  Points to the function to be\r
-                                  called when the key sequence\r
-                                  is typed specified by KeyData.\r
-  \r
-  \r
+                                  pressed. If KeyData.Key, KeyData.KeyState.KeyToggleState\r
+                                  and KeyData.KeyState.KeyShiftState are 0, then any incomplete\r
+                                  keystroke will trigger a notification of the KeyNotificationFunction.\r
+\r
+  @param KeyNotificationFunction  Points to the function to be called when the key sequence\r
+                                  is typed specified by KeyData. This notification function\r
+                                  should be called at <=TPL_CALLBACK.\r
+\r
+\r
   @param NotifyHandle             Points to the unique handle assigned to\r
                                   the registered notification.\r
-  \r
-  @retval EFI_SUCCESS           The device state was set\r
-                                appropriately.\r
+\r
+  @retval EFI_SUCCESS           Key notify was registered successfully.\r
 \r
   @retval EFI_OUT_OF_RESOURCES  Unable to allocate necessary\r
                                 data structures.\r
@@ -268,20 +272,20 @@ EFI_STATUS
   IN  EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL *This,\r
   IN  EFI_KEY_DATA                      *KeyData,\r
   IN  EFI_KEY_NOTIFY_FUNCTION           KeyNotificationFunction,\r
-  OUT EFI_HANDLE                        *NotifyHandle\r
+  OUT VOID                              **NotifyHandle\r
 );\r
 \r
 /**\r
   The UnregisterKeystrokeNotify() function removes the\r
   notification which was previously registered.\r
-  \r
+\r
   @param This               A pointer to the EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL instance.\r
-  \r
+\r
   @param NotificationHandle The handle of the notification\r
                             function being unregistered.\r
-  \r
-  @retval EFI_SUCCESS The device state was set appropriately.\r
-  \r
+\r
+  @retval EFI_SUCCESS           Key notify was unregistered successfully.\r
+\r
   @retval EFI_INVALID_PARAMETER The NotificationHandle is\r
                                 invalid.\r
 \r
@@ -290,7 +294,7 @@ typedef
 EFI_STATUS\r
 (EFIAPI *EFI_UNREGISTER_KEYSTROKE_NOTIFY)(\r
   IN EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL  *This,\r
-  IN EFI_HANDLE                         NotificationHandle\r
+  IN VOID                               *NotificationHandle\r
 );\r
 \r
 \r