From 2ff79f2eda16f8219140d3dae188d2b341f610e1 Mon Sep 17 00:00:00 2001 From: andrewfish Date: Tue, 30 Nov 2010 23:38:40 +0000 Subject: 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 --- UnixPkg/Sec/Gasket.h | 131 +++++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 106 insertions(+), 25 deletions(-) (limited to 'UnixPkg/Sec/Gasket.h') diff --git a/UnixPkg/Sec/Gasket.h b/UnixPkg/Sec/Gasket.h index 1b7187035a..4c75d8abcc 100644 --- a/UnixPkg/Sec/Gasket.h +++ b/UnixPkg/Sec/Gasket.h @@ -1,6 +1,6 @@ /** @file - Copyright (c) 2008 - 2009, Apple Inc. All rights reserved.
+ Copyright (c) 2008 - 2010, Apple Inc. All rights reserved.
This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License @@ -19,6 +19,7 @@ #include #include +#include #include @@ -177,11 +178,17 @@ Gasketclosedir ( int EFIAPI -Gasketstat (const char *path, STAT_FIX *buf); +Gasketstat ( + const char *path, + STAT_FIX *buf) + ; int EFIAPI -Gasketstatfs (const char *path, struct statfs *buf); +Gasketstatfs ( + const char *path, + struct statfs *buf + ); int EFIAPI @@ -293,6 +300,34 @@ Gasketsigaction ( struct sigaction *oact ); +int +EFIAPI +Gasketgetifaddrs ( + struct ifaddrs **ifap + ); + +void +EFIAPI +Gasketfreeifaddrs ( + struct ifaddrs *ifap + ); + +int +EFIAPI +Gasketsocket ( + int domain, + int type, + int protocol + ); + +void +EFIAPI +GasketUnixEnableInterrupt (void); + +void +EFIAPI +GasketUnixDisableInterrupt (void); + RETURN_STATUS EFIAPI GasketUnixPeCoffGetEntryPoint ( @@ -406,6 +441,13 @@ ReverseGasketUint64 ( UINT64 a ); +UINTN +ReverseGasketUint64Uint64 ( + VOID *CallBack, + VOID *Context, + VOID *Key + ); + // // Gasket functions for EFI_UNIX_UGA_IO_PROTOCOL // @@ -435,35 +477,59 @@ EFI_STATUS EFIAPI GasketUgaGetKey ( EFI_UNIX_UGA_IO_PROTOCOL *UgaIo, - EFI_INPUT_KEY *key + EFI_KEY_DATA *key ); EFI_STATUS EFIAPI -GasketUgaBlt ( +GasketUgaKeySetState ( EFI_UNIX_UGA_IO_PROTOCOL *UgaIo, + EFI_KEY_TOGGLE_STATE *KeyToggleState + ); + +EFI_STATUS +EFIAPI +GasketUgaRegisterKeyNotify ( + IN EFI_UNIX_UGA_IO_PROTOCOL *UgaIo, + IN UGA_REGISTER_KEY_NOTIFY_CALLBACK CallBack, + IN VOID *Context + ); + +EFI_STATUS +EFIAPI +GasketUgaBlt ( + IN 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 ); EFI_STATUS EFIAPI -UgaCreate ( - EFI_UNIX_UGA_IO_PROTOCOL **Uga, - CONST CHAR16 *Title +GasketUgaCheckPointer ( + EFI_UNIX_UGA_IO_PROTOCOL *UgaIo + ); + +EFI_STATUS +EFIAPI +GasketUgaGetPointerState ( + EFI_UNIX_UGA_IO_PROTOCOL *UgaIo, + EFI_SIMPLE_POINTER_STATE *state ); // -// Gasket functions for EFI_UNIX_UGA_IO_PROTOCOL +// Gasket functions for EFI_UNIX_UGA_IO_PROTOCOL C calls // + + +EFI_STATUS +EFIAPI +UgaCreate ( + EFI_UNIX_UGA_IO_PROTOCOL **Uga, + CONST CHAR16 *Title + ); + EFI_STATUS EFIAPI UgaClose ( @@ -488,24 +554,39 @@ EFI_STATUS EFIAPI UgaGetKey ( EFI_UNIX_UGA_IO_PROTOCOL *UgaIo, - EFI_INPUT_KEY *key + EFI_KEY_DATA *key ); +EFI_STATUS +EFIAPI +UgaRegisterKeyNotify ( + IN EFI_UNIX_UGA_IO_PROTOCOL *UgaIo, + IN UGA_REGISTER_KEY_NOTIFY_CALLBACK CallBack, + IN VOID *Context + ); + + EFI_STATUS EFIAPI UgaBlt ( - EFI_UNIX_UGA_IO_PROTOCOL *UgaIo, + IN 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 ); +EFI_STATUS +EFIAPI +UgaCheckPointer ( + IN EFI_UNIX_UGA_IO_PROTOCOL *UgaIo + ); + +EFI_STATUS +EFIAPI +UgaGetPointerState ( + IN EFI_UNIX_UGA_IO_PROTOCOL *UgaIo, + IN EFI_SIMPLE_POINTER_STATE *State + ); #endif -- cgit v1.2.3