summaryrefslogtreecommitdiff
path: root/UnixPkg/Sec/Gasket.c
diff options
context:
space:
mode:
authorandrewfish <andrewfish@6f19259b-4bc3-4df7-8a09-765794883524>2010-11-30 23:38:40 +0000
committerandrewfish <andrewfish@6f19259b-4bc3-4df7-8a09-765794883524>2010-11-30 23:38:40 +0000
commit2ff79f2eda16f8219140d3dae188d2b341f610e1 (patch)
tree693b0c0223c7f3a312f292a3a5ba9eff0def4dbe /UnixPkg/Sec/Gasket.c
parente23a349aaec2ba7fd4218c6dabaf42da0aa9aa8e (diff)
downloadedk2-platforms-2ff79f2eda16f8219140d3dae188d2b341f610e1.tar.xz
Adding Simple Pointer, GOP, SimpleTextInEx, and Networking protocols to the emulator. Cleaned up POSIX include situation by centralizing it in a single file, like NT32. Fixed TPL issue with TPL High not being emulated correctly, it was possible to take a timer tick when the locks in the DXE core should have prevented this. Remove some unused files to make things easier to maintain.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11105 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'UnixPkg/Sec/Gasket.c')
-rw-r--r--UnixPkg/Sec/Gasket.c80
1 files changed, 70 insertions, 10 deletions
diff --git a/UnixPkg/Sec/Gasket.c b/UnixPkg/Sec/Gasket.c
index 826e13bad3..3c7ef80097 100644
--- a/UnixPkg/Sec/Gasket.c
+++ b/UnixPkg/Sec/Gasket.c
@@ -1,6 +1,6 @@
/** @file
- Copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>
+ Copyright (c) 2008 - 2010, Apple Inc. All rights reserved.<BR>
This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License
@@ -369,28 +369,88 @@ GasketUgaCheckKey (EFI_UNIX_UGA_IO_PROTOCOL *UgaIo)
EFI_STATUS
EFIAPI
-GasketUgaGetKey (EFI_UNIX_UGA_IO_PROTOCOL *UgaIo, EFI_INPUT_KEY *key)
+GasketUgaKeySetState (EFI_UNIX_UGA_IO_PROTOCOL *UgaIo, EFI_KEY_TOGGLE_STATE *KeyToggleState)
+{
+ return GasketUintnUintn (UgaGetKey, (UINTN)UgaIo, (UINTN)KeyToggleState);
+}
+
+EFI_STATUS
+EFIAPI
+GasketUgaGetKey (EFI_UNIX_UGA_IO_PROTOCOL *UgaIo, EFI_KEY_DATA *key)
{
return GasketUintnUintn (UgaGetKey, (UINTN)UgaIo, (UINTN)key);
}
EFI_STATUS
EFIAPI
+GasketUgaRegisterKeyNotify (
+ IN EFI_UNIX_UGA_IO_PROTOCOL *UgaIo,
+ IN UGA_REGISTER_KEY_NOTIFY_CALLBACK CallBack,
+ IN VOID *Context
+ )
+{
+ return GasketUintnUintnUintn (UgaRegisterKeyNotify, (UINTN)UgaIo, (UINTN)CallBack, (UINTN)Context);
+}
+
+EFI_STATUS
+EFIAPI
GasketUgaBlt (
EFI_UNIX_UGA_IO_PROTOCOL *UgaIo,
IN EFI_UGA_PIXEL *BltBuffer OPTIONAL,
IN EFI_UGA_BLT_OPERATION BltOperation,
- IN UINTN SourceX,
- IN UINTN SourceY,
- IN UINTN DestinationX,
- IN UINTN DestinationY,
- IN UINTN Width,
- IN UINTN Height,
- IN UINTN Delta OPTIONAL
+ IN UGA_BLT_ARGS *Args
)
{
- return GasketUintn10Args (UgaBlt, (UINTN)UgaIo, (UINTN)BltBuffer, BltOperation, SourceX, SourceY, DestinationX, DestinationY, Width, Height, Delta);
+ return GasketUintnUintnUintnUintn (UgaBlt, (UINTN)UgaIo, (UINTN)BltBuffer, (UINTN)BltOperation, (UINTN)Args);
+}
+
+EFI_STATUS
+EFIAPI
+GasketUgaCheckPointer (EFI_UNIX_UGA_IO_PROTOCOL *UgaIo)
+{
+ return GasketUintn (UgaCheckPointer, (UINTN)UgaIo);
+}
+
+EFI_STATUS
+EFIAPI
+GasketUgaGetPointerState (EFI_UNIX_UGA_IO_PROTOCOL *UgaIo, EFI_SIMPLE_POINTER_STATE *state)
+{
+ return GasketUintnUintn (UgaGetPointerState, (UINTN)UgaIo, (UINTN)state);
+}
+
+void
+GasketUnixEnableInterrupt (void)
+{
+ GasketVoid (UnixEnableInterrupt);
+}
+
+void
+GasketUnixDisableInterrupt (void)
+{
+ GasketVoid (UnixDisableInterrupt);
+}
+
+
+int
+Gasketgetifaddrs (struct ifaddrs **ifap)
+{
+ return( GasketUintn( getifaddrs, ( UINTN ) ifap ) );
+}
+
+
+void
+Gasketfreeifaddrs (struct ifaddrs *ifap)
+{
+ GasketUintn( freeifaddrs, ( UINTN ) ifap );
}
+
+int
+Gasketsocket (int domain, int type, int protocol )
+{
+ return( GasketUintnUintnUintn( socket, domain, type, protocol ) );
+}
+
+
#endif