]> git.proxmox.com Git - mirror_edk2.git/blame - IntelFrameworkModulePkg/Universal/Console/VgaClassDxe/VgaClass.h
Clean up to update the reference of the these macros:
[mirror_edk2.git] / IntelFrameworkModulePkg / Universal / Console / VgaClassDxe / VgaClass.h
CommitLineData
3db51098 1/**@file\r
e081218d 2\r
3db51098 3Copyright (c) 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
e081218d 11\r
3db51098 12**/\r
e081218d 13\r
e081218d 14\r
15#ifndef _VGA_CLASS_H\r
16#define _VGA_CLASS_H\r
17\r
18#include <PiDxe.h>\r
19#include <FrameworkDxe.h>\r
ed7748fe 20\r
e081218d 21#include <Protocol/SimpleTextIn.h>\r
22#include <Protocol/SimpleTextOut.h>\r
23#include <Protocol/PciIo.h>\r
24#include <Protocol/VgaMiniPort.h>\r
25#include <Protocol/DevicePath.h>\r
ed7748fe 26\r
e081218d 27#include <Library/DebugLib.h>\r
28#include <Library/UefiDriverEntryPoint.h>\r
29#include <Library/BaseLib.h>\r
30#include <Library/UefiLib.h>\r
e081218d 31#include <Library/BaseMemoryLib.h>\r
32#include <Library/MemoryAllocationLib.h>\r
33#include <Library/UefiBootServicesTableLib.h>\r
34#include <Library/ReportStatusCodeLib.h>\r
35\r
36\r
37#include <IndustryStandard/Pci22.h>\r
38#include "ComponentName.h"\r
39#include <Protocol/VgaMiniPort.h>\r
40\r
41//\r
42// VGA specific registers\r
43//\r
44#define CRTC_CURSOR_START 0xA\r
45#define CRTC_CURSOR_END 0xB\r
46\r
47#define CRTC_CURSOR_LOCATION_HIGH 0xE\r
48#define CRTC_CURSOR_LOCATION_LOW 0xF\r
49\r
50#define EFI_MAX_ATTRIBUTE 0x7f\r
51\r
52//\r
53// VGA Class Device Structure\r
54//\r
55#define VGA_CLASS_DEV_SIGNATURE EFI_SIGNATURE_32 ('V', 'G', 'A', 'C')\r
56\r
57typedef struct {\r
58 UINTN Signature;\r
59 EFI_HANDLE Handle;\r
60 EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL SimpleTextOut;\r
61 EFI_SIMPLE_TEXT_OUTPUT_MODE SimpleTextOutputMode;\r
62 EFI_VGA_MINI_PORT_PROTOCOL *VgaMiniPort;\r
63 EFI_PCI_IO_PROTOCOL *PciIo;\r
64 EFI_DEVICE_PATH_PROTOCOL *DevicePath;\r
65} VGA_CLASS_DEV;\r
66\r
67#define VGA_CLASS_DEV_FROM_THIS(a) CR (a, VGA_CLASS_DEV, SimpleTextOut, VGA_CLASS_DEV_SIGNATURE)\r
68\r
69//\r
70// Global Variables\r
71//\r
72extern EFI_DRIVER_BINDING_PROTOCOL gVgaClassDriverBinding;\r
73\r
74//\r
75// Driver Binding Protocol functions\r
76//\r
77EFI_STATUS\r
78EFIAPI\r
79VgaClassDriverBindingSupported (\r
80 IN EFI_DRIVER_BINDING_PROTOCOL *This,\r
81 IN EFI_HANDLE Controller,\r
82 IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath\r
83 )\r
bcd70414 84/**\r
e081218d 85\r
86Routine Description:\r
87\r
88 GC_TODO: Add function description\r
89\r
90Arguments:\r
91\r
92 This - GC_TODO: add argument description\r
93 Controller - GC_TODO: add argument description\r
94 RemainingDevicePath - GC_TODO: add argument description\r
95\r
96Returns:\r
97\r
98 GC_TODO: add return values\r
99\r
bcd70414 100**/\r
e081218d 101;\r
102\r
103EFI_STATUS\r
104EFIAPI\r
105VgaClassDriverBindingStart (\r
106 IN EFI_DRIVER_BINDING_PROTOCOL *This,\r
107 IN EFI_HANDLE Controller,\r
108 IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath\r
109 )\r
bcd70414 110/**\r
e081218d 111\r
112Routine Description:\r
113\r
114 GC_TODO: Add function description\r
115\r
116Arguments:\r
117\r
118 This - GC_TODO: add argument description\r
119 Controller - GC_TODO: add argument description\r
120 RemainingDevicePath - GC_TODO: add argument description\r
121\r
122Returns:\r
123\r
124 GC_TODO: add return values\r
125\r
bcd70414 126**/\r
e081218d 127;\r
128\r
129EFI_STATUS\r
130EFIAPI\r
131VgaClassDriverBindingStop (\r
132 IN EFI_DRIVER_BINDING_PROTOCOL *This,\r
133 IN EFI_HANDLE Controller,\r
134 IN UINTN NumberOfChildren,\r
135 IN EFI_HANDLE *ChildHandleBuffer\r
136 )\r
bcd70414 137/**\r
e081218d 138\r
139Routine Description:\r
140\r
141 GC_TODO: Add function description\r
142\r
143Arguments:\r
144\r
145 This - GC_TODO: add argument description\r
146 Controller - GC_TODO: add argument description\r
147 NumberOfChildren - GC_TODO: add argument description\r
148 ChildHandleBuffer - GC_TODO: add argument description\r
149\r
150Returns:\r
151\r
152 GC_TODO: add return values\r
153\r
bcd70414 154**/\r
e081218d 155;\r
156\r
157//\r
158// Simple Text Output Protocol functions\r
159//\r
160EFI_STATUS\r
161EFIAPI\r
162VgaClassReset (\r
163 IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This,\r
164 IN BOOLEAN ExtendedVerification\r
165 )\r
bcd70414 166/**\r
e081218d 167\r
168Routine Description:\r
169\r
170 GC_TODO: Add function description\r
171\r
172Arguments:\r
173\r
174 This - GC_TODO: add argument description\r
175 ExtendedVerification - GC_TODO: add argument description\r
176\r
177Returns:\r
178\r
179 GC_TODO: add return values\r
180\r
bcd70414 181**/\r
e081218d 182;\r
183\r
184EFI_STATUS\r
185EFIAPI\r
186VgaClassOutputString (\r
187 IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This,\r
188 IN CHAR16 *WString\r
189 )\r
bcd70414 190/**\r
e081218d 191\r
192Routine Description:\r
193\r
194 GC_TODO: Add function description\r
195\r
196Arguments:\r
197\r
198 This - GC_TODO: add argument description\r
199 WString - GC_TODO: add argument description\r
200\r
201Returns:\r
202\r
203 GC_TODO: add return values\r
204\r
bcd70414 205**/\r
e081218d 206;\r
207\r
208EFI_STATUS\r
209EFIAPI\r
210VgaClassTestString (\r
211 IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This,\r
212 IN CHAR16 *WString\r
213 )\r
bcd70414 214/**\r
e081218d 215\r
216Routine Description:\r
217\r
218 GC_TODO: Add function description\r
219\r
220Arguments:\r
221\r
222 This - GC_TODO: add argument description\r
223 WString - GC_TODO: add argument description\r
224\r
225Returns:\r
226\r
227 GC_TODO: add return values\r
228\r
bcd70414 229**/\r
e081218d 230;\r
231\r
232EFI_STATUS\r
233EFIAPI\r
234VgaClassClearScreen (\r
235 IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This\r
236 )\r
bcd70414 237/**\r
e081218d 238\r
239Routine Description:\r
240\r
241 GC_TODO: Add function description\r
242\r
243Arguments:\r
244\r
245 This - GC_TODO: add argument description\r
246\r
247Returns:\r
248\r
249 GC_TODO: add return values\r
250\r
bcd70414 251**/\r
e081218d 252;\r
253\r
254EFI_STATUS\r
255EFIAPI\r
256VgaClassSetAttribute (\r
257 IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This,\r
258 IN UINTN Attribute\r
259 )\r
bcd70414 260/**\r
e081218d 261\r
262Routine Description:\r
263\r
264 GC_TODO: Add function description\r
265\r
266Arguments:\r
267\r
268 This - GC_TODO: add argument description\r
269 Attribute - GC_TODO: add argument description\r
270\r
271Returns:\r
272\r
273 GC_TODO: add return values\r
274\r
bcd70414 275**/\r
e081218d 276;\r
277\r
278EFI_STATUS\r
279EFIAPI\r
280VgaClassSetCursorPosition (\r
281 IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This,\r
282 IN UINTN Column,\r
283 IN UINTN Row\r
284 )\r
bcd70414 285/**\r
e081218d 286\r
287Routine Description:\r
288\r
289 GC_TODO: Add function description\r
290\r
291Arguments:\r
292\r
293 This - GC_TODO: add argument description\r
294 Column - GC_TODO: add argument description\r
295 Row - GC_TODO: add argument description\r
296\r
297Returns:\r
298\r
299 GC_TODO: add return values\r
300\r
bcd70414 301**/\r
e081218d 302;\r
303\r
304EFI_STATUS\r
305EFIAPI\r
306VgaClassEnableCursor (\r
307 IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This,\r
308 IN BOOLEAN Visible\r
309 )\r
bcd70414 310/**\r
e081218d 311\r
312Routine Description:\r
313\r
314 GC_TODO: Add function description\r
315\r
316Arguments:\r
317\r
318 This - GC_TODO: add argument description\r
319 Visible - GC_TODO: add argument description\r
320\r
321Returns:\r
322\r
323 GC_TODO: add return values\r
324\r
bcd70414 325**/\r
e081218d 326;\r
327\r
328EFI_STATUS\r
329EFIAPI\r
330VgaClassQueryMode (\r
331 IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This,\r
332 IN UINTN ModeNumber,\r
333 OUT UINTN *Columns,\r
334 OUT UINTN *Rows\r
335 )\r
bcd70414 336/**\r
e081218d 337\r
338Routine Description:\r
339\r
340 GC_TODO: Add function description\r
341\r
342Arguments:\r
343\r
344 This - GC_TODO: add argument description\r
345 ModeNumber - GC_TODO: add argument description\r
346 Columns - GC_TODO: add argument description\r
347 Rows - GC_TODO: add argument description\r
348\r
349Returns:\r
350\r
351 GC_TODO: add return values\r
352\r
bcd70414 353**/\r
e081218d 354;\r
355\r
356EFI_STATUS\r
357EFIAPI\r
358VgaClassSetMode (\r
359 IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This,\r
360 IN UINTN ModeNumber\r
361 )\r
bcd70414 362/**\r
e081218d 363\r
364Routine Description:\r
365\r
366 GC_TODO: Add function description\r
367\r
368Arguments:\r
369\r
370 This - GC_TODO: add argument description\r
371 ModeNumber - GC_TODO: add argument description\r
372\r
373Returns:\r
374\r
375 GC_TODO: add return values\r
376\r
bcd70414 377**/\r
e081218d 378;\r
379\r
380#endif\r