summaryrefslogtreecommitdiff
path: root/edk2/MdeModulePkg/Universal
diff options
context:
space:
mode:
authorli-elvin <li-elvin@6f19259b-4bc3-4df7-8a09-765794883524>2012-08-22 08:52:04 +0000
committerli-elvin <li-elvin@6f19259b-4bc3-4df7-8a09-765794883524>2012-08-22 08:52:04 +0000
commit2baefe70b71ca882781a9e4f8f859ad40fb859d6 (patch)
treed8be1867ca1d4c402ff566b8d20a51e3fbedbc62 /edk2/MdeModulePkg/Universal
parent06d480f0b67c6c9f1d20579002ed301dff2dcc1e (diff)
Get correct GOP protocol for physical GOP device.
Signed-off-by: Li Elvin <elvin.li@intel.com> Reviewed-by: Fan Jeff <jeff.fan@intel.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk@13666 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'edk2/MdeModulePkg/Universal')
-rw-r--r--edk2/MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterGraphics.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/edk2/MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterGraphics.c b/edk2/MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterGraphics.c
index f57aefeb7..b7cdd7af3 100644
--- a/edk2/MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterGraphics.c
+++ b/edk2/MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterGraphics.c
@@ -120,6 +120,7 @@ ConSplitterGraphicsOutputSetMode (
EFI_STATUS ReturnStatus;
EFI_GRAPHICS_OUTPUT_MODE_INFORMATION *Mode;
EFI_GRAPHICS_OUTPUT_PROTOCOL *GraphicsOutput;
+ EFI_GRAPHICS_OUTPUT_PROTOCOL *PhysicalGraphicsOutput;
UINTN NumberIndex;
UINTN SizeOfInfo;
EFI_GRAPHICS_OUTPUT_MODE_INFORMATION *Info;
@@ -134,12 +135,14 @@ ConSplitterGraphicsOutputSetMode (
ReturnStatus = EFI_SUCCESS;
GraphicsOutput = NULL;
+ PhysicalGraphicsOutput = NULL;
//
// return the worst status met
//
for (Index = 0; Index < Private->CurrentNumberOfConsoles; Index++) {
GraphicsOutput = Private->TextOutList[Index].GraphicsOutput;
if (GraphicsOutput != NULL) {
+ PhysicalGraphicsOutput = GraphicsOutput;
//
// Find corresponding ModeNumber of this GraphicsOutput instance
//
@@ -178,14 +181,14 @@ ConSplitterGraphicsOutputSetMode (
This->Mode->Mode = ModeNumber;
- if ((Private->CurrentNumberOfGraphicsOutput == 1) && (GraphicsOutput != NULL)) {
+ if ((Private->CurrentNumberOfGraphicsOutput == 1) && (PhysicalGraphicsOutput != NULL)) {
//
// If only one physical GOP device exist, copy physical information to consplitter.
//
- CopyMem (This->Mode->Info, GraphicsOutput->Mode->Info, GraphicsOutput->Mode->SizeOfInfo);
- This->Mode->SizeOfInfo = GraphicsOutput->Mode->SizeOfInfo;
- This->Mode->FrameBufferBase = GraphicsOutput->Mode->FrameBufferBase;
- This->Mode->FrameBufferSize = GraphicsOutput->Mode->FrameBufferSize;
+ CopyMem (This->Mode->Info, PhysicalGraphicsOutput->Mode->Info, PhysicalGraphicsOutput->Mode->SizeOfInfo);
+ This->Mode->SizeOfInfo = PhysicalGraphicsOutput->Mode->SizeOfInfo;
+ This->Mode->FrameBufferBase = PhysicalGraphicsOutput->Mode->FrameBufferBase;
+ This->Mode->FrameBufferSize = PhysicalGraphicsOutput->Mode->FrameBufferSize;
} else {
//
// If 2 more phyiscal GOP device exist or GOP protocol does not exist,