summaryrefslogtreecommitdiff
path: root/IntelFrameworkModulePkg/Bus/Isa
diff options
context:
space:
mode:
Diffstat (limited to 'IntelFrameworkModulePkg/Bus/Isa')
-rw-r--r--IntelFrameworkModulePkg/Bus/Isa/IsaSerialDxe/Serial.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/IntelFrameworkModulePkg/Bus/Isa/IsaSerialDxe/Serial.c b/IntelFrameworkModulePkg/Bus/Isa/IsaSerialDxe/Serial.c
index b842112230..35b83f96bb 100644
--- a/IntelFrameworkModulePkg/Bus/Isa/IsaSerialDxe/Serial.c
+++ b/IntelFrameworkModulePkg/Bus/Isa/IsaSerialDxe/Serial.c
@@ -195,6 +195,7 @@ SerialControllerDriverSupported (
EFI_OPEN_PROTOCOL_INFORMATION_ENTRY *OpenInfoBuffer;
UINTN EntryCount;
UINTN Index;
+ BOOLEAN HasFlowControl;
//
// Check RemainingDevicePath validation
@@ -298,9 +299,11 @@ SerialControllerDriverSupported (
Controller,
EFI_OPEN_PROTOCOL_GET_PROTOCOL
);
- if (!EFI_ERROR (Status) &&
- (ContainsFlowControl (RemainingDevicePath) ^ ContainsFlowControl (DevicePath))) {
- Status = EFI_UNSUPPORTED;
+ if (!EFI_ERROR (Status)) {
+ HasFlowControl = ContainsFlowControl (RemainingDevicePath);
+ if (HasFlowControl ^ ContainsFlowControl (DevicePath)) {
+ Status = EFI_UNSUPPORTED;
+ }
}
break;
}