OcConsoleControlEntryModeLib: Look for ConsoleControl on other handles
@@ -27,6 +27,7 @@ OcConsoleControlEntryModeInit (
{
EFI_STATUS Status;
EFI_CONSOLE_CONTROL_PROTOCOL *ConsoleControl;
+
//
// On several firmwares we need to use legacy console control protocol to
// switch to text mode, otherwise a black screen will be shown.
@@ -36,6 +37,14 @@ OcConsoleControlEntryModeInit (
&gEfiConsoleControlProtocolGuid,
(VOID **) &ConsoleControl
);
+ if (EFI_ERROR (Status)) {
+ Status = gBS->LocateProtocol (
+ &gEfiConsoleControlProtocolGuid,
+ NULL,
+ (VOID **) &ConsoleControl
+ );
+ }
+
if (!EFI_ERROR (Status)) {
ConsoleControl->SetMode (
ConsoleControl,
