Add more status code in drivers.

Signed-off-by: li-elvin
Reviewed-by: jyao1
Reviewed-by: lgao4
Reviewed-by: erictian

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11706 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
li-elvin 2011-05-26 06:29:30 +00:00
parent 4bb5fd6754
commit 3d0a23854e
7 changed files with 22 additions and 5 deletions

View File

@ -2309,6 +2309,7 @@ AhciModeInitialization (
Status = AhciIdentify (PciIo, AhciRegisters, Port, 0, &Buffer); Status = AhciIdentify (PciIo, AhciRegisters, Port, 0, &Buffer);
if (EFI_ERROR (Status)) { if (EFI_ERROR (Status)) {
REPORT_STATUS_CODE (EFI_PROGRESS_CODE, (EFI_PERIPHERAL_FIXED_MEDIA | EFI_P_EC_NOT_DETECTED));
continue; continue;
} }
@ -2388,6 +2389,9 @@ AhciModeInitialization (
// Found a ATA or ATAPI device, add it into the device list. // Found a ATA or ATAPI device, add it into the device list.
// //
CreateNewDeviceInfo (Instance, Port, 0, DeviceType, &Buffer); CreateNewDeviceInfo (Instance, Port, 0, DeviceType, &Buffer);
if (DeviceType == EfiIdeHarddisk) {
REPORT_STATUS_CODE (EFI_PROGRESS_CODE, (EFI_PERIPHERAL_FIXED_MEDIA | EFI_P_PC_ENABLE));
}
} }
} }
} }

View File

@ -4,7 +4,7 @@
# This driver installs AtaPassThru and ExtScsiPassThru protocol in each ide/sata controller # This driver installs AtaPassThru and ExtScsiPassThru protocol in each ide/sata controller
# to access to all attached Ata/Atapi devices. # to access to all attached Ata/Atapi devices.
# #
# Copyright (c) 2010, Intel Corporation. All rights reserved.<BR> # Copyright (c) 2010 - 2011, Intel Corporation. All rights reserved.<BR>
# #
# This program and the accompanying materials # This program and the accompanying materials
# are licensed and made available under the terms and conditions of the BSD License # are licensed and made available under the terms and conditions of the BSD License
@ -57,6 +57,7 @@
UefiDriverEntryPoint UefiDriverEntryPoint
DebugLib DebugLib
TimerLib TimerLib
ReportStatusCodeLib
[Guids] [Guids]

View File

@ -2641,6 +2641,8 @@ DetectAndConfigIdeDevice (
// if identifying ata device is failure, then try to send identify packet cmd. // if identifying ata device is failure, then try to send identify packet cmd.
// //
if (EFI_ERROR (Status)) { if (EFI_ERROR (Status)) {
REPORT_STATUS_CODE (EFI_PROGRESS_CODE, (EFI_PERIPHERAL_FIXED_MEDIA | EFI_P_EC_NOT_DETECTED));
DeviceType = EfiIdeCdrom; DeviceType = EfiIdeCdrom;
Status = AtaIdentifyPacket (Instance, IdeChannel, IdeDevice, &Buffer, NULL); Status = AtaIdentifyPacket (Instance, IdeChannel, IdeDevice, &Buffer, NULL);
} }
@ -2772,6 +2774,10 @@ DetectAndConfigIdeDevice (
if (EFI_ERROR (Status)) { if (EFI_ERROR (Status)) {
continue; continue;
} }
if (DeviceType == EfiIdeHarddisk) {
REPORT_STATUS_CODE (EFI_PROGRESS_CODE, (EFI_PERIPHERAL_FIXED_MEDIA | EFI_P_PC_ENABLE));
}
} }
return EFI_SUCCESS; return EFI_SUCCESS;
} }

View File

@ -2,7 +2,7 @@
Usb Bus Driver Binding and Bus IO Protocol. Usb Bus Driver Binding and Bus IO Protocol.
Copyright (c) 2004 - 2010, Intel Corporation. All rights reserved.<BR> Copyright (c) 2004 - 2011, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License are licensed and made available under the terms and conditions of the BSD License
which accompanies this distribution. The full text of the license may be found at which accompanies this distribution. The full text of the license may be found at
@ -1279,6 +1279,7 @@ UsbBusControllerDriverStart (
// //
// If first start, build the bus execute environment and install bus protocol // If first start, build the bus execute environment and install bus protocol
// //
REPORT_STATUS_CODE (EFI_PROGRESS_CODE, (EFI_IO_BUS_USB | EFI_P_PC_ENABLE));
Status = UsbBusBuildProtocol (This, Controller, RemainingDevicePath); Status = UsbBusBuildProtocol (This, Controller, RemainingDevicePath);
if (EFI_ERROR (Status)) { if (EFI_ERROR (Status)) {
return Status; return Status;

View File

@ -2,7 +2,7 @@
Usb Bus Driver Binding and Bus IO Protocol. Usb Bus Driver Binding and Bus IO Protocol.
Copyright (c) 2004 - 2010, Intel Corporation. All rights reserved.<BR> Copyright (c) 2004 - 2011, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License are licensed and made available under the terms and conditions of the BSD License
which accompanies this distribution. The full text of the license may be found at which accompanies this distribution. The full text of the license may be found at
@ -32,6 +32,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#include <Library/UefiLib.h> #include <Library/UefiLib.h>
#include <Library/DevicePathLib.h> #include <Library/DevicePathLib.h>
#include <Library/MemoryAllocationLib.h> #include <Library/MemoryAllocationLib.h>
#include <Library/ReportStatusCodeLib.h>
#include <IndustryStandard/Usb.h> #include <IndustryStandard/Usb.h>

View File

@ -4,7 +4,7 @@
# #
# Usb Bus Dxe driver is used to enumerate and manage all attached usb devices. # Usb Bus Dxe driver is used to enumerate and manage all attached usb devices.
# #
# Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR> # Copyright (c) 2006 - 2011, Intel Corporation. All rights reserved.<BR>
# #
# This program and the accompanying materials # This program and the accompanying materials
# are licensed and made available under the terms and conditions of the BSD License # are licensed and made available under the terms and conditions of the BSD License
@ -61,6 +61,7 @@
UefiDriverEntryPoint UefiDriverEntryPoint
BaseMemoryLib BaseMemoryLib
DebugLib DebugLib
ReportStatusCodeLib
[Protocols] [Protocols]

View File

@ -2,7 +2,7 @@
Last PEIM. Last PEIM.
Responsibility of this module is to load the DXE Core from a Firmware Volume. Responsibility of this module is to load the DXE Core from a Firmware Volume.
Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR> Copyright (c) 2006 - 2011, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License are licensed and made available under the terms and conditions of the BSD License
which accompanies this distribution. The full text of the license may be found at which accompanies this distribution. The full text of the license may be found at
@ -318,6 +318,9 @@ DxeIplFindDxeCore (
// If some error occurs here, then we cannot find any firmware // If some error occurs here, then we cannot find any firmware
// volume that may contain DxeCore. // volume that may contain DxeCore.
// //
if (EFI_ERROR (Status)) {
REPORT_STATUS_CODE (EFI_PROGRESS_CODE, (EFI_SOFTWARE_PEI_MODULE | EFI_SW_PEI_CORE_EC_DXE_CORRUPT));
}
ASSERT_EFI_ERROR (Status); ASSERT_EFI_ERROR (Status);
// //