6b83c99fe40be6b70bce0eb78eca36e08a84e5de
[mirror_edk2.git] / EdkUnixPkg / Include / Protocol / UnixIo.h
1 /*++
2
3 Copyright (c) 2004 - 2006, Intel Corporation
4 All rights reserved. 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 #define EFI_UNIX_IO_PROTOCOL_GUID \
24 { \
25 0xf2e23f54, 0x8985, 0x11db, {0xac, 0x79, 0x00, 0x40, 0xd0, 0x2b, 0x18, 0x35 } \
26 }
27
28 typedef struct {
29 EFI_UNIX_THUNK_PROTOCOL *UnixThunk;
30 EFI_GUID *TypeGuid;
31 UINT16 *EnvString;
32 UINT16 InstanceNumber;
33 } EFI_UNIX_IO_PROTOCOL;
34
35 extern EFI_GUID gEfiUnixIoProtocolGuid;
36
37 //
38 // The following GUIDs are used in EFI_UNIX_IO_PROTOCOL_GUID
39 // Device paths. They map 1:1 with NT envirnment variables. The variables
40 // define what virtual hardware the emulator/UnixBusDriver will produce.
41 //
42 //
43 // EFI_UNIX_VIRTUAL_DISKS
44 //
45 #define EFI_UNIX_VIRTUAL_DISKS_GUID \
46 { \
47 0xf2ba331a, 0x8985, 0x11db, {0xa4, 0x06, 0x00, 0x40, 0xd0, 0x2b, 0x18, 0x35 } \
48 }
49
50 extern EFI_GUID gEfiUnixVirtualDisksGuid;
51
52 //
53 // EFI_UNIX_PHYSICAL_DISKS
54 //
55 #define EFI_UNIX_PHYSICAL_DISKS_GUID \
56 { \
57 0xf2bdcc96, 0x8985, 0x11db, {0x87, 0x19, 0x00, 0x40, 0xd0, 0x2b, 0x18, 0x35 } \
58 }
59
60 extern EFI_GUID gEfiUnixPhysicalDisksGuid;
61
62 //
63 // EFI_UNIX_FILE_SYSTEM
64 //
65 #define EFI_UNIX_FILE_SYSTEM_GUID \
66 { \
67 0xf2c16b9e, 0x8985, 0x11db, {0x92, 0xc8, 0x00, 0x40, 0xd0, 0x2b, 0x18, 0x35 } \
68 }
69
70 extern EFI_GUID gEfiUnixFileSystemGuid;
71
72 //
73 // EFI_UNIX_UGA
74 //
75 #define EFI_UNIX_UGA_GUID \
76 { \
77 0xf2c8b80e, 0x8985, 0x11db, {0x93, 0xf1, 0x00, 0x40, 0xd0, 0x2b, 0x18, 0x35 } \
78 }
79
80 extern EFI_GUID gEfiUnixUgaGuid;
81
82 //
83 // EFI_UNIX_GOP
84 //
85 #define EFI_UNIX_GOP_GUID \
86 { \
87 0xbace07c2, 0x8987, 0x11db, {0xa5, 0x9a, 0x00, 0x40, 0xd0, 0x2b, 0x18, 0x35 } \
88 }
89
90 extern EFI_GUID gEfiUnixGopGuid;
91
92 //
93 // EFI_UNIX_CONSOLE
94 //
95 #define EFI_UNIX_CONSOLE_GUID \
96 { \
97 0xf2cc5d06, 0x8985, 0x11db, {0xbb, 0x19, 0x00, 0x40, 0xd0, 0x2b, 0x18, 0x35 } \
98 }
99
100 extern EFI_GUID gEfiUnixConsoleGuid;
101
102 //
103 // EFI_UNIX_MEMORY
104 //
105 #define EFI_UNIX_MEMORY_GUID \
106 { \
107 0xf2d006cc, 0x8985, 0x11db, {0xa4, 0x72, 0x00, 0x40, 0xd0, 0x2b, 0x18, 0x35 } \
108 }
109
110 extern EFI_GUID gEfiUnixMemoryGuid;
111
112 //
113 // EFI_UNIX_CPU_MODEL
114 //
115 #define EFI_UNIX_CPU_MODEL_GUID \
116 { \
117 0xf2d3b330, 0x8985, 0x11db, {0x8a, 0xa3, 0x00, 0x40, 0xd0, 0x2b, 0x18, 0x35 } \
118 }
119
120 extern EFI_GUID gEfiUnixCPUModelGuid;
121
122 //
123 // EFI_UNIX_CPU_SPEED
124 //
125 #define EFI_UNIX_CPU_SPEED_GUID \
126 { \
127 0xf2d74e5a, 0x8985, 0x11db, {0x97, 0x05, 0x00, 0x40, 0xd0, 0x2b, 0x18, 0x35 } \
128 }
129
130 extern EFI_GUID gEfiUnixCPUSpeedGuid;
131
132 #endif