mirror of https://github.com/acidanthera/audk.git
1, Add <Library/DevicePathLib.h> for all source that use device path utility macros
2, Add DevicePathLib library class to module's INF that use device path utility macros git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6457 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
1232b21473
commit
2067710de0
|
@ -612,8 +612,8 @@ StartPciDevicesOnBridge (
|
|||
//
|
||||
// Get the next device path
|
||||
//
|
||||
CurrentDevicePath = EfiNextDevicePathNode (RemainingDevicePath);
|
||||
if (EfiIsDevicePathEnd (CurrentDevicePath)) {
|
||||
CurrentDevicePath = NextDevicePathNode (RemainingDevicePath);
|
||||
if (IsDevicePathEnd (CurrentDevicePath)) {
|
||||
return EFI_SUCCESS;
|
||||
}
|
||||
|
||||
|
@ -1015,7 +1015,7 @@ GetHpcPciAddress (
|
|||
//
|
||||
// Get the remaining device path for this PCI device, if it is a PCI device
|
||||
//
|
||||
while (!EfiIsDevicePathEnd (CurrentDevicePath)) {
|
||||
while (!IsDevicePathEnd (CurrentDevicePath)) {
|
||||
|
||||
Node.DevPath = CurrentDevicePath;
|
||||
|
||||
|
@ -1025,7 +1025,7 @@ GetHpcPciAddress (
|
|||
if ((Node.DevPath->Type != HARDWARE_DEVICE_PATH) ||
|
||||
((Node.DevPath->SubType != HW_PCI_DP) &&
|
||||
(DevicePathNodeLength (Node.DevPath) != sizeof (PCI_DEVICE_PATH)))) {
|
||||
CurrentDevicePath = EfiNextDevicePathNode (CurrentDevicePath);
|
||||
CurrentDevicePath = NextDevicePathNode (CurrentDevicePath);
|
||||
continue;
|
||||
}
|
||||
|
||||
|
@ -1035,7 +1035,7 @@ GetHpcPciAddress (
|
|||
//
|
||||
// Check if it is not PCI device path
|
||||
//
|
||||
if (EfiIsDevicePathEnd (CurrentDevicePath)) {
|
||||
if (IsDevicePathEnd (CurrentDevicePath)) {
|
||||
return EFI_NOT_FOUND;
|
||||
}
|
||||
|
||||
|
@ -1094,7 +1094,7 @@ GetHpcPciAddressFromRootBridge (
|
|||
Node.DevPath = CurrentDevicePath;
|
||||
Temp = NULL;
|
||||
|
||||
while (!EfiIsDevicePathEnd (CurrentDevicePath)) {
|
||||
while (!IsDevicePathEnd (CurrentDevicePath)) {
|
||||
|
||||
CurrentLink = RootBridge->ChildList.ForwardLink;
|
||||
Node.DevPath = CurrentDevicePath;
|
||||
|
@ -1121,14 +1121,14 @@ GetHpcPciAddressFromRootBridge (
|
|||
|
||||
}
|
||||
|
||||
CurrentDevicePath = EfiNextDevicePathNode (CurrentDevicePath);
|
||||
CurrentDevicePath = NextDevicePathNode (CurrentDevicePath);
|
||||
}
|
||||
|
||||
if (MisMatch) {
|
||||
|
||||
CurrentDevicePath = EfiNextDevicePathNode (CurrentDevicePath);
|
||||
CurrentDevicePath = NextDevicePathNode (CurrentDevicePath);
|
||||
|
||||
if (EfiIsDevicePathEnd (CurrentDevicePath)) {
|
||||
if (IsDevicePathEnd (CurrentDevicePath)) {
|
||||
*PciAddress = EFI_PCI_ADDRESS (RootBridge->BusNumber, Node.Pci->Device, Node.Pci->Function, 0);
|
||||
return EFI_SUCCESS;
|
||||
}
|
||||
|
|
|
@ -55,6 +55,7 @@
|
|||
SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
|
||||
S3Lib|IntelFrameworkModulePkg/Library/PeiS3Lib/PeiS3Lib.inf
|
||||
RecoveryLib|IntelFrameworkModulePkg/Library/PeiRecoveryLib/PeiRecoveryLib.inf
|
||||
DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
|
||||
|
||||
[LibraryClasses.common.PEIM]
|
||||
HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
|
||||
|
|
|
@ -60,36 +60,6 @@ InternalReportStatusCode (
|
|||
}
|
||||
|
||||
|
||||
/**
|
||||
Computes and returns the size, in bytes, of a device path.
|
||||
|
||||
@param DevicePath A pointer to a device path.
|
||||
|
||||
@return The size, in bytes, of DevicePath.
|
||||
|
||||
**/
|
||||
UINTN
|
||||
InternalReportStatusCodeDevicePathSize (
|
||||
IN CONST EFI_DEVICE_PATH_PROTOCOL *DevicePath
|
||||
)
|
||||
{
|
||||
CONST EFI_DEVICE_PATH_PROTOCOL *Start;
|
||||
|
||||
//
|
||||
// Search for the end of the device path structure
|
||||
//
|
||||
Start = DevicePath;
|
||||
while (!EfiIsDevicePathEnd (DevicePath)) {
|
||||
DevicePath = EfiNextDevicePathNode (DevicePath);
|
||||
}
|
||||
|
||||
//
|
||||
// Subtract the start node from the end node and add in the size of the end node
|
||||
//
|
||||
return ((UINTN) DevicePath - (UINTN) Start) + DevicePathNodeLength (DevicePath);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
Converts a status code to an 8-bit POST code value.
|
||||
|
||||
|
@ -340,12 +310,12 @@ ReportStatusCodeWithDevicePath (
|
|||
)
|
||||
{
|
||||
ASSERT (DevicePath != NULL);
|
||||
return ReportStatusCodeWithExtendedData (
|
||||
Type,
|
||||
Value,
|
||||
(VOID *)DevicePath,
|
||||
InternalReportStatusCodeDevicePathSize (DevicePath)
|
||||
);
|
||||
|
||||
//
|
||||
// this function can *not* be implemented for BASE library.
|
||||
//
|
||||
ASSERT (FALSE);
|
||||
return EFI_UNSUPPORTED;
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -49,7 +49,7 @@
|
|||
UefiBootServicesTableLib
|
||||
DebugLib
|
||||
UefiRuntimeServicesTableLib
|
||||
|
||||
DevicePathLib
|
||||
|
||||
[Guids]
|
||||
gEfiStatusCodeSpecificDataGuid # ALWAYS_CONSUMED
|
||||
|
|
|
@ -86,8 +86,8 @@ InternalReportStatusCodeDevicePathSize (
|
|||
// Search for the end of the device path structure
|
||||
//
|
||||
Start = DevicePath;
|
||||
while (!EfiIsDevicePathEnd (DevicePath)) {
|
||||
DevicePath = EfiNextDevicePathNode (DevicePath);
|
||||
while (!IsDevicePathEnd (DevicePath)) {
|
||||
DevicePath = NextDevicePathNode (DevicePath);
|
||||
}
|
||||
|
||||
//
|
||||
|
|
|
@ -24,6 +24,7 @@
|
|||
#include <Library/BaseMemoryLib.h>
|
||||
#include <Library/PcdLib.h>
|
||||
#include <Library/UefiRuntimeServicesTableLib.h>
|
||||
#include <Library/DevicePathLib.h>
|
||||
|
||||
#include <Guid/StatusCodeDataTypeId.h>
|
||||
#include <Protocol/StatusCode.h>
|
||||
|
|
|
@ -88,8 +88,8 @@ InternalReportStatusCodeDevicePathSize (
|
|||
// Search for the end of the device path structure
|
||||
//
|
||||
Start = DevicePath;
|
||||
while (!EfiIsDevicePathEnd (DevicePath)) {
|
||||
DevicePath = EfiNextDevicePathNode (DevicePath);
|
||||
while (!IsDevicePathEnd (DevicePath)) {
|
||||
DevicePath = NextDevicePathNode (DevicePath);
|
||||
}
|
||||
|
||||
//
|
||||
|
|
|
@ -24,6 +24,7 @@
|
|||
#include <Library/PcdLib.h>
|
||||
#include <Library/UefiRuntimeServicesTableLib.h>
|
||||
#include <Library/UefiBootServicesTableLib.h>
|
||||
#include <Library/DevicePathLib.h>
|
||||
|
||||
#include <Guid/StatusCodeDataTypeId.h>
|
||||
#include <Protocol/StatusCode.h>
|
||||
|
|
Loading…
Reference in New Issue