summaryrefslogtreecommitdiffstats
path: root/IntelFrameworkModulePkg
diff options
context:
space:
mode:
authorRuiyu Ni <ruiyu.ni@intel.com>2016-11-08 10:25:46 +0800
committerRuiyu Ni <ruiyu.ni@intel.com>2016-11-10 10:19:54 +0800
commit83155d7eb4d3cc15d375cc1ac6ec8bd68499193f (patch)
treeddbb688b13c9bc8949d12856487e28bdfd2f9803 /IntelFrameworkModulePkg
parent4ab04a72f52e4d12a0c30b20e577e688b786e4fd (diff)
downloadedk2-83155d7eb4d3cc15d375cc1ac6ec8bd68499193f.tar.gz
edk2-83155d7eb4d3cc15d375cc1ac6ec8bd68499193f.tar.bz2
edk2-83155d7eb4d3cc15d375cc1ac6ec8bd68499193f.zip
IntelFrameworkModulePkg/LegacyBios: Fix legacy serial redirection bug
Upon booting to a legacy OS, LegacyBios driver is responsible to initialize the BDA region with the correct COM port base address. But the current logic to get the COM port base address from IsaIo instance is not correct. The patch fixes this bug. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com> Reviewed-by: Jeff Fan <jeff.fan@intel.com>
Diffstat (limited to 'IntelFrameworkModulePkg')
-rw-r--r--IntelFrameworkModulePkg/Csm/LegacyBiosDxe/LegacySio.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/IntelFrameworkModulePkg/Csm/LegacyBiosDxe/LegacySio.c b/IntelFrameworkModulePkg/Csm/LegacyBiosDxe/LegacySio.c
index c853377192..686a32dac8 100644
--- a/IntelFrameworkModulePkg/Csm/LegacyBiosDxe/LegacySio.c
+++ b/IntelFrameworkModulePkg/Csm/LegacyBiosDxe/LegacySio.c
@@ -354,7 +354,7 @@ LegacyBiosBuildSioDataFromIsaIo (
//
for (ChildIndex = 0; ChildIndex < EntryCount; ChildIndex++) {
if ((OpenInfoBuffer[ChildIndex].Attributes & EFI_OPEN_PROTOCOL_BY_CHILD_CONTROLLER) != 0) {
- Status = gBS->HandleProtocol (OpenInfoBuffer[ChildIndex].AgentHandle, &gEfiSerialIoProtocolGuid, (VOID **) &SerialIo);
+ Status = gBS->HandleProtocol (OpenInfoBuffer[ChildIndex].ControllerHandle, &gEfiSerialIoProtocolGuid, (VOID **) &SerialIo);
if (!EFI_ERROR (Status)) {
SioSerial = &SioPtr->Serial[ResourceList->Device.UID];
SioSerial->Address = (UINT16) IoResource->StartRange;