\r
#include "Gop.h"\r
\r
-\r
BOOLEAN\r
GopPrivateIsKeyRegistered (\r
IN EFI_KEY_DATA *RegsiteredData,\r
IN EFI_KEY_DATA *InputData\r
)\r
+\r
/*++\r
\r
Routine Description:\r
ASSERT (RegsiteredData != NULL && InputData != NULL);\r
\r
if ((RegsiteredData->Key.ScanCode != InputData->Key.ScanCode) ||\r
- (RegsiteredData->Key.UnicodeChar != InputData->Key.UnicodeChar)) {\r
+ (RegsiteredData->Key.UnicodeChar != InputData->Key.UnicodeChar))\r
+ {\r
return FALSE;\r
}\r
\r
//\r
// Assume KeyShiftState/KeyToggleState = 0 in Registered key data means these state could be ignored.\r
//\r
- if (RegsiteredData->KeyState.KeyShiftState != 0 &&\r
- RegsiteredData->KeyState.KeyShiftState != InputData->KeyState.KeyShiftState) {\r
+ if ((RegsiteredData->KeyState.KeyShiftState != 0) &&\r
+ (RegsiteredData->KeyState.KeyShiftState != InputData->KeyState.KeyShiftState))\r
+ {\r
return FALSE;\r
}\r
- if (RegsiteredData->KeyState.KeyToggleState != 0 &&\r
- RegsiteredData->KeyState.KeyToggleState != InputData->KeyState.KeyToggleState) {\r
+\r
+ if ((RegsiteredData->KeyState.KeyToggleState != 0) &&\r
+ (RegsiteredData->KeyState.KeyToggleState != InputData->KeyState.KeyToggleState))\r
+ {\r
return FALSE;\r
}\r
\r
return TRUE;\r
-\r
}\r
\r
-\r
VOID\r
EFIAPI\r
GopPrivateMakeCallbackFunction (\r
- IN VOID *Context,\r
- IN EFI_KEY_DATA *KeyData\r
+ IN VOID *Context,\r
+ IN EFI_KEY_DATA *KeyData\r
)\r
{\r
- LIST_ENTRY *Link;\r
+ LIST_ENTRY *Link;\r
EMU_GOP_SIMPLE_TEXTIN_EX_NOTIFY *CurrentNotify;\r
- GOP_PRIVATE_DATA *Private = (GOP_PRIVATE_DATA *)Context;\r
+ GOP_PRIVATE_DATA *Private = (GOP_PRIVATE_DATA *)Context;\r
\r
KeyMapMake (KeyData);\r
\r
}\r
}\r
\r
-\r
VOID\r
EFIAPI\r
GopPrivateBreakCallbackFunction (\r
- IN VOID *Context,\r
- IN EFI_KEY_DATA *KeyData\r
+ IN VOID *Context,\r
+ IN EFI_KEY_DATA *KeyData\r
)\r
{\r
KeyMapBreak (KeyData);\r
}\r
\r
-\r
-\r
//\r
// Simple Text In implementation.\r
//\r
EFI_STATUS\r
EFIAPI\r
EmuGopSimpleTextInReset (\r
- IN EFI_SIMPLE_TEXT_INPUT_PROTOCOL *This,\r
- IN BOOLEAN ExtendedVerification\r
+ IN EFI_SIMPLE_TEXT_INPUT_PROTOCOL *This,\r
+ IN BOOLEAN ExtendedVerification\r
)\r
{\r
GOP_PRIVATE_DATA *Private;\r
//\r
// A reset is draining the Queue\r
//\r
- while (Private->EmuGraphicsWindow->GetKey (Private->EmuGraphicsWindow, &KeyData) == EFI_SUCCESS)\r
- ;\r
+ while (Private->EmuGraphicsWindow->GetKey (Private->EmuGraphicsWindow, &KeyData) == EFI_SUCCESS) {\r
+ }\r
\r
//\r
// Leave critical section and return\r
return EFI_SUCCESS;\r
}\r
\r
-\r
/**\r
Reads the next keystroke from the input device. The WaitForKey Event can\r
be used to test for existence of a keystroke via WaitForEvent () call.\r
EFI_STATUS\r
EFIAPI\r
EmuGopSimpleTextInReadKeyStroke (\r
- IN EFI_SIMPLE_TEXT_INPUT_PROTOCOL *This,\r
- OUT EFI_INPUT_KEY *Key\r
+ IN EFI_SIMPLE_TEXT_INPUT_PROTOCOL *This,\r
+ OUT EFI_INPUT_KEY *Key\r
)\r
{\r
GOP_PRIVATE_DATA *Private;\r
//\r
// Enter critical section\r
//\r
- OldTpl = gBS->RaiseTPL (TPL_NOTIFY);\r
+ OldTpl = gBS->RaiseTPL (TPL_NOTIFY);\r
\r
- Status = Private->EmuGraphicsWindow->GetKey (Private->EmuGraphicsWindow, &KeyData);\r
+ Status = Private->EmuGraphicsWindow->GetKey (Private->EmuGraphicsWindow, &KeyData);\r
if (!EFI_ERROR (Status)) {\r
if ((KeyData.Key.ScanCode == 0) && (KeyData.Key.UnicodeChar == 0)) {\r
// Modifier key was pressed\r
return Status;\r
}\r
\r
-\r
-\r
/**\r
SimpleTextIn and SimpleTextInEx Notify Wait Event\r
\r
VOID\r
EFIAPI\r
EmuGopSimpleTextInWaitForKey (\r
- IN EFI_EVENT Event,\r
- IN VOID *Context\r
+ IN EFI_EVENT Event,\r
+ IN VOID *Context\r
)\r
{\r
GOP_PRIVATE_DATA *Private;\r
EFI_STATUS Status;\r
EFI_TPL OldTpl;\r
\r
- Private = (GOP_PRIVATE_DATA *) Context;\r
+ Private = (GOP_PRIVATE_DATA *)Context;\r
if (Private->EmuGraphicsWindow == NULL) {\r
return;\r
}\r
//\r
// Enter critical section\r
//\r
- OldTpl = gBS->RaiseTPL (TPL_NOTIFY);\r
+ OldTpl = gBS->RaiseTPL (TPL_NOTIFY);\r
\r
- Status = Private->EmuGraphicsWindow->CheckKey (Private->EmuGraphicsWindow);\r
+ Status = Private->EmuGraphicsWindow->CheckKey (Private->EmuGraphicsWindow);\r
if (!EFI_ERROR (Status)) {\r
//\r
// If a there is a key in the queue signal our event.\r
//\r
gBS->SignalEvent (Event);\r
}\r
+\r
//\r
// Leave critical section and return\r
//\r
gBS->RestoreTPL (OldTpl);\r
}\r
\r
-\r
//\r
// Simple Text Input Ex protocol functions\r
//\r
\r
-\r
/**\r
The Reset() function resets the input device hardware. As part\r
of initialization process, the firmware/device will make a quick\r
IN EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL *This,\r
IN BOOLEAN ExtendedVerification\r
)\r
+\r
/*++\r
\r
Routine Description:\r
return EFI_SUCCESS;\r
}\r
\r
-\r
-\r
/**\r
The function reads the next keystroke from the input device. If\r
there is no pending keystroke the function returns\r
EFI_STATUS\r
EFIAPI\r
EmuGopSimpleTextInExReadKeyStrokeEx (\r
- IN EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL *This,\r
- OUT EFI_KEY_DATA *KeyData\r
+ IN EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL *This,\r
+ OUT EFI_KEY_DATA *KeyData\r
)\r
+\r
/*++\r
\r
Routine Description:\r
GOP_PRIVATE_DATA *Private;\r
EFI_TPL OldTpl;\r
\r
-\r
if (KeyData == NULL) {\r
return EFI_INVALID_PARAMETER;\r
}\r
//\r
// Enter critical section\r
//\r
- OldTpl = gBS->RaiseTPL (TPL_NOTIFY);\r
+ OldTpl = gBS->RaiseTPL (TPL_NOTIFY);\r
\r
- Status = Private->EmuGraphicsWindow->GetKey(Private->EmuGraphicsWindow, KeyData);\r
+ Status = Private->EmuGraphicsWindow->GetKey (Private->EmuGraphicsWindow, KeyData);\r
\r
//\r
// Leave critical section and return\r
return Status;\r
}\r
\r
-\r
-\r
/**\r
The SetState() function allows the input device hardware to\r
have state settings adjusted.\r
}\r
\r
if (((Private->KeyState.KeyToggleState & EFI_TOGGLE_STATE_VALID) != EFI_TOGGLE_STATE_VALID) ||\r
- ((*KeyToggleState & EFI_TOGGLE_STATE_VALID) != EFI_TOGGLE_STATE_VALID)) {\r
+ ((*KeyToggleState & EFI_TOGGLE_STATE_VALID) != EFI_TOGGLE_STATE_VALID))\r
+ {\r
return EFI_UNSUPPORTED;\r
}\r
\r
//\r
// Enter critical section\r
//\r
- OldTpl = gBS->RaiseTPL (TPL_NOTIFY);\r
+ OldTpl = gBS->RaiseTPL (TPL_NOTIFY);\r
\r
- Status = Private->EmuGraphicsWindow->KeySetState (Private->EmuGraphicsWindow, KeyToggleState);\r
+ Status = Private->EmuGraphicsWindow->KeySetState (Private->EmuGraphicsWindow, KeyToggleState);\r
//\r
// Leave critical section and return\r
//\r
return Status;\r
}\r
\r
-\r
/**\r
SimpleTextIn and SimpleTextInEx Notify Wait Event\r
\r
VOID\r
EFIAPI\r
EmuGopRegisterKeyCallback (\r
- IN EFI_EVENT Event,\r
- IN VOID *Context\r
+ IN EFI_EVENT Event,\r
+ IN VOID *Context\r
)\r
{\r
- EMU_GOP_SIMPLE_TEXTIN_EX_NOTIFY *ExNotify = (EMU_GOP_SIMPLE_TEXTIN_EX_NOTIFY *)Context;\r
+ EMU_GOP_SIMPLE_TEXTIN_EX_NOTIFY *ExNotify = (EMU_GOP_SIMPLE_TEXTIN_EX_NOTIFY *)Context;\r
\r
ExNotify->KeyNotificationFn (&ExNotify->KeyData);\r
}\r
\r
-\r
-\r
/**\r
The RegisterKeystrokeNotify() function registers a function\r
which will be called when a specified keystroke will occur.\r
OUT VOID **NotifyHandle\r
)\r
{\r
- EFI_STATUS Status;\r
- GOP_PRIVATE_DATA *Private;\r
- EMU_GOP_SIMPLE_TEXTIN_EX_NOTIFY *CurrentNotify;\r
- LIST_ENTRY *Link;\r
- EMU_GOP_SIMPLE_TEXTIN_EX_NOTIFY *NewNotify;\r
+ EFI_STATUS Status;\r
+ GOP_PRIVATE_DATA *Private;\r
+ EMU_GOP_SIMPLE_TEXTIN_EX_NOTIFY *CurrentNotify;\r
+ LIST_ENTRY *Link;\r
+ EMU_GOP_SIMPLE_TEXTIN_EX_NOTIFY *NewNotify;\r
\r
- if (KeyData == NULL || KeyNotificationFunction == NULL || NotifyHandle == NULL) {\r
+ if ((KeyData == NULL) || (KeyNotificationFunction == NULL) || (NotifyHandle == NULL)) {\r
return EFI_INVALID_PARAMETER;\r
}\r
\r
//\r
// Allocate resource to save the notification function\r
//\r
- NewNotify = (EMU_GOP_SIMPLE_TEXTIN_EX_NOTIFY *) AllocateZeroPool (sizeof (EMU_GOP_SIMPLE_TEXTIN_EX_NOTIFY));\r
+ NewNotify = (EMU_GOP_SIMPLE_TEXTIN_EX_NOTIFY *)AllocateZeroPool (sizeof (EMU_GOP_SIMPLE_TEXTIN_EX_NOTIFY));\r
if (NewNotify == NULL) {\r
return EFI_OUT_OF_RESOURCES;\r
}\r
\r
NewNotify->Signature = EMU_GOP_SIMPLE_TEXTIN_EX_NOTIFY_SIGNATURE;\r
NewNotify->KeyNotificationFn = KeyNotificationFunction;\r
- NewNotify->NotifyHandle = (EFI_HANDLE) NewNotify;\r
+ NewNotify->NotifyHandle = (EFI_HANDLE)NewNotify;\r
CopyMem (&NewNotify->KeyData, KeyData, sizeof (KeyData));\r
InsertTailList (&Private->NotifyList, &NewNotify->NotifyEntry);\r
\r
);\r
ASSERT_EFI_ERROR (Status);\r
\r
-\r
*NotifyHandle = NewNotify->NotifyHandle;\r
\r
return EFI_SUCCESS;\r
-\r
}\r
\r
-\r
/**\r
The UnregisterKeystrokeNotify() function removes the\r
notification which was previously registered.\r
IN EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL *This,\r
IN VOID *NotificationHandle\r
)\r
+\r
/*++\r
\r
Routine Description:\r
\r
**/\r
{\r
- GOP_PRIVATE_DATA *Private;\r
- LIST_ENTRY *Link;\r
- EMU_GOP_SIMPLE_TEXTIN_EX_NOTIFY *CurrentNotify;\r
+ GOP_PRIVATE_DATA *Private;\r
+ LIST_ENTRY *Link;\r
+ EMU_GOP_SIMPLE_TEXTIN_EX_NOTIFY *CurrentNotify;\r
\r
if (NotificationHandle == NULL) {\r
return EFI_INVALID_PARAMETER;\r
}\r
\r
- if (((EMU_GOP_SIMPLE_TEXTIN_EX_NOTIFY *) NotificationHandle)->Signature != EMU_GOP_SIMPLE_TEXTIN_EX_NOTIFY_SIGNATURE) {\r
+ if (((EMU_GOP_SIMPLE_TEXTIN_EX_NOTIFY *)NotificationHandle)->Signature != EMU_GOP_SIMPLE_TEXTIN_EX_NOTIFY_SIGNATURE) {\r
return EFI_INVALID_PARAMETER;\r
}\r
\r
return EFI_INVALID_PARAMETER;\r
}\r
\r
-\r
-\r
/**\r
Initialize SimplelTextIn and SimpleTextInEx protocols in the Private\r
context structure.\r
**/\r
EFI_STATUS\r
EmuGopInitializeSimpleTextInForWindow (\r
- IN GOP_PRIVATE_DATA *Private\r
+ IN GOP_PRIVATE_DATA *Private\r
)\r
{\r
EFI_STATUS Status;\r
);\r
ASSERT_EFI_ERROR (Status);\r
\r
-\r
//\r
// Initialize Simple Text In Ex\r
//\r
);\r
ASSERT_EFI_ERROR (Status);\r
\r
-\r
return Status;\r
}\r
\r
-\r
-\r
-\r
-\r
-\r
-\r
//\r
// Simple Pointer implementation.\r
//\r
\r
-\r
/**\r
Resets the pointer device hardware.\r
\r
EFI_STATUS\r
EFIAPI\r
EmuGopSimplePointerReset (\r
- IN EFI_SIMPLE_POINTER_PROTOCOL *This,\r
- IN BOOLEAN ExtendedVerification\r
+ IN EFI_SIMPLE_POINTER_PROTOCOL *This,\r
+ IN BOOLEAN ExtendedVerification\r
)\r
{\r
- GOP_PRIVATE_DATA *Private;\r
- EFI_SIMPLE_POINTER_STATE State;\r
- EFI_TPL OldTpl;\r
+ GOP_PRIVATE_DATA *Private;\r
+ EFI_SIMPLE_POINTER_STATE State;\r
+ EFI_TPL OldTpl;\r
\r
Private = GOP_PRIVATE_DATA_FROM_POINTER_MODE_THIS (This);\r
if (Private->EmuGraphicsWindow == NULL) {\r
//\r
// A reset is draining the Queue\r
//\r
- while (Private->EmuGraphicsWindow->GetPointerState (Private->EmuGraphicsWindow, &State) == EFI_SUCCESS)\r
- ;\r
+ while (Private->EmuGraphicsWindow->GetPointerState (Private->EmuGraphicsWindow, &State) == EFI_SUCCESS) {\r
+ }\r
\r
//\r
// Leave critical section and return\r
return EFI_SUCCESS;\r
}\r
\r
-\r
/**\r
Retrieves the current state of a pointer device.\r
\r
EFI_STATUS\r
EFIAPI\r
EmuGopSimplePointerGetState (\r
- IN EFI_SIMPLE_POINTER_PROTOCOL *This,\r
- IN OUT EFI_SIMPLE_POINTER_STATE *State\r
+ IN EFI_SIMPLE_POINTER_PROTOCOL *This,\r
+ IN OUT EFI_SIMPLE_POINTER_STATE *State\r
)\r
{\r
GOP_PRIVATE_DATA *Private;\r
//\r
// Enter critical section\r
//\r
- OldTpl = gBS->RaiseTPL (TPL_NOTIFY);\r
+ OldTpl = gBS->RaiseTPL (TPL_NOTIFY);\r
\r
- Status = Private->EmuGraphicsWindow->GetPointerState (Private->EmuGraphicsWindow, State);\r
+ Status = Private->EmuGraphicsWindow->GetPointerState (Private->EmuGraphicsWindow, State);\r
//\r
// Leave critical section and return\r
//\r
return Status;\r
}\r
\r
-\r
/**\r
SimplePointer Notify Wait Event\r
\r
VOID\r
EFIAPI\r
EmuGopSimplePointerWaitForInput (\r
- IN EFI_EVENT Event,\r
- IN VOID *Context\r
+ IN EFI_EVENT Event,\r
+ IN VOID *Context\r
)\r
{\r
GOP_PRIVATE_DATA *Private;\r
EFI_STATUS Status;\r
EFI_TPL OldTpl;\r
\r
- Private = (GOP_PRIVATE_DATA *) Context;\r
+ Private = (GOP_PRIVATE_DATA *)Context;\r
if (Private->EmuGraphicsWindow == NULL) {\r
return;\r
}\r
//\r
// Enter critical section\r
//\r
- OldTpl = gBS->RaiseTPL (TPL_NOTIFY);\r
+ OldTpl = gBS->RaiseTPL (TPL_NOTIFY);\r
\r
- Status = Private->EmuGraphicsWindow->CheckPointer (Private->EmuGraphicsWindow);\r
+ Status = Private->EmuGraphicsWindow->CheckPointer (Private->EmuGraphicsWindow);\r
if (!EFI_ERROR (Status)) {\r
//\r
// If the pointer state has changed, signal our event.\r
//\r
gBS->SignalEvent (Event);\r
}\r
+\r
//\r
// Leave critical section and return\r
//\r
gBS->RestoreTPL (OldTpl);\r
}\r
\r
-\r
/**\r
SimplePointer constructor\r
\r
**/\r
EFI_STATUS\r
EmuGopInitializeSimplePointerForWindow (\r
- IN GOP_PRIVATE_DATA *Private\r
+ IN GOP_PRIVATE_DATA *Private\r
)\r
{\r
EFI_STATUS Status;\r
Private->PointerMode.LeftButton = TRUE;\r
Private->PointerMode.RightButton = TRUE;\r
\r
- Private->SimplePointer.Reset = EmuGopSimplePointerReset;\r
- Private->SimplePointer.GetState = EmuGopSimplePointerGetState;\r
- Private->SimplePointer.Mode = &Private->PointerMode;\r
+ Private->SimplePointer.Reset = EmuGopSimplePointerReset;\r
+ Private->SimplePointer.GetState = EmuGopSimplePointerGetState;\r
+ Private->SimplePointer.Mode = &Private->PointerMode;\r
\r
Status = gBS->CreateEvent (\r
EVT_NOTIFY_WAIT,\r