]> git.proxmox.com Git - mirror_edk2.git/blob - UnixPkg/Include/Protocol/UnixIo.h
Adding Simple Pointer, GOP, SimpleTextInEx, and Networking protocols to the emulator...
[mirror_edk2.git] / UnixPkg / Include / Protocol / UnixIo.h
1 /*++
2
3 Copyright (c) 2004 - 2006, Intel Corporation. All rights reserved.<BR>
4 This program and the accompanying materials
5 are licensed and made available under the terms and conditions of the BSD License
6 which accompanies this distribution. The full text of the license may be found at
7 http://opensource.org/licenses/bsd-license.php
8
9 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
11
12 Module Name:
13
14 UnixIo.h
15
16 Abstract:
17
18 --*/
19
20 #ifndef _UNIX_IO_H_
21 #define _UNIX_IO_H_
22
23 #include <Protocol/UnixThunk.h>
24
25 #define EFI_UNIX_IO_PROTOCOL_GUID \
26 { \
27 0xf2e23f54, 0x8985, 0x11db, {0xac, 0x79, 0x00, 0x40, 0xd0, 0x2b, 0x18, 0x35 } \
28 }
29
30 typedef struct {
31 EFI_UNIX_THUNK_PROTOCOL *UnixThunk;
32 EFI_GUID *TypeGuid;
33 UINT16 *EnvString;
34 UINT16 InstanceNumber;
35 } EFI_UNIX_IO_PROTOCOL;
36
37 extern EFI_GUID gEfiUnixIoProtocolGuid;
38
39 //
40 // The following GUIDs are used in EFI_UNIX_IO_PROTOCOL_GUID
41 // Device paths. They map 1:1 with UNIX envirnment variables. The variables
42 // define what virtual hardware the emulator/UnixBusDriver will produce.
43 //
44 //
45 // EFI_UNIX_VIRTUAL_DISKS
46 //
47 #define EFI_UNIX_VIRTUAL_DISKS_GUID \
48 { \
49 0xf2ba331a, 0x8985, 0x11db, {0xa4, 0x06, 0x00, 0x40, 0xd0, 0x2b, 0x18, 0x35 } \
50 }
51
52 extern EFI_GUID gEfiUnixVirtualDisksGuid;
53
54 //
55 // EFI_UNIX_PHYSICAL_DISKS
56 //
57 #define EFI_UNIX_PHYSICAL_DISKS_GUID \
58 { \
59 0xf2bdcc96, 0x8985, 0x11db, {0x87, 0x19, 0x00, 0x40, 0xd0, 0x2b, 0x18, 0x35 } \
60 }
61
62 extern EFI_GUID gEfiUnixPhysicalDisksGuid;
63
64 //
65 // EFI_UNIX_FILE_SYSTEM
66 //
67 #define EFI_UNIX_FILE_SYSTEM_GUID \
68 { \
69 0xf2c16b9e, 0x8985, 0x11db, {0x92, 0xc8, 0x00, 0x40, 0xd0, 0x2b, 0x18, 0x35 } \
70 }
71
72 extern EFI_GUID gEfiUnixFileSystemGuid;
73
74 //
75 // EFI_WIN_NT_SERIAL_PORT
76 //
77 #define EFI_UNIX_SERIAL_PORT_GUID \
78 { \
79 0x6d3a727d, 0x66c8, 0x4d19, {0x87, 0xe6, 0x2, 0x15, 0x86, 0x14, 0x90, 0xf3} \
80 }
81
82 extern EFI_GUID gEfiUnixSerialPortGuid;
83
84 //
85 // EFI_UNIX_UGA
86 //
87 #define EFI_UNIX_UGA_GUID \
88 { \
89 0xf2c8b80e, 0x8985, 0x11db, {0x93, 0xf1, 0x00, 0x40, 0xd0, 0x2b, 0x18, 0x35 } \
90 }
91
92 extern EFI_GUID gEfiUnixUgaGuid;
93
94 //
95 // EFI_UNIX_GOP
96 //
97 #define EFI_UNIX_GOP_GUID \
98 { \
99 0xbace07c2, 0x8987, 0x11db, {0xa5, 0x9a, 0x00, 0x40, 0xd0, 0x2b, 0x18, 0x35 } \
100 }
101
102 extern EFI_GUID gEfiUnixGopGuid;
103
104 //
105 // EFI_UNIX_CONSOLE
106 //
107 #define EFI_UNIX_CONSOLE_GUID \
108 { \
109 0xf2cc5d06, 0x8985, 0x11db, {0xbb, 0x19, 0x00, 0x40, 0xd0, 0x2b, 0x18, 0x35 } \
110 }
111
112 extern EFI_GUID gEfiUnixConsoleGuid;
113
114 //
115 // EFI_UNIX_MEMORY
116 //
117 #define EFI_UNIX_MEMORY_GUID \
118 { \
119 0xf2d006cc, 0x8985, 0x11db, {0xa4, 0x72, 0x00, 0x40, 0xd0, 0x2b, 0x18, 0x35 } \
120 }
121
122 extern EFI_GUID gEfiUnixMemoryGuid;
123
124 //
125 // EFI_UNIX_CPU_MODEL
126 //
127 #define EFI_UNIX_CPU_MODEL_GUID \
128 { \
129 0xf2d3b330, 0x8985, 0x11db, {0x8a, 0xa3, 0x00, 0x40, 0xd0, 0x2b, 0x18, 0x35 } \
130 }
131
132 extern EFI_GUID gEfiUnixCPUModelGuid;
133
134 //
135 // EFI_UNIX_CPU_SPEED
136 //
137 #define EFI_UNIX_CPU_SPEED_GUID \
138 { \
139 0xf2d74e5a, 0x8985, 0x11db, {0x97, 0x05, 0x00, 0x40, 0xd0, 0x2b, 0x18, 0x35 } \
140 }
141
142 extern EFI_GUID gEfiUnixCPUSpeedGuid;
143
144 //
145 // EFI_UNIX_NETWORK
146 //
147 #define EFI_UNIX_NETWORK_GUID \
148 { \
149 0x081603B4, 0x0F1D, 0x4022, {0xB6, 0xFD, 0x4C, 0xE3, 0x5E, 0x09, 0xA1, 0xA6 } \
150 }
151
152 extern EFI_GUID gEfiUnixNetworkGuid;
153
154 #endif