summaryrefslogtreecommitdiff
path: root/IntelFrameworkModulePkg/Include/Protocol/VgaMiniPort.h
diff options
context:
space:
mode:
Diffstat (limited to 'IntelFrameworkModulePkg/Include/Protocol/VgaMiniPort.h')
-rw-r--r--IntelFrameworkModulePkg/Include/Protocol/VgaMiniPort.h76
1 files changed, 56 insertions, 20 deletions
diff --git a/IntelFrameworkModulePkg/Include/Protocol/VgaMiniPort.h b/IntelFrameworkModulePkg/Include/Protocol/VgaMiniPort.h
index a76d4e2e5e..f8a73879a7 100644
--- a/IntelFrameworkModulePkg/Include/Protocol/VgaMiniPort.h
+++ b/IntelFrameworkModulePkg/Include/Protocol/VgaMiniPort.h
@@ -1,55 +1,91 @@
/** @file
- Vga Mini port binding for a VGA controller
+ VGA Mini Port Protocol that is used to set the text display mode of a VGA controller.
-Copyright (c) 2006 - 2007, Intel Corporation
-All rights reserved. This program and the accompanying materials
-are licensed and made available under the terms and conditions of the BSD License
-which accompanies this distribution. The full text of the license may be found at
-http://opensource.org/licenses/bsd-license.php
-
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
+ Copyright (c) 2006 - 2009, Intel Corporation
+ All rights reserved. This program and the accompanying materials
+ are licensed and made available under the terms and conditions of the BSD License
+ which accompanies this distribution. The full text of the license may be found at
+ http://opensource.org/licenses/bsd-license.php
+
+ THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
+ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/
#ifndef __VGA_MINI_PORT_H_
#define __VGA_MINI_PORT_H_
+///
+/// Global ID for the EFI_VGA_MINI_PORT_PROTOCOL
+///
#define EFI_VGA_MINI_PORT_PROTOCOL_GUID \
{ \
0xc7735a2f, 0x88f5, 0x4882, {0xae, 0x63, 0xfa, 0xac, 0x8c, 0x8b, 0x86, 0xb3 } \
}
+///
+/// Forward declaration for the EFI_VGA_MINI_PORT_PROTOCOL
+///
typedef struct _EFI_VGA_MINI_PORT_PROTOCOL EFI_VGA_MINI_PORT_PROTOCOL;
/**
- Sets the text display mode of a VGA controller
+ Sets the text display mode of a VGA controller.
- @param This Protocol instance pointer.
- @param Mode Mode number. 0 - 80x25 1-80x50
+ Sets the text display mode of the VGA controller to the mode specified by
+ ModeNumber. A ModeNumber of 0 is a request for an 80x25 text mode. A
+ ModeNumber of 1 is a request for an 80x50 text mode. If ModeNumber is greater
+ than MaxModeNumber, then EFI_UNSUPPORTED is returned. If the VGA controller
+ is not functioning properly, then EFI_DEVICE_ERROR is returned. If the VGA
+ controller is sucessfully set to the mode number specified by ModeNumber, then
+ EFI_SUCCESS is returned.
+
+ @param[in] This A pointer to the EFI_VGA_MINI_PORT_PROTOCOL instance.
+ @param[in] ModeNumber The requested mode number. 0 for 80x25. 1 for 80x5.
- @retval EFI_SUCCESS The mode was set
- @retval EFI_DEVICE_ERROR The device is not functioning properly.
+ @retval EFI_SUCCESS The mode number was set
+ @retval EFI_UNSUPPORTED The mode number specified by ModeNumber is not supported.
+ @retval EFI_DEVICE_ERROR The device is not functioning properly.
**/
typedef
EFI_STATUS
-(EFIAPI *EFI_VGA_MINI_PORT_SET_MODE) (
- IN EFI_VGA_MINI_PORT_PROTOCOL * This,
- IN UINTN ModeNumber
+(EFIAPI *EFI_VGA_MINI_PORT_SET_MODE)(
+ IN EFI_VGA_MINI_PORT_PROTOCOL *This,
+ IN UINTN ModeNumber
);
struct _EFI_VGA_MINI_PORT_PROTOCOL {
EFI_VGA_MINI_PORT_SET_MODE SetMode;
-
+ ///
+ /// MMIO base address of the VGA text mode framebuffer. Typically set to 0xB8000.
+ ///
UINT64 VgaMemoryOffset;
+ ///
+ /// I/O Port address for the VGA CRTC address register Typically set to 0x3D4.
+ ///
UINT64 CrtcAddressRegisterOffset;
+ ///
+ /// I/O Port address for the VGA CRTC data register. Typically set to 0x3D5.
+ ///
UINT64 CrtcDataRegisterOffset;
-
+ ///
+ /// PCI Controller MMIO BAR index of the VGA text mode frame buffer. Typically
+ /// set to EFI_PCI_IO_PASS_THROUGH_BAR
+ ///
UINT8 VgaMemoryBar;
+ ///
+ /// PCI Controller I/O BAR index of the VGA CRTC address register. Typically
+ /// set to EFI_PCI_IO_PASS_THROUGH_BAR
+ ///
UINT8 CrtcAddressRegisterBar;
+ ///
+ /// PCI Controller I/O BAR index of the VGA CRTC data register. Typically set
+ /// to EFI_PCI_IO_PASS_THROUGH_BAR
+ ///
UINT8 CrtcDataRegisterBar;
-
+ ///
+ /// The maximum number of text modes that this VGA controller supports.
+ ///
UINT8 MaxMode;
};