diff --git a/IntelFrameworkModulePkg/Bus/Pci/IdeBusDxe/DriverDiagnostics.c b/IntelFrameworkModulePkg/Bus/Pci/IdeBusDxe/DriverDiagnostics.c
index 1502268c20..f9f0b2252f 100644
--- a/IntelFrameworkModulePkg/Bus/Pci/IdeBusDxe/DriverDiagnostics.c
+++ b/IntelFrameworkModulePkg/Bus/Pci/IdeBusDxe/DriverDiagnostics.c
@@ -163,7 +163,7 @@ IDEBusDriverDiagnosticsRunDiagnostics (
                     EFI_OPEN_PROTOCOL_TEST_PROTOCOL
                     );
     if (EFI_ERROR (Status)) {
-      return EFI_UNSUPPORTED;
+      return Status;
     }
 
     Status = gBS->OpenProtocol (
@@ -202,7 +202,7 @@ IDEBusDriverDiagnosticsRunDiagnostics (
                   EFI_OPEN_PROTOCOL_GET_PROTOCOL
                   );
   if (EFI_ERROR (Status)) {
-    return EFI_UNSUPPORTED;
+    return Status;
   }
 
   IdeBlkIoDevice = IDE_BLOCK_IO_DEV_FROM_THIS (BlkIo);