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