summaryrefslogtreecommitdiff
path: root/EdkModulePkg/Universal/Console/ConSplitter
diff options
context:
space:
mode:
authorvanjeff <vanjeff@6f19259b-4bc3-4df7-8a09-765794883524>2007-03-21 01:27:01 +0000
committervanjeff <vanjeff@6f19259b-4bc3-4df7-8a09-765794883524>2007-03-21 01:27:01 +0000
commitce8bd86e8f49f17fd2b11e14bbc3b3e816d82c1b (patch)
treedebf442dc842965b2eb441ea3d10d2e015838f35 /EdkModulePkg/Universal/Console/ConSplitter
parent6dcb94c713b1373cc78117b7713e654889802114 (diff)
downloadedk2-platforms-ce8bd86e8f49f17fd2b11e14bbc3b3e816d82c1b.tar.xz
1. Removed #ifdef EDK_RELEASE_VERSION from all c files for all modules
2. Removed #ifdef EFI_SPECIFICATION_VERSION from all c files for all modules 3. Added comments for file VariableWorker.c git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2495 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'EdkModulePkg/Universal/Console/ConSplitter')
-rw-r--r--EdkModulePkg/Universal/Console/ConSplitter/Dxe/ConSplitter.c196
-rw-r--r--EdkModulePkg/Universal/Console/ConSplitter/Dxe/ConSplitterGraphics.c467
2 files changed, 97 insertions, 566 deletions
diff --git a/EdkModulePkg/Universal/Console/ConSplitter/Dxe/ConSplitter.c b/EdkModulePkg/Universal/Console/ConSplitter/Dxe/ConSplitter.c
index 7d1a3fea1d..bd18e25621 100644
--- a/EdkModulePkg/Universal/Console/ConSplitter/Dxe/ConSplitter.c
+++ b/EdkModulePkg/Universal/Console/ConSplitter/Dxe/ConSplitter.c
@@ -1,30 +1,30 @@
/**@file
- Console Splitter Driver. Any Handle that attatched
+ Console Splitter Driver. Any Handle that attatched
EFI_CONSOLE_IDENTIFIER_PROTOCOL can be bound by this driver.
-
- So far it works like any other driver by opening a SimpleTextIn and/or
- SimpleTextOut protocol with EFI_OPEN_PROTOCOL_BY_DRIVER attributes. The big
+
+ So far it works like any other driver by opening a SimpleTextIn and/or
+ SimpleTextOut protocol with EFI_OPEN_PROTOCOL_BY_DRIVER attributes. The big
difference is this driver does not layer a protocol on the passed in
- handle, or construct a child handle like a standard device or bus driver.
- This driver produces three virtual handles as children, one for console input
+ handle, or construct a child handle like a standard device or bus driver.
+ This driver produces three virtual handles as children, one for console input
splitter, one for console output splitter and one for error output splitter.
- EFI_CONSOLE_SPLIT_PROTOCOL will be attatched onto each virtual handle to
+ EFI_CONSOLE_SPLIT_PROTOCOL will be attatched onto each virtual handle to
identify the splitter type.
-
+
Each virtual handle, that supports both the EFI_CONSOLE_SPLIT_PROTOCOL
- and Console I/O protocol, will be produced in the driver entry point.
+ and Console I/O protocol, will be produced in the driver entry point.
The virtual handle are added on driver entry and never removed.
Such design ensures sytem function well during none console device situation.
-Copyright (c) 2006 Intel Corporation. <BR>
-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 - 2007 Intel Corporation. <BR>
+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.
+
**/
#include "ConSplitter.h"
@@ -104,18 +104,6 @@ STATIC TEXT_OUT_SPLITTER_PRIVATE_DATA mConOut = {
0,
FALSE,
},
-#if (EFI_SPECIFICATION_VERSION < 0x00020000)
- {
- ConSpliterUgaDrawGetMode,
- ConSpliterUgaDrawSetMode,
- ConSpliterUgaDrawBlt
- },
- 0,
- 0,
- 0,
- 0,
- (EFI_UGA_PIXEL *) NULL,
-#else
{
ConSpliterGraphicsOutputQueryMode,
ConSpliterGraphicsOutputSetMode,
@@ -126,7 +114,6 @@ STATIC TEXT_OUT_SPLITTER_PRIVATE_DATA mConOut = {
(TEXT_OUT_GOP_MODE *) NULL,
0,
TRUE,
-#endif
{
ConSpliterConsoleControlGetMode,
ConSpliterConsoleControlSetMode,
@@ -170,18 +157,6 @@ STATIC TEXT_OUT_SPLITTER_PRIVATE_DATA mStdErr = {
0,
FALSE,
},
-#if (EFI_SPECIFICATION_VERSION < 0x00020000)
- {
- ConSpliterUgaDrawGetMode,
- ConSpliterUgaDrawSetMode,
- ConSpliterUgaDrawBlt
- },
- 0,
- 0,
- 0,
- 0,
- (EFI_UGA_PIXEL *) NULL,
-#else
{
ConSpliterGraphicsOutputQueryMode,
ConSpliterGraphicsOutputSetMode,
@@ -192,7 +167,6 @@ STATIC TEXT_OUT_SPLITTER_PRIVATE_DATA mStdErr = {
(TEXT_OUT_GOP_MODE *) NULL,
0,
TRUE,
-#endif
{
ConSpliterConsoleControlGetMode,
ConSpliterConsoleControlSetMode,
@@ -259,12 +233,12 @@ ConSplitterDriverEntry (
Routine Description:
Intialize a virtual console device to act as an agrigator of physical console
- devices.
+ devices.
Arguments:
ImageHandle - (Standard EFI Image entry - EFI_IMAGE_ENTRY_POINT)
SystemTable - (Standard EFI Image entry - EFI_IMAGE_ENTRY_POINT)
-Returns:
+Returns:
EFI_SUCCESS
--*/
@@ -318,23 +292,6 @@ Returns:
//
Status = ConSplitterTextOutConstructor (&mConOut);
if (!EFI_ERROR (Status)) {
-#if (EFI_SPECIFICATION_VERSION < 0x00020000)
- //
- // In EFI mode, UGA Draw protocol is installed
- //
- Status = gBS->InstallMultipleProtocolInterfaces (
- &mConOut.VirtualHandle,
- &gEfiSimpleTextOutProtocolGuid,
- &mConOut.TextOut,
- &gEfiUgaDrawProtocolGuid,
- &mConOut.UgaDraw,
- &gEfiConsoleControlProtocolGuid,
- &mConOut.ConsoleControl,
- &gEfiPrimaryConsoleOutDeviceGuid,
- NULL,
- NULL
- );
-#else
//
// In UEFI mode, Graphics Output Protocol is installed on virtual handle.
//
@@ -350,7 +307,6 @@ Returns:
NULL,
NULL
);
-#endif
if (!EFI_ERROR (Status)) {
//
@@ -388,7 +344,7 @@ Arguments:
ConInPrivate - A pointer to the TEXT_IN_SPLITTER_PRIVATE_DATA structure.
-Returns:
+Returns:
EFI_OUT_OF_RESOURCES - Out of resources.
--*/
@@ -485,12 +441,6 @@ ConSplitterTextOutConstructor (
ConOutPrivate->TextOutQueryData[0].Rows = 25;
DevNullTextOutSetMode (ConOutPrivate, 0);
-#if (EFI_SPECIFICATION_VERSION < 0x00020000)
- //
- // Setup the DevNullUgaDraw to 800 x 600 x 32 bits per pixel
- //
- ConSpliterUgaDrawSetMode (&ConOutPrivate->UgaDraw, 800, 600, 32, 60);
-#else
//
// Setup resource for mode information in Graphics Output Protocol interface
//
@@ -526,7 +476,6 @@ ConSplitterTextOutConstructor (
//
ConOutPrivate->GraphicsOutput.Mode->Mode = 0xffff;
ConOutPrivate->GraphicsOutput.SetMode (&ConOutPrivate->GraphicsOutput, 0);
-#endif
return Status;
}
@@ -732,7 +681,7 @@ ConSplitterStart (
/*++
Routine Description:
- Start ConSplitter on ControllerHandle, and create the virtual
+ Start ConSplitter on ControllerHandle, and create the virtual
agrogated console device on first call Start for a SimpleTextIn handle.
Arguments:
@@ -793,7 +742,7 @@ ConSplitterConInDriverBindingStart (
/*++
Routine Description:
- Start ConSplitter on ControllerHandle, and create the virtual
+ Start ConSplitter on ControllerHandle, and create the virtual
agrogated console device on first call Start for a SimpleTextIn handle.
Arguments:
@@ -840,7 +789,7 @@ ConSplitterSimplePointerDriverBindingStart (
/*++
Routine Description:
- Start ConSplitter on ControllerHandle, and create the virtual
+ Start ConSplitter on ControllerHandle, and create the virtual
agrogated console device on first call Start for a SimpleTextIn handle.
Arguments:
@@ -882,7 +831,7 @@ ConSplitterConOutDriverBindingStart (
/*++
Routine Description:
- Start ConSplitter on ControllerHandle, and create the virtual
+ Start ConSplitter on ControllerHandle, and create the virtual
agrogated console device on first call Start for a SimpleTextIn handle.
Arguments:
@@ -946,21 +895,6 @@ Returns:
Status = ConSplitterTextOutAddDevice (&mConOut, TextOut, GraphicsOutput, UgaDraw);
ConSplitterTextOutSetAttribute (&mConOut.TextOut, EFI_TEXT_ATTR (EFI_LIGHTGRAY, EFI_BLACK));
-#if (EFI_SPECIFICATION_VERSION < 0x00020000)
- //
- // Match the UGA mode data of ConOut with the current mode
- //
- if (UgaDraw != NULL) {
- UgaDraw->GetMode (
- UgaDraw,
- &mConOut.UgaHorizontalResolution,
- &mConOut.UgaVerticalResolution,
- &mConOut.UgaColorDepth,
- &mConOut.UgaRefreshRate
- );
- }
-#endif
-
return Status;
}
@@ -974,7 +908,7 @@ ConSplitterStdErrDriverBindingStart (
/*++
Routine Description:
- Start ConSplitter on ControllerHandle, and create the virtual
+ Start ConSplitter on ControllerHandle, and create the virtual
agrogated console device on first call Start for a SimpleTextIn handle.
Arguments:
@@ -1930,7 +1864,6 @@ Returns:
return EFI_SUCCESS;
}
-#if (EFI_SPECIFICATION_VERSION >= 0x00020000)
STATIC
EFI_STATUS
ConSplitterAddGraphicsOutputMode (
@@ -2116,7 +2049,6 @@ Returns:
return Status;
}
-#endif
EFI_STATUS
ConSplitterTextOutAddDevice (
@@ -2207,21 +2139,15 @@ Returns:
MaxMode = Private->TextOutMode.MaxMode;
ASSERT (MaxMode >= 1);
-#if (EFI_SPECIFICATION_VERSION >= 0x00020000)
if ((GraphicsOutput != NULL) || (UgaDraw != NULL)) {
ConSplitterAddGraphicsOutputMode (Private, GraphicsOutput, UgaDraw);
}
-#endif
if (Private->ConsoleOutputMode == EfiConsoleControlScreenGraphics && GraphicsOutput != NULL) {
//
// We just added a new UGA device in graphics mode
//
-#if (EFI_SPECIFICATION_VERSION >= 0x00020000)
DevNullGopSync (Private, GraphicsOutput, UgaDraw);
-#else
- DevNullUgaSync (Private, UgaDraw);
-#endif
} else if ((CurrentMode >= 0) && ((GraphicsOutput != NULL) || (UgaDraw != NULL)) && (CurrentMode < Private->TextOutMode.MaxMode)) {
//
// The new console supports the same mode of the current console so sync up
@@ -2351,7 +2277,7 @@ ConSplitterTextInReset (
Returns:
EFI_SUCCESS - The device was reset.
- EFI_DEVICE_ERROR - The device is not functioning properly and could
+ EFI_DEVICE_ERROR - The device is not functioning properly and could
not be reset.
--*/
@@ -2390,7 +2316,7 @@ ConSplitterTextInPrivateReadKeyStroke (
/*++
Routine Description:
- Reads the next keystroke from the input device. The WaitForKey Event can
+ Reads the next keystroke from the input device. The WaitForKey Event can
be used to test for existance of a keystroke via WaitForEvent () call.
Arguments:
@@ -2400,7 +2326,7 @@ ConSplitterTextInPrivateReadKeyStroke (
Returns:
EFI_SUCCESS - The keystroke information was returned.
EFI_NOT_READY - There was no keystroke data availiable.
- EFI_DEVICE_ERROR - The keydtroke information was not returned due to
+ EFI_DEVICE_ERROR - The keydtroke information was not returned due to
hardware errors.
--*/
@@ -2462,14 +2388,14 @@ ConSpliterConsoleControlLockStdInEvent (
/*++
Routine Description:
- This timer event will fire when StdIn is locked. It will check the key
+ This timer event will fire when StdIn is locked. It will check the key
sequence on StdIn to see if it matches the password. Any error in the
password will cause the check to reset. As long a mConIn.PasswordEnabled is
TRUE the StdIn splitter will not report any input.
Arguments:
(Standard EFI_EVENT_NOTIFY)
-
+
Returns:
None
@@ -2546,7 +2472,7 @@ ConSpliterConsoleControlLockStdIn (
/*++
Routine Description:
- If Password is NULL unlock the password state variable and set the event
+ If Password is NULL unlock the password state variable and set the event
timer. If the Password is too big return an error. If the Password is valid
Copy the Password and enable state variable and then arm the periodic timer
@@ -2589,7 +2515,7 @@ ConSplitterTextInReadKeyStroke (
/*++
Routine Description:
- Reads the next keystroke from the input device. The WaitForKey Event can
+ Reads the next keystroke from the input device. The WaitForKey Event can
be used to test for existance of a keystroke via WaitForEvent () call.
If the ConIn is password locked make it look like no keystroke is availible
@@ -2600,7 +2526,7 @@ ConSplitterTextInReadKeyStroke (
Returns:
EFI_SUCCESS - The keystroke information was returned.
EFI_NOT_READY - There was no keystroke data availiable.
- EFI_DEVICE_ERROR - The keydtroke information was not returned due to
+ EFI_DEVICE_ERROR - The keydtroke information was not returned due to
hardware errors.
--*/
@@ -2632,7 +2558,7 @@ Routine Description:
This event agregates all the events of the ConIn devices in the spliter.
If the ConIn is password locked then return.
If any events of physical ConIn devices are signaled, signal the ConIn
- spliter event. This will cause the calling code to call
+ spliter event. This will cause the calling code to call
ConSplitterTextInReadKeyStroke ().
Arguments:
@@ -2692,7 +2618,7 @@ ConSplitterSimplePointerReset (
Returns:
EFI_SUCCESS - The device was reset.
- EFI_DEVICE_ERROR - The device is not functioning properly and could
+ EFI_DEVICE_ERROR - The device is not functioning properly and could
not be reset.
--*/
@@ -2735,17 +2661,17 @@ ConSplitterSimplePointerPrivateGetState (
/*++
Routine Description:
- Reads the next keystroke from the input device. The WaitForKey Event can
+ Reads the next keystroke from the input device. The WaitForKey Event can
be used to test for existance of a keystroke via WaitForEvent () call.
Arguments:
This - Protocol instance pointer.
- State -
+ State -
Returns:
EFI_SUCCESS - The keystroke information was returned.
EFI_NOT_READY - There was no keystroke data availiable.
- EFI_DEVICE_ERROR - The keydtroke information was not returned due to
+ EFI_DEVICE_ERROR - The keydtroke information was not returned due to
hardware errors.
--*/
@@ -2814,18 +2740,18 @@ ConSplitterSimplePointerGetState (
/*++
Routine Description:
- Reads the next keystroke from the input device. The WaitForKey Event can
+ Reads the next keystroke from the input device. The WaitForKey Event can
be used to test for existance of a keystroke via WaitForEvent () call.
If the ConIn is password locked make it look like no keystroke is availible
Arguments:
This - Protocol instance pointer.
- State -
+ State -
Returns:
EFI_SUCCESS - The keystroke information was returned.
EFI_NOT_READY - There was no keystroke data availiable.
- EFI_DEVICE_ERROR - The keydtroke information was not returned due to
+ EFI_DEVICE_ERROR - The keydtroke information was not returned due to
hardware errors.
--*/
@@ -2857,7 +2783,7 @@ Routine Description:
This event agregates all the events of the ConIn devices in the spliter.
If the ConIn is password locked then return.
If any events of physical ConIn devices are signaled, signal the ConIn
- spliter event. This will cause the calling code to call
+ spliter event. This will cause the calling code to call
ConSplitterTextInReadKeyStroke ().
Arguments:
@@ -2913,7 +2839,7 @@ ConSplitterTextOutReset (
Arguments:
This - Protocol instance pointer.
- ExtendedVerification - Driver may perform more exhaustive verfication
+ ExtendedVerification - Driver may perform more exhaustive verfication
operation of the device during reset.
Returns:
@@ -2971,17 +2897,17 @@ ConSplitterTextOutOutputString (
Arguments:
This - Protocol instance pointer.
String - The NULL-terminated Unicode string to be displayed on the output
- device(s). All output devices must also support the Unicode
+ device(s). All output devices must also support the Unicode
drawing defined in this file.
Returns:
EFI_SUCCESS - The string was output to the device.
EFI_DEVICE_ERROR - The device reported an error while attempting to output
the text.
- EFI_UNSUPPORTED - The output device's mode is not currently in a
+ EFI_UNSUPPORTED - The output device's mode is not currently in a
defined text mode.
- EFI_WARN_UNKNOWN_GLYPH - This warning code indicates that some of the
- characters in the Unicode string could not be
+ EFI_WARN_UNKNOWN_GLYPH - This warning code indicates that some of the
+ characters in the Unicode string could not be
rendered and were skipped.
--*/
@@ -3048,7 +2974,7 @@ ConSplitterTextOutTestString (
/*++
Routine Description:
- Verifies that all characters in a Unicode string can be output to the
+ Verifies that all characters in a Unicode string can be output to the
target device.
Arguments:
@@ -3058,8 +2984,8 @@ ConSplitterTextOutTestString (
Returns:
EFI_SUCCESS - The device(s) are capable of rendering the output string.
- EFI_UNSUPPORTED - Some of the characters in the Unicode string cannot be
- rendered by one or more of the output devices mapped
+ EFI_UNSUPPORTED - Some of the characters in the Unicode string cannot be
+ rendered by one or more of the output devices mapped
by the EFI handle.
--*/
@@ -3115,7 +3041,7 @@ ConSplitterTextOutQueryMode (
Returns:
EFI_SUCCESS - The requested mode information was returned.
- EFI_DEVICE_ERROR - The device had an error and could not
+ EFI_DEVICE_ERROR - The device had an error and could not
complete the request.
EFI_UNSUPPORTED - The mode number was not valid.
@@ -3132,7 +3058,7 @@ ConSplitterTextOutQueryMode (
if ( (ModeNumber > (UINTN)(((UINT32)-1)>>1)) ) {
return EFI_UNSUPPORTED;
}
-
+
if ((INT32) ModeNumber >= This->Mode->MaxMode) {
return EFI_UNSUPPORTED;
}
@@ -3165,7 +3091,7 @@ ConSplitterTextOutSetMode (
Returns:
EFI_SUCCESS - The requested text mode was set.
- EFI_DEVICE_ERROR - The device had an error and
+ EFI_DEVICE_ERROR - The device had an error and
could not complete the request.
EFI_UNSUPPORTED - The mode number was not valid.
@@ -3251,7 +3177,7 @@ ConSplitterTextOutSetAttribute (
Returns:
EFI_SUCCESS - The attribute was set.
- EFI_DEVICE_ERROR - The device had an error and
+ EFI_DEVICE_ERROR - The device had an error and
could not complete the request.
EFI_UNSUPPORTED - The attribute requested is not defined.
@@ -3269,7 +3195,7 @@ ConSplitterTextOutSetAttribute (
//
if ( (Attribute > (UINTN)(((UINT32)-1)>>1)) ) {
return EFI_UNSUPPORTED;
- }
+ }
//
// return the worst status met
@@ -3300,7 +3226,7 @@ ConSplitterTextOutClearScreen (
/*++
Routine Description:
- Clears the output device(s) display to the currently selected background
+ Clears the output device(s) display to the currently selected background
color.
Arguments:
@@ -3308,7 +3234,7 @@ ConSplitterTextOutClearScreen (
Returns:
EFI_SUCCESS - The operation completed successfully.
- EFI_DEVICE_ERROR - The device had an error and
+ EFI_DEVICE_ERROR - The device had an error and
could not complete the request.
EFI_UNSUPPORTED - The output device is not in a valid text mode.
@@ -3362,9 +3288,9 @@ ConSplitterTextOutSetCursorPosition (
Returns:
EFI_SUCCESS - The operation completed successfully.
- EFI_DEVICE_ERROR - The device had an error and
+ EFI_DEVICE_ERROR - The device had an error and
could not complete the request.
- EFI_UNSUPPORTED - The output device is not in a valid text mode, or the
+ EFI_UNSUPPORTED - The output device is not in a valid text mode, or the
cursor position is invalid for the current mode.
--*/
@@ -3424,7 +3350,7 @@ ConSplitterTextOutEnableCursor (
Returns:
EFI_SUCCESS - The operation completed successfully.
- EFI_DEVICE_ERROR - The device had an error and could not complete the
+ EFI_DEVICE_ERROR - The device had an error and could not complete the
request, or the device does not support changing
the cursor mode.
EFI_UNSUPPORTED - The output device is not in a valid text mode.
diff --git a/EdkModulePkg/Universal/Console/ConSplitter/Dxe/ConSplitterGraphics.c b/EdkModulePkg/Universal/Console/ConSplitter/Dxe/ConSplitterGraphics.c
index 2f60e11c40..e5f7c108e7 100644
--- a/EdkModulePkg/Universal/Console/ConSplitter/Dxe/ConSplitterGraphics.c
+++ b/EdkModulePkg/Universal/Console/ConSplitter/Dxe/ConSplitterGraphics.c
@@ -1,16 +1,16 @@
/*++
-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 - 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.
Module Name:
-
+
ConSplitterGraphics.c
Abstract:
@@ -96,7 +96,7 @@ ConSpliterConsoleControlSetMode (
Arguments:
This - Protocol instance pointer.
- Mode - Mode to set the
+ Mode - Mode to set the
Returns:
EFI_SUCCESS - Mode information returned.
@@ -118,7 +118,7 @@ ConSpliterConsoleControlSetMode (
//
// Judge current mode with wanted mode at first.
- //
+ //
if (Private->ConsoleOutputMode == Mode) {
return EFI_SUCCESS;
}
@@ -147,11 +147,7 @@ ConSpliterConsoleControlSetMode (
//
if ((Mode == EfiConsoleControlScreenGraphics) &&((TextAndGop->GraphicsOutput != NULL) || (TextAndGop->UgaDraw != NULL))) {
TextAndGop->TextOutEnabled = FALSE;
-#if (EFI_SPECIFICATION_VERSION >= 0x00020000)
DevNullGopSync (Private, TextAndGop->GraphicsOutput, TextAndGop->UgaDraw);
-#else
- DevNullUgaSync (Private, TextAndGop->UgaDraw);
-#endif
}
}
@@ -162,7 +158,6 @@ ConSpliterConsoleControlSetMode (
return EFI_SUCCESS;
}
-#if (EFI_SPECIFICATION_VERSION >= 0x00020000)
EFI_STATUS
EFIAPI
ConSpliterGraphicsOutputQueryMode (
@@ -374,7 +369,7 @@ DevNullGraphicsOutputBlt (
)
{
UINTN SrcY;
- BOOLEAN Forward;
+ BOOLEAN Forward;
UINTN Index;
EFI_GRAPHICS_OUTPUT_BLT_PIXEL *BltPtr;
EFI_GRAPHICS_OUTPUT_BLT_PIXEL *ScreenPtr;
@@ -658,396 +653,6 @@ DevNullGopSync (
}
}
-#else
-
-EFI_STATUS
-EFIAPI
-ConSpliterUgaDrawGetMode (
- IN EFI_UGA_DRAW_PROTOCOL *This,
- OUT UINT32 *HorizontalResolution,
- OUT UINT32 *VerticalResolution,
- OUT UINT32 *ColorDepth,
- OUT UINT32 *RefreshRate
- )
-/*++
-
- Routine Description:
- Return the current video mode information.
-
- Arguments:
- This - Protocol instance pointer.
- HorizontalResolution - Current video horizontal resolution in pixels
- VerticalResolution - Current video vertical resolution in pixels
- ColorDepth - Current video color depth in bits per pixel
- RefreshRate - Current video refresh rate in Hz.
-
- Returns:
- EFI_SUCCESS - Mode information returned.
- EFI_NOT_STARTED - Video display is not initialized. Call SetMode ()
- EFI_INVALID_PARAMETER - One of the input args was NULL.
-
---*/
-{
- TEXT_OUT_SPLITTER_PRIVATE_DATA *Private;
-
- if (!(HorizontalResolution && VerticalResolution && RefreshRate && ColorDepth)) {
- return EFI_INVALID_PARAMETER;
- }
- //
- // retrieve private data
- //
- Private = UGA_DRAW_SPLITTER_PRIVATE_DATA_FROM_THIS (This);
-
- *HorizontalResolution = Private->UgaHorizontalResolution;
- *VerticalResolution = Private->UgaVerticalResolution;
- *ColorDepth = Private->UgaColorDepth;
- *RefreshRate = Private->UgaRefreshRate;
-
- return EFI_SUCCESS;
-}
-
-EFI_STATUS
-EFIAPI
-ConSpliterUgaDrawSetMode (
- IN EFI_UGA_DRAW_PROTOCOL *This,
- IN UINT32 HorizontalResolution,
- IN UINT32 VerticalResolution,
- IN UINT32 ColorDepth,
- IN UINT32 RefreshRate
- )
-/*++
-
- Routine Description:
- Return the current video mode information.
-
- Arguments:
- This - Protocol instance pointer.
- HorizontalResolution - Current video horizontal resolution in pixels
- VerticalResolution - Current video vertical resolution in pixels
- ColorDepth - Current video color depth in bits per pixel
- RefreshRate - Current video refresh rate in Hz.
-
- Returns:
- EFI_SUCCESS - Mode information returned.
- EFI_NOT_STARTED - Video display is not initialized. Call SetMode ()
- EFI_OUT_OF_RESOURCES - Out of resources.
-
---*/
-{
- EFI_STATUS Status;
- TEXT_OUT_SPLITTER_PRIVATE_DATA *Private;
- UINTN Index;
- EFI_STATUS ReturnStatus;
- UINTN Size;
-
- Private = UGA_DRAW_SPLITTER_PRIVATE_DATA_FROM_THIS (This);
-
- //
- // UgaDevNullSetMode ()
- //
- ReturnStatus = EFI_SUCCESS;
-
- //
- // Free the old version
- //
- FreePool (Private->UgaBlt);
-
- //
- // Allocate the virtual Blt buffer
- //
- Size = HorizontalResolution * VerticalResolution * sizeof (EFI_UGA_PIXEL);
- Private->UgaBlt = AllocateZeroPool (Size);
- if (Private->UgaBlt == NULL) {
- return EFI_OUT_OF_RESOURCES;
- }
-
- //
- // Update the Mode data
- //
- Private->UgaHorizontalResolution = HorizontalResolution;
- Private->UgaVerticalResolution = VerticalResolution;
- Private->UgaColorDepth = ColorDepth;
- Private->UgaRefreshRate = RefreshRate;
-
- if (Private->ConsoleOutputMode != EfiConsoleControlScreenGraphics) {
- return ReturnStatus;
- }
- //
- // return the worst status met
- //
- for (Index = 0; Index < Private->CurrentNumberOfConsoles; Index++) {
- if (Private->TextOutList[Index].UgaDraw != NULL) {
- Status = Private->TextOutList[Index].UgaDraw->SetMode (
- Private->TextOutList[Index].UgaDraw,
- HorizontalResolution,
- VerticalResolution,
- ColorDepth,
- RefreshRate
- );
- if (EFI_ERROR (Status)) {
- ReturnStatus = Status;
- }
- }
- }
-
- return ReturnStatus;
-}
-
-EFI_STATUS
-DevNullUgaBlt (
- IN TEXT_OUT_SPLITTER_PRIVATE_DATA *Private,
- IN EFI_UGA_PIXEL *BltBuffer, OPTIONAL
- IN EFI_UGA_BLT_OPERATION BltOperation,
- IN UINTN SourceX,
- IN UINTN SourceY,
- IN UINTN DestinationX,
- IN UINTN DestinationY,
- IN UINTN Width,
- IN UINTN Height,
- IN UINTN Delta OPTIONAL
- )
-{
- UINTN SrcY;
- BOOLEAN Forward;
- UINTN Index;
- EFI_UGA_PIXEL *BltPtr;
- EFI_UGA_PIXEL *ScreenPtr;
- UINT32 HorizontalResolution;
- UINT32 VerticalResolution;
-
- if ((BltOperation < 0) || (BltOperation >= EfiUgaBltMax)) {
- return EFI_INVALID_PARAMETER;
- }
-
- if (Width == 0 || Height == 0) {
- return EFI_INVALID_PARAMETER;
- }
-
- if (Delta == 0) {
- Delta = Width * sizeof (EFI_UGA_PIXEL);
- }
-
- HorizontalResolution = Private->UgaHorizontalResolution;
- VerticalResolution = Private->UgaVerticalResolution;
-
- //
- // We need to fill the Virtual Screen buffer with the blt data.
- //
- if (BltOperation == EfiUgaVideoToBltBuffer) {
- //
- // Video to BltBuffer: Source is Video, destination is BltBuffer
- //
- if ((SourceY + Height) > VerticalResolution) {
- return EFI_INVALID_PARAMETER;
- }
-
- if ((SourceX + Width) > HorizontalResolution) {
- return EFI_INVALID_PARAMETER;
- }
-
- BltPtr = (EFI_UGA_PIXEL *) ((UINT8 *) BltBuffer + DestinationY * Delta + DestinationX * sizeof (EFI_UGA_PIXEL));
- ScreenPtr = &Private->UgaBlt[SourceY * HorizontalResolution + SourceX];
- while (Height) {
- CopyMem (BltPtr, ScreenPtr, Width * sizeof (EFI_UGA_PIXEL));
- BltPtr = (EFI_UGA_PIXEL *) ((UINT8 *) BltPtr + Delta);
- ScreenPtr += HorizontalResolution;
- Height--;
- }
- } else {
- //
- // BltBuffer to Video: Source is BltBuffer, destination is Video
- //
- if (DestinationY + Height > VerticalResolution) {
- return EFI_INVALID_PARAMETER;
- }
-
- if (DestinationX + Width > HorizontalResolution) {
- return EFI_INVALID_PARAMETER;
- }
-
- if ((BltOperation == EfiUgaVideoToVideo) && (DestinationY > SourceY)) {
- //
- // Copy backwards, only care the Video to Video Blt
- //
- ScreenPtr = &Private->UgaBlt[(DestinationY + Height - 1) * HorizontalResolution + DestinationX];
- SrcY = SourceY + Height - 1;
- Forward = FALSE;
- } else {
- //
- // Copy forwards, for other cases
- //
- ScreenPtr = &Private->UgaBlt[DestinationY * HorizontalResolution + DestinationX];
- SrcY = SourceY;
- Forward = TRUE;
- }
-
- while (Height != 0) {
- if (BltOperation == EfiUgaVideoFill) {
- for (Index = 0; Index < Width; Index++) {
- ScreenPtr[Index] = *BltBuffer;
- }
- } else {
- if (BltOperation == EfiUgaBltBufferToVideo) {
- BltPtr = (EFI_UGA_PIXEL *) ((UINT8 *) BltBuffer + SrcY * Delta + SourceX * sizeof (EFI_UGA_PIXEL));
- } else {
- BltPtr = &Private->UgaBlt[SrcY * HorizontalResolution + SourceX];
- }
-
- CopyMem (ScreenPtr, BltPtr, Width * sizeof (EFI_UGA_PIXEL));
- }
-
- if (Forward) {
- ScreenPtr += HorizontalResolution;
- SrcY ++;
- } else {
- ScreenPtr -= HorizontalResolution;
- SrcY --;
- }
- Height--;
- }
- }
-
- return EFI_SUCCESS;
-}
-
-EFI_STATUS
-EFIAPI
-ConSpliterUgaDrawBlt (
- IN EFI_UGA_DRAW_PROTOCOL *This,
- IN EFI_UGA_PIXEL *BltBuffer, OPTIONAL
- IN EFI_UGA_BLT_OPERATION BltOperation,
- IN UINTN SourceX,
- IN UINTN SourceY,
- IN UINTN DestinationX,
- IN UINTN DestinationY,
- IN UINTN Width,
- IN UINTN Height,
- IN UINTN Delta OPTIONAL
- )
-/*++
-
- Routine Description:
- The following table defines actions for BltOperations:
- EfiUgaVideoFill - Write data from the BltBuffer pixel (SourceX, SourceY)
- directly to every pixel of the video display rectangle
- (DestinationX, DestinationY)
- (DestinationX + Width, DestinationY + Height).
- Only one pixel will be used from the BltBuffer. Delta is NOT used.
- EfiUgaVideoToBltBuffer - Read data from the video display rectangle
- (SourceX, SourceY) (SourceX + Width, SourceY + Height) and place it in
- the BltBuffer rectangle (DestinationX, DestinationY )
- (DestinationX + Width, DestinationY + Height). If DestinationX or
- DestinationY is not zero then Delta must be set to the length in bytes
- of a row in the BltBuffer.
- EfiUgaBltBufferToVideo - Write data from the BltBuffer rectangle
- (SourceX, SourceY) (SourceX + Width, SourceY + Height) directly to the
- video display rectangle (DestinationX, DestinationY)
- (DestinationX + Width, DestinationY + Height). If SourceX or SourceY is
- not zero then Delta must be set to the length in bytes of a row in the
- BltBuffer.
- EfiUgaVideoToVideo - Copy from the video display rectangle
- (SourceX, SourceY) (SourceX + Width, SourceY + Height) .
- to the video display rectangle (DestinationX, DestinationY)
- (DestinationX + Width, DestinationY + Height).
- The BltBuffer and Delta are not used in this mode.
-
- Arguments:
- This - Protocol instance pointer.
- BltBuffer - Buffer containing data to blit into video buffer. This
- buffer has a size of Width*Height*sizeof(EFI_UGA_PIXEL)
- BltOperation - Operation to perform on BlitBuffer and video memory
- SourceX - X coordinate of source for the BltBuffer.
- SourceY - Y coordinate of source for the BltBuffer.
- DestinationX - X coordinate of destination for the BltBuffer.
- DestinationY - Y coordinate of destination for the BltBuffer.
- Width - Width of rectangle in BltBuffer in pixels.
- Height - Hight of rectangle in BltBuffer in pixels.
- Delta -
-
- Returns:
- EFI_SUCCESS - The Blt operation completed.
- EFI_INVALID_PARAMETER - BltOperation is not valid.
- EFI_DEVICE_ERROR - A hardware error occured writting to the video
- buffer.
-
---*/
-{
- EFI_STATUS Status;
- TEXT_OUT_SPLITTER_PRIVATE_DATA *Private;
- UINTN Index;
- EFI_STATUS ReturnStatus;
-
- Private = UGA_DRAW_SPLITTER_PRIVATE_DATA_FROM_THIS (This);
-
- //
- // Sync up DevNull UGA device
- //
- ReturnStatus = DevNullUgaBlt (
- Private,
- BltBuffer,
- BltOperation,
- SourceX,
- SourceY,
- DestinationX,
- DestinationY,
- Width,
- Height,
- Delta
- );
- if (Private->ConsoleOutputMode != EfiConsoleControlScreenGraphics) {
- return ReturnStatus;
- }
- //
- // return the worst status met
- //
- for (Index = 0; Index < Private->CurrentNumberOfConsoles; Index++) {
- if (Private->TextOutList[Index].UgaDraw != NULL) {
- Status = Private->TextOutList[Index].UgaDraw->Blt (
- Private->TextOutList[Index].UgaDraw,
- BltBuffer,
- BltOperation,
- SourceX,
- SourceY,
- DestinationX,
- DestinationY,
- Width,
- Height,
- Delta
- );
- if (EFI_ERROR (Status)) {
- ReturnStatus = Status;
- } else if (BltOperation == EfiUgaVideoToBltBuffer) {
- //
- // Only need to read the data into buffer one time
- //
- return EFI_SUCCESS;
- }
- }
- }
-
- return ReturnStatus;
-}
-
-EFI_STATUS
-DevNullUgaSync (
- IN TEXT_OUT_SPLITTER_PRIVATE_DATA *Private,
- IN EFI_UGA_DRAW_PROTOCOL *UgaDraw
- )
-{
- return UgaDraw->Blt (
- UgaDraw,
- Private->UgaBlt,
- EfiUgaBltBufferToVideo,
- 0,
- 0,
- 0,
- 0,
- Private->UgaHorizontalResolution,
- Private->UgaVerticalResolution,
- Private->UgaHorizontalResolution * sizeof (EFI_UGA_PIXEL)
- );
-}
-#endif
EFI_STATUS
DevNullTextOutOutputString (
@@ -1063,17 +668,17 @@ DevNullTextOutOutputString (
Private - Pointer to the console output splitter's private data. It
indicates the calling context.
WString - The NULL-terminated Unicode string to be displayed on the output
- device(s). All output devices must also support the Unicode
+ device(s). All output devices must also support the Unicode
drawing defined in this file.
Returns:
EFI_SUCCESS - The string was output to the device.
- EFI_DEVICE_ERROR - The device reported an error while attempting to
+ EFI_DEVICE_ERROR - The device reported an error while attempting to
output the text.
- EFI_UNSUPPORTED - The output device's mode is not currently in a
+ EFI_UNSUPPORTED - The output device's mode is not currently in a
defined text mode.
- EFI_WARN_UNKNOWN_GLYPH - This warning code indicates that some of the
- characters in the Unicode string could not be
+ EFI_WARN_UNKNOWN_GLYPH - This warning code indicates that some of the
+ characters in the Unicode string could not be
rendered and were skipped.
--*/
@@ -1285,7 +890,7 @@ DevNullTextOutSetMode (
Returns:
EFI_SUCCESS - The requested text mode was set.
- EFI_DEVICE_ERROR - The device had an error and
+ EFI_DEVICE_ERROR - The device had an error and
could not complete the request.
EFI_UNSUPPORTED - The mode number was not valid.
EFI_OUT_OF_RESOURCES - Out of resources.
@@ -1314,7 +919,7 @@ DevNullTextOutSetMode (
Private->TextOutMode.Mode = (INT32) ModeNumber;
Private->DevNullColumns = Column;
Private->DevNullRows = Row;
-
+
if (Private->DevNullScreen != NULL) {
FreePool (Private->DevNullScreen);
}
@@ -1348,7 +953,7 @@ DevNullTextOutClearScreen (
/*++
Routine Description:
- Clears the output device(s) display to the currently selected background
+ Clears the output device(s) display to the currently selected background
color.
Arguments:
@@ -1356,7 +961,7 @@ DevNullTextOutClearScreen (
Returns:
EFI_SUCCESS - The operation completed successfully.
- EFI_DEVICE_ERROR - The device had an error and
+ EFI_DEVICE_ERROR - The device had an error and
could not complete the request.
EFI_UNSUPPORTED - The output device is not in a valid text mode.
@@ -1412,9 +1017,9 @@ DevNullTextOutSetCursorPosition (
Returns:
EFI_SUCCESS - The operation completed successfully.
- EFI_DEVICE_ERROR - The device had an error and
+ EFI_DEVICE_ERROR - The device had an error and
could not complete the request.
- EFI_UNSUPPORTED - The output device is not in a valid text mode, or the
+ EFI_UNSUPPORTED - The output device is not in a valid text mode, or the
cursor position is invalid for the current mode.
--*/
@@ -1437,22 +1042,22 @@ DevNullTextOutEnableCursor (
)
/*++
Routine Description:
-
+
Implements SIMPLE_TEXT_OUTPUT.EnableCursor().
- In this driver, the cursor cannot be hidden.
-
+ In this driver, the cursor cannot be hidden.
+
Arguments:
-
+
Private - Indicates the calling context.
-
- Visible - If TRUE, the cursor is set to be visible, If FALSE, the cursor
- is set to be invisible.
+
+ Visible - If TRUE, the cursor is set to be visible, If FALSE, the cursor
+ is set to be invisible.
Returns:
-
+
EFI_SUCCESS - The request is valid.
-
-
+
+
--*/
{
Private->TextOutMode.CursorVisible = Visible;
@@ -1467,15 +1072,15 @@ DevNullSyncGopStdOut (
/*++
Routine Description:
Take the DevNull TextOut device and update the Simple Text Out on every
- UGA device.
-
+ UGA device.
+
Arguments:
Private - Indicates the calling context.
Returns:
EFI_SUCCESS - The request is valid.
other - Return status of TextOut->OutputString ()
-
+
--*/
{
EFI_STATUS Status;