diff options
author | klu2 <klu2@6f19259b-4bc3-4df7-8a09-765794883524> | 2007-05-30 07:22:41 +0000 |
---|---|---|
committer | klu2 <klu2@6f19259b-4bc3-4df7-8a09-765794883524> | 2007-05-30 07:22:41 +0000 |
commit | b19cfa69e7c2da5bb1a976ef0ca5c9d21a287695 (patch) | |
tree | fc18932d4fa561da545efdf52d44c8d18c767209 /EdkUnixPkg/Include | |
parent | d756d2e73917d24208200d342c4705d6dcfae09d (diff) | |
download | edk2-platforms-b19cfa69e7c2da5bb1a976ef0ca5c9d21a287695.tar.xz |
Add emulated serialIo device driver for EdkUnixPkg
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2605 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'EdkUnixPkg/Include')
-rw-r--r-- | EdkUnixPkg/Include/Protocol/UnixIo.h | 10 | ||||
-rw-r--r-- | EdkUnixPkg/Include/Protocol/UnixThunk.h | 59 |
2 files changed, 62 insertions, 7 deletions
diff --git a/EdkUnixPkg/Include/Protocol/UnixIo.h b/EdkUnixPkg/Include/Protocol/UnixIo.h index 2d8e9fab7d..1758ecb7c4 100644 --- a/EdkUnixPkg/Include/Protocol/UnixIo.h +++ b/EdkUnixPkg/Include/Protocol/UnixIo.h @@ -70,6 +70,16 @@ extern EFI_GUID gEfiUnixPhysicalDisksGuid; extern EFI_GUID gEfiUnixFileSystemGuid;
//
+// EFI_WIN_NT_SERIAL_PORT
+//
+#define EFI_UNIX_SERIAL_PORT_GUID \
+ { \
+ 0x6d3a727d, 0x66c8, 0x4d19, {0x87, 0xe6, 0x2, 0x15, 0x86, 0x14, 0x90, 0xf3} \
+ }
+
+extern EFI_GUID gEfiUnixSerialPortGuid;
+
+//
// EFI_UNIX_UGA
//
#define EFI_UNIX_UGA_GUID \
diff --git a/EdkUnixPkg/Include/Protocol/UnixThunk.h b/EdkUnixPkg/Include/Protocol/UnixThunk.h index aabb9b130d..1fa4e90204 100644 --- a/EdkUnixPkg/Include/Protocol/UnixThunk.h +++ b/EdkUnixPkg/Include/Protocol/UnixThunk.h @@ -28,6 +28,7 @@ Abstract: #ifndef _UNIX_THUNK_H_
#define _UNIX_THUNK_H_
+#include <sys/termios.h>
#define EFI_UNIX_THUNK_PROTOCOL_GUID \
{ \
@@ -137,6 +138,43 @@ typedef EFI_STATUS (*UnixUgaCreate)(struct _EFI_UNIX_UGA_IO_PROTOCOL **UgaIo, CONST CHAR16 *Title); +
+typedef
+int
+(*UnixTcflush) (int fildes, int queue_selector);
+
+typedef
+void
+(*UnixPerror) (__const char *__s);
+
+typedef
+void
+(*UnixPrintf) (const char* format, ...);
+
+typedef
+int
+(*UnixIoCtl) (int fd, unsigned long int __request, ...);
+
+typedef
+int
+(*UnixFcntl) (int __fd, int __cmd, ...);
+
+typedef
+int
+(*UnixCfsetispeed) (struct termios *__termios_p, speed_t __speed);
+
+typedef
+int
+(*UnixCfsetospeed) (struct termios *__termios_p, speed_t __speed);
+
+typedef
+int
+(*UnixTcgetattr) (int __fd, struct termios *__termios_p);
+
+typedef
+int
+(*UnixTcsetattr) (int __fd, int __optional_actions,
+ __const struct termios *__termios_p);
//
//
@@ -147,14 +185,14 @@ EFI_STATUS typedef struct _EFI_UNIX_THUNK_PROTOCOL {
UINT64 Signature;
- UnixSleep Sleep;
+ UnixSleep Sleep;
UnixExit Exit;
- UnixSetTimer SetTimer; - UnixGetLocalTime GetLocalTime; + UnixSetTimer SetTimer; + UnixGetLocalTime GetLocalTime; UnixGmTime GmTime; UnixGetTimeZone GetTimeZone; UnixGetDayLight GetDayLight; - UnixPoll Poll; + UnixPoll Poll; UnixRead Read; UnixWrite Write; UnixGetenv Getenv; @@ -177,9 +215,16 @@ typedef struct _EFI_UNIX_THUNK_PROTOCOL { UnixFSync FSync; UnixChmod Chmod; UnixUTime UTime; - - UnixUgaCreate UgaCreate; - + UnixTcflush Tcflush; + UnixUgaCreate UgaCreate; + UnixPerror Perror;
+ UnixPrintf Printf;
+ UnixIoCtl IoCtl;
+ UnixFcntl Fcntl;
+ UnixCfsetispeed Cfsetispeed;
+ UnixCfsetospeed Cfsetospeed;
+ UnixTcgetattr Tcgetattr;
+ UnixTcsetattr Tcsetattr;
} EFI_UNIX_THUNK_PROTOCOL; extern EFI_GUID gEfiUnixThunkProtocolGuid;
|