diff options
author | andrewfish <andrewfish@6f19259b-4bc3-4df7-8a09-765794883524> | 2010-04-21 22:04:35 +0000 |
---|---|---|
committer | andrewfish <andrewfish@6f19259b-4bc3-4df7-8a09-765794883524> | 2010-04-21 22:04:35 +0000 |
commit | d39eb83cc5ce2147264e2ea3566c4dbf7eb9888d (patch) | |
tree | b606874083dc56330d7b1650599d620f39f0b1df /BeagleBoardPkg | |
parent | d02b28d736c19b9a59690008e56c63e839fcf28f (diff) | |
download | edk2-platforms-d39eb83cc5ce2147264e2ea3566c4dbf7eb9888d.tar.xz |
Add some ldm/vldm optimized CopyMem routines. Add performance macros to BDS
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10388 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'BeagleBoardPkg')
-rw-r--r-- | BeagleBoardPkg/Bds/BdsEntry.c | 4 | ||||
-rw-r--r-- | BeagleBoardPkg/Bds/BdsEntry.h | 1 | ||||
-rw-r--r-- | BeagleBoardPkg/Bds/FirmwareVolume.c | 1 | ||||
-rw-r--r-- | BeagleBoardPkg/BeagleBoardPkg.dsc | 5 | ||||
-rw-r--r-- | BeagleBoardPkg/Library/EblCmdLib/EblCmdLib.c | 14 |
5 files changed, 23 insertions, 2 deletions
diff --git a/BeagleBoardPkg/Bds/BdsEntry.c b/BeagleBoardPkg/Bds/BdsEntry.c index 05afd190dd..025de152f5 100644 --- a/BeagleBoardPkg/Bds/BdsEntry.c +++ b/BeagleBoardPkg/Bds/BdsEntry.c @@ -74,6 +74,10 @@ BdsEntry ( EFI_DEVICE_PATH_PROTOCOL *LoadImageDevicePath;
EFI_DEVICE_PATH_PROTOCOL *FileSystemDevicePath;
+ PERF_END (NULL, "DXE", NULL, 0);
+ PERF_START (NULL, "BDS", NULL, 0);
+
+
//
// Now do the EFI stuff
//
diff --git a/BeagleBoardPkg/Bds/BdsEntry.h b/BeagleBoardPkg/Bds/BdsEntry.h index 21e49498cf..20a9f9d5cc 100644 --- a/BeagleBoardPkg/Bds/BdsEntry.h +++ b/BeagleBoardPkg/Bds/BdsEntry.h @@ -30,6 +30,7 @@ #include <Library/PcdLib.h>
#include <Library/MemoryAllocationLib.h>
#include <Library/PrintLib.h>
+#include <Library/PerformanceLib.h>
#include <Protocol/Bds.h>
#include <Protocol/SerialIo.h>
diff --git a/BeagleBoardPkg/Bds/FirmwareVolume.c b/BeagleBoardPkg/Bds/FirmwareVolume.c index 692e2a56a6..ca3cd38376 100644 --- a/BeagleBoardPkg/Bds/FirmwareVolume.c +++ b/BeagleBoardPkg/Bds/FirmwareVolume.c @@ -141,6 +141,7 @@ LoadPeCoffSectionFromFv ( Status = gBS->LoadImage (TRUE, gImageHandle, DevicePath, NULL, 0, &ImageHandle);
if (!EFI_ERROR (Status)) {
+ PERF_END (NULL, "BDS", NULL, 0);
Status = gBS->StartImage (ImageHandle, NULL, NULL);
}
diff --git a/BeagleBoardPkg/BeagleBoardPkg.dsc b/BeagleBoardPkg/BeagleBoardPkg.dsc index 3394ed2607..ca2b0848c8 100644 --- a/BeagleBoardPkg/BeagleBoardPkg.dsc +++ b/BeagleBoardPkg/BeagleBoardPkg.dsc @@ -43,7 +43,7 @@ MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf BaseLib|MdePkg/Library/BaseLib/BaseLib.inf - BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf + BaseMemoryLib|ArmPkg/Library/BaseMemoryLibStm/BaseMemoryLibStm.inf EfiResetSystemLib|BeagleBoardPkg/Library/ResetSystemLib/ResetSystemLib.inf @@ -122,6 +122,9 @@ PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf HobLib|EmbeddedPkg/Library/PrePiHobLib/PrePiHobLib.inf PerformanceLib|MdeModulePkg/Library/PeiPerformanceLib/PeiPerformanceLib.inf + + # 1/123 faster than Stm or Vstm version + BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf [LibraryClasses.common.PEI_CORE] PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf diff --git a/BeagleBoardPkg/Library/EblCmdLib/EblCmdLib.c b/BeagleBoardPkg/Library/EblCmdLib/EblCmdLib.c index 413bb47fc2..985e78a54d 100644 --- a/BeagleBoardPkg/Library/EblCmdLib/EblCmdLib.c +++ b/BeagleBoardPkg/Library/EblCmdLib/EblCmdLib.c @@ -156,15 +156,27 @@ ImageHandleToPdbFileName ( {
EFI_STATUS Status;
EFI_LOADED_IMAGE_PROTOCOL *LoadedImage;
+ CHAR8 *Pdb;
+ CHAR8 *StripLeading;
Status = gBS->HandleProtocol (Handle, &gEfiLoadedImageProtocolGuid, (VOID **)&LoadedImage);
if (EFI_ERROR (Status)) {
return "";
}
- return PeCoffLoaderGetPdbPointer (LoadedImage->ImageBase);
+ Pdb = PeCoffLoaderGetPdbPointer (LoadedImage->ImageBase);
+ StripLeading = AsciiStrStr (Pdb, "\\ARM\\");
+ if (StripLeading == NULL) {
+ StripLeading = AsciiStrStr (Pdb, "/ARM/");
+ if (StripLeading == NULL) {
+ return Pdb;
+ }
+ }
+ // Hopefully we hacked off the unneeded part
+ return (StripLeading + 5);
}
+
CHAR8 *mTokenList[] = {
"SEC",
"PEI",
|