Update For Review
[mirror_edk2.git] / IntelFrameworkModulePkg / Include / Protocol / VgaMiniPort.h
1 /** @file
2 Vga Mini port binding for a VGA controller
3
4 Copyright (c) 2006 - 2007, Intel Corporation
5 All rights reserved. This program and the accompanying materials
6 are licensed and made available under the terms and conditions of the BSD License
7 which accompanies this distribution. The full text of the license may be found at
8 http://opensource.org/licenses/bsd-license.php
9
10 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
12
13 **/
14
15 #ifndef __VGA_MINI_PORT_H_
16 #define __VGA_MINI_PORT_H_
17
18 #define EFI_VGA_MINI_PORT_PROTOCOL_GUID \
19 { \
20 0xc7735a2f, 0x88f5, 0x4882, {0xae, 0x63, 0xfa, 0xac, 0x8c, 0x8b, 0x86, 0xb3 } \
21 }
22
23 typedef struct _EFI_VGA_MINI_PORT_PROTOCOL EFI_VGA_MINI_PORT_PROTOCOL;
24
25 /**
26 Sets the text display mode of a VGA controller
27
28 @param This Protocol instance pointer.
29 @param Mode Mode number. 0 - 80x25 1-80x50
30
31 @retval EFI_SUCCESS The mode was set
32 @retval EFI_DEVICE_ERROR The device is not functioning properly.
33
34 **/
35 typedef
36 EFI_STATUS
37 (EFIAPI *EFI_VGA_MINI_PORT_SET_MODE) (
38 IN EFI_VGA_MINI_PORT_PROTOCOL * This,
39 IN UINTN ModeNumber
40 );
41
42 struct _EFI_VGA_MINI_PORT_PROTOCOL {
43 EFI_VGA_MINI_PORT_SET_MODE SetMode;
44
45 UINT64 VgaMemoryOffset;
46 UINT64 CrtcAddressRegisterOffset;
47 UINT64 CrtcDataRegisterOffset;
48
49 UINT8 VgaMemoryBar;
50 UINT8 CrtcAddressRegisterBar;
51 UINT8 CrtcDataRegisterBar;
52
53 UINT8 MaxMode;
54 };
55
56 extern EFI_GUID gEfiVgaMiniPortProtocolGuid;
57
58 #endif