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