diff --git a/IntelFrameworkModulePkg/Bus/Pci/IdeBusDxe/ata.c b/IntelFrameworkModulePkg/Bus/Pci/IdeBusDxe/ata.c index 3a7271ec47..a315953e3c 100644 --- a/IntelFrameworkModulePkg/Bus/Pci/IdeBusDxe/ata.c +++ b/IntelFrameworkModulePkg/Bus/Pci/IdeBusDxe/ata.c @@ -191,6 +191,8 @@ ATAIdentify ( the capacity is below 120G, 48bit addressing is not needed @retval EFI_DEVICE_ERROR The identify data in IdeDev is incorrect + + @retval EFI_INVALID_PARAMETER The identify data in IdeDev is NULL. @note This function must be called after DEVICE_IDENTITY command has been @@ -208,7 +210,7 @@ AtaAtapi6Identify ( EFI_IDENTIFY_DATA *Atapi6IdentifyStruct; if (IdeDev->pIdData == NULL) { - return EFI_UNSUPPORTED; + return EFI_INVALID_PARAMETER; } Atapi6IdentifyStruct = IdeDev->pIdData; diff --git a/IntelFrameworkModulePkg/Bus/Pci/PciBusDxe/PciHotPlugSupport.c b/IntelFrameworkModulePkg/Bus/Pci/PciBusDxe/PciHotPlugSupport.c index 8593c52689..6128542111 100644 --- a/IntelFrameworkModulePkg/Bus/Pci/PciBusDxe/PciHotPlugSupport.c +++ b/IntelFrameworkModulePkg/Bus/Pci/PciBusDxe/PciHotPlugSupport.c @@ -275,9 +275,6 @@ Returns: EFI_TIMEOUT - Time out --*/ -// TODO: TimeoutInMilliSeconds - add argument and description to function comment -// TODO: EFI_SUCCESS - add return value to function comment -// TODO: EFI_TIMEOUT - add return value to function comment { UINT32 Delay; UINTN Index; diff --git a/IntelFrameworkModulePkg/Bus/Pci/PciBusDxe/PciIo.c b/IntelFrameworkModulePkg/Bus/Pci/PciBusDxe/PciIo.c index 63ab8e551a..765cf4c87a 100644 --- a/IntelFrameworkModulePkg/Bus/Pci/PciBusDxe/PciIo.c +++ b/IntelFrameworkModulePkg/Bus/Pci/PciBusDxe/PciIo.c @@ -1464,19 +1464,20 @@ Returns: // Just a trick for ENABLE attribute // EFI_PCI_DEVICE_ENABLE is not defined in UEFI spec, which is the internal usage. // So, this logic doesn't confrom to UEFI spec, which should be removed. + // But this trick logic is still kept for some binary drivers that depend on it. // - // if ((Attributes & EFI_PCI_DEVICE_ENABLE) == EFI_PCI_DEVICE_ENABLE) { - // Attributes &= (PciIoDevice->Supports); - // - // // - // // Raise the EFI_P_PC_ENABLE Status code - // // - // REPORT_STATUS_CODE_WITH_DEVICE_PATH ( - // EFI_PROGRESS_CODE, - // EFI_IO_BUS_PCI | EFI_P_PC_ENABLE, - // PciIoDevice->DevicePath - // ); - // } + if ((Attributes & EFI_PCI_DEVICE_ENABLE) == EFI_PCI_DEVICE_ENABLE) { + Attributes &= (PciIoDevice->Supports); + + // + // Raise the EFI_P_PC_ENABLE Status code + // + REPORT_STATUS_CODE_WITH_DEVICE_PATH ( + EFI_PROGRESS_CODE, + EFI_IO_BUS_PCI | EFI_P_PC_ENABLE, + PciIoDevice->DevicePath + ); + } // // If no attributes can be supported, then return.