From e0c2cc6f8975adde2c8605ae7fd76237bbcc7539 Mon Sep 17 00:00:00 2001 From: andrewfish Date: Thu, 7 Apr 2011 21:50:16 +0000 Subject: [PATCH] Fix Xcode, clang, and ARM build and link issues. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11513 6f19259b-4bc3-4df7-8a09-765794883524 --- .../Library/UefiShellDebug1CommandsLib/Dblk.c | 2 +- .../Library/UefiShellDebug1CommandsLib/Dmem.c | 28 ++-- .../UefiShellDebug1CommandsLib/EditTitleBar.c | 2 + .../HexEdit/BufferImage.c | 21 ++- .../HexEdit/HexEdit.c | 5 +- .../HexEdit/MainHexEditor.c | 4 + .../Library/UefiShellDebug1CommandsLib/Mm.c | 4 +- .../SmbiosView/PrintInfo.c | 136 +++++++++--------- .../UefiShellNetwork1CommandsLib/Ia32/Tsc.c | 28 ---- .../UefiShellNetwork1CommandsLib/Ipf/Itc.c | 28 ---- .../UefiShellNetwork1CommandsLib/Ping.c | 37 +++-- .../UefiShellNetwork1CommandsLib.inf | 9 -- .../UefiShellNetwork1CommandsLib/X64/Tsc.c | 28 ---- ShellPkg/ShellPkg.dsc | 11 +- 14 files changed, 149 insertions(+), 194 deletions(-) delete mode 100644 ShellPkg/Library/UefiShellNetwork1CommandsLib/Ia32/Tsc.c delete mode 100644 ShellPkg/Library/UefiShellNetwork1CommandsLib/Ipf/Itc.c delete mode 100644 ShellPkg/Library/UefiShellNetwork1CommandsLib/X64/Tsc.c diff --git a/ShellPkg/Library/UefiShellDebug1CommandsLib/Dblk.c b/ShellPkg/Library/UefiShellDebug1CommandsLib/Dblk.c index 4e49d2120b..580f4adc29 100644 --- a/ShellPkg/Library/UefiShellDebug1CommandsLib/Dblk.c +++ b/ShellPkg/Library/UefiShellDebug1CommandsLib/Dblk.c @@ -41,7 +41,7 @@ DisplayTheBlocks( ShellStatus = SHELL_SUCCESS; - Status = gBS->LocateDevicePath(&gEfiBlockIoProtocolGuid, &((EFI_DEVICE_PATH_PROTOCOL *)DevPath), &BlockIoHandle); + Status = gBS->LocateDevicePath(&gEfiBlockIoProtocolGuid, (EFI_DEVICE_PATH_PROTOCOL **)&DevPath, &BlockIoHandle); if (EFI_ERROR(Status)) { return (SHELL_NOT_FOUND); } diff --git a/ShellPkg/Library/UefiShellDebug1CommandsLib/Dmem.c b/ShellPkg/Library/UefiShellDebug1CommandsLib/Dmem.c index 0229450528..dfee96bb29 100644 --- a/ShellPkg/Library/UefiShellDebug1CommandsLib/Dmem.c +++ b/ShellPkg/Library/UefiShellDebug1CommandsLib/Dmem.c @@ -68,12 +68,12 @@ DisplayMmioMemory( Buffer = AllocateZeroPool(Size); ASSERT(Buffer != NULL); - Status = PciRbIo->Mem.Read(PciRbIo, EfiPciWidthUint8, (UINT64)Address, Size, Buffer); + Status = PciRbIo->Mem.Read(PciRbIo, EfiPciWidthUint8, (UINT64)(UINTN)Address, Size, Buffer); if (EFI_ERROR(Status)) { ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_GEN_PCIRBIO_ER), gShellDebug1HiiHandle, Status); ShellStatus = SHELL_NOT_FOUND; } else { - ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_DMEM_MMIO_HEADER_ROW), gShellDebug1HiiHandle, (UINT64)Address, Size); + ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_DMEM_MMIO_HEADER_ROW), gShellDebug1HiiHandle, (UINT64)(UINTN)Address, Size); DumpHex(2,0,Size,Buffer); } @@ -167,7 +167,7 @@ ShellCommandRunDmem ( if (ShellStatus == SHELL_SUCCESS) { if (!ShellCommandLineGetFlag(Package, L"-mmio")) { - ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_DMEM_HEADER_ROW), gShellDebug1HiiHandle, (UINT64)Address, Size); + ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_DMEM_HEADER_ROW), gShellDebug1HiiHandle, (UINT64)(UINTN)Address, Size); DumpHex(2,0,(UINTN)Size,Address); if (Address == (VOID*)gST) { Acpi20TableAddress = 0; @@ -177,36 +177,36 @@ ShellCommandRunDmem ( MpsTableAddress = 0; for (TableWalker = 0 ; TableWalker < gST->NumberOfTableEntries ; TableWalker++) { if (CompareGuid(&gST->ConfigurationTable[TableWalker].VendorGuid, &gEfiAcpi20TableGuid)) { - Acpi20TableAddress = (UINT64)gST->ConfigurationTable[TableWalker].VendorTable; + Acpi20TableAddress = (UINT64)(UINTN)gST->ConfigurationTable[TableWalker].VendorTable; continue; } if (CompareGuid(&gST->ConfigurationTable[TableWalker].VendorGuid, &gEfiAcpi10TableGuid)) { - AcpiTableAddress = (UINT64)gST->ConfigurationTable[TableWalker].VendorTable; + AcpiTableAddress = (UINT64)(UINTN)gST->ConfigurationTable[TableWalker].VendorTable; continue; } if (CompareGuid(&gST->ConfigurationTable[TableWalker].VendorGuid, &gEfiSalSystemTableGuid)) { - SalTableAddress = (UINT64)gST->ConfigurationTable[TableWalker].VendorTable; + SalTableAddress = (UINT64)(UINTN)gST->ConfigurationTable[TableWalker].VendorTable; continue; } if (CompareGuid(&gST->ConfigurationTable[TableWalker].VendorGuid, &gEfiSmbiosTableGuid)) { - SmbiosTableAddress = (UINT64)gST->ConfigurationTable[TableWalker].VendorTable; + SmbiosTableAddress = (UINT64)(UINTN)gST->ConfigurationTable[TableWalker].VendorTable; continue; } if (CompareGuid(&gST->ConfigurationTable[TableWalker].VendorGuid, &gEfiMpsTableGuid)) { - MpsTableAddress = (UINT64)gST->ConfigurationTable[TableWalker].VendorTable; + MpsTableAddress = (UINT64)(UINTN)gST->ConfigurationTable[TableWalker].VendorTable; continue; } } ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_DMEM_SYSTEM_TABLE), gShellDebug1HiiHandle, - (UINT64)Address, + (UINT64)(UINTN)Address, gST->Hdr.HeaderSize, gST->Hdr.Revision, - (UINT64)gST->ConIn, - (UINT64)gST->ConOut, - (UINT64)gST->StdErr, - (UINT64)gST->RuntimeServices, - (UINT64)gST->BootServices, + (UINT64)(UINTN)gST->ConIn, + (UINT64)(UINTN)gST->ConOut, + (UINT64)(UINTN)gST->StdErr, + (UINT64)(UINTN)gST->RuntimeServices, + (UINT64)(UINTN)gST->BootServices, SalTableAddress, AcpiTableAddress, Acpi20TableAddress, diff --git a/ShellPkg/Library/UefiShellDebug1CommandsLib/EditTitleBar.c b/ShellPkg/Library/UefiShellDebug1CommandsLib/EditTitleBar.c index 3d818b3509..08d01ab09c 100644 --- a/ShellPkg/Library/UefiShellDebug1CommandsLib/EditTitleBar.c +++ b/ShellPkg/Library/UefiShellDebug1CommandsLib/EditTitleBar.c @@ -188,6 +188,8 @@ MainTitleBarRefresh ( ASSERT(FALSE); case FileTypeFileBuffer: break; + default: + break; } // // print modified field diff --git a/ShellPkg/Library/UefiShellDebug1CommandsLib/HexEdit/BufferImage.c b/ShellPkg/Library/UefiShellDebug1CommandsLib/HexEdit/BufferImage.c index 469642245d..57c4a9c739 100644 --- a/ShellPkg/Library/UefiShellDebug1CommandsLib/HexEdit/BufferImage.c +++ b/ShellPkg/Library/UefiShellDebug1CommandsLib/HexEdit/BufferImage.c @@ -176,12 +176,15 @@ HBufferImageBackup ( case FileTypeMemBuffer: HMemImageBackup (); break; + + default: + break; } return EFI_SUCCESS; } -/** +/** Free all the lines in HBufferImage. Fields affected: Lines @@ -728,7 +731,7 @@ HBufferImageRestorePosition ( return EFI_SUCCESS; } -/** +/** Refresh function for HBufferImage. @retval EFI_SUCCESS The operation was successful. @@ -944,6 +947,10 @@ HBufferImageRead ( case FileTypeMemBuffer: Status = HMemImageRead (MemOffset, MemSize, Recover); break; + + default: + Status = EFI_NOT_FOUND; + break; } if (EFI_ERROR (Status)) { @@ -1007,6 +1014,10 @@ HBufferImageSave ( case FileTypeMemBuffer: Status = HMemImageSave (MemOffset, MemSize); break; + + default: + Status = EFI_NOT_FOUND; + break; } if (EFI_ERROR (Status)) { @@ -1016,7 +1027,7 @@ HBufferImageSave ( return Status; } -/** +/** Create a new line and append it to the line list. Fields affected: NumLines @@ -1063,7 +1074,7 @@ HBufferImageCreateLine ( return Line; } -/** +/** Free the current image. @retval EFI_SUCCESS The operation was successful. @@ -1081,7 +1092,7 @@ HBufferImageFree ( return EFI_SUCCESS; } -/** +/** change char to int value based on Hex. @param[in] Char The input char. diff --git a/ShellPkg/Library/UefiShellDebug1CommandsLib/HexEdit/HexEdit.c b/ShellPkg/Library/UefiShellDebug1CommandsLib/HexEdit/HexEdit.c index 11a11ee970..1f5e1c908d 100644 --- a/ShellPkg/Library/UefiShellDebug1CommandsLib/HexEdit/HexEdit.c +++ b/ShellPkg/Library/UefiShellDebug1CommandsLib/HexEdit/HexEdit.c @@ -170,7 +170,7 @@ ShellCommandRunHexEdit ( } else if (WhatToDo == FileTypeFileBuffer && ShellGetCurrentDir(NULL) == NULL) { ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_GEN_NO_CWD), gShellDebug1HiiHandle); ShellStatus = SHELL_INVALID_PARAMETER; - } + } if (ShellStatus == SHELL_SUCCESS) { // @@ -223,6 +223,9 @@ ShellCommandRunHexEdit ( ); break; + default: + Status = EFI_NOT_FOUND; + break; } if (!EFI_ERROR (Status)) { HMainEditorRefresh (); diff --git a/ShellPkg/Library/UefiShellDebug1CommandsLib/HexEdit/MainHexEditor.c b/ShellPkg/Library/UefiShellDebug1CommandsLib/HexEdit/MainHexEditor.c index 73fa4c238d..ccd73a9882 100644 --- a/ShellPkg/Library/UefiShellDebug1CommandsLib/HexEdit/MainHexEditor.c +++ b/ShellPkg/Library/UefiShellDebug1CommandsLib/HexEdit/MainHexEditor.c @@ -2164,6 +2164,10 @@ HMainEditorKeyInput ( case FileTypeMemBuffer: OldSize = HBufferImage.MemImage->Size; break; + + default: + OldSize = 0; + break; } if (!LengthChange) { diff --git a/ShellPkg/Library/UefiShellDebug1CommandsLib/Mm.c b/ShellPkg/Library/UefiShellDebug1CommandsLib/Mm.c index 28b62d05e7..5d9915cec8 100644 --- a/ShellPkg/Library/UefiShellDebug1CommandsLib/Mm.c +++ b/ShellPkg/Library/UefiShellDebug1CommandsLib/Mm.c @@ -36,7 +36,7 @@ STATIC CONST SHELL_PARAM_ITEM ParamList[] = { {NULL, TypeMax} }; -STATIC CONST UINT64 MaxNum[9] = { 0xff, 0xffff, 0xffffffff, 0xffffffffffffffff }; +STATIC CONST UINT64 MaxNum[9] = { 0xff, 0xffff, 0xffffffff, 0xffffffffffffffffULL }; /** Read some data into a buffer from memory. @@ -424,7 +424,7 @@ ShellCommandRunMm ( // if (AccessType == EfiPciEConfig) { SegmentNumber = (UINT32) RShiftU64 (Address, 36) & 0xff; - Address &= 0xfffffffff; + Address &= 0xfffffffffULL; } else { if (AccessType == EfiPciConfig) { SegmentNumber = (UINT32) RShiftU64 (Address, 32) & 0xff; diff --git a/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/PrintInfo.c b/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/PrintInfo.c index 3ae1eeaf7c..5e31283013 100644 --- a/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/PrintInfo.c +++ b/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/PrintInfo.c @@ -1807,21 +1807,21 @@ DisplayProcessorFamily2 ( Display processor voltage information. @param[in] Voltage The Voltage. - Bit 7 Set to 0, indicating 'legacy' mode for processor voltage - Bits 6:4 Reserved, must be zero - Bits 3:0 Voltage Capability. - A Set bit indicates that the voltage is supported. - Bit 0 - 5V - Bit 1 - 3.3V - Bit 2 - 2.9V - Bit 3 - Reserved, must be zero. - - Note: - Setting of multiple bits indicates the socket is configurable - If bit 7 is set to 1, the remaining seven bits of the field are set to - contain the processor's current voltage times 10. - For example, the field value for a processor voltage of 1.8 volts would be - 92h = 80h + (1.8 * 10) = 80h + 18 = 80h +12h. + Bit 7 Set to 0, indicating 'legacy' mode for processor voltage + Bits 6:4 Reserved, must be zero + Bits 3:0 Voltage Capability. + A Set bit indicates that the voltage is supported. + Bit 0 - 5V + Bit 1 - 3.3V + Bit 2 - 2.9V + Bit 3 - Reserved, must be zero. + + Note: + Setting of multiple bits indicates the socket is configurable + If bit 7 is set to 1, the remaining seven bits of the field are set to + contain the processor's current voltage times 10. + For example, the field value for a processor voltage of 1.8 volts would be + 92h = 80h + (1.8 * 10) = 80h + 18 = 80h +12h. @param[in] Option The option. **/ @@ -1876,19 +1876,19 @@ DisplayProcessorVoltage ( Display processor information. @param[in] Status The status. - Bit 7 Reserved, must be 0 - Bit 6 CPU Socket Populated - 1 - CPU Socket Populated - 0 - CPU Socket UnpopulatedBits - 5:3 Reserved, must be zero - Bits 2:0 CPU Status - 0h - Unknown - 1h - CPU Enabled - 2h - CPU Disabled by User via BIOS Setup - 3h - CPU Disabled By BIOS (POST Error) - 4h - CPU is Idle, waiting to be enabled. - 5-6h - Reserved - 7h - Other +Bit 7 Reserved, must be 0 +Bit 6 CPU Socket Populated + 1 - CPU Socket Populated + 0 - CPU Socket UnpopulatedBits + 5:3 Reserved, must be zero + Bits 2:0 CPU Status + 0h - Unknown + 1h - CPU Enabled + 2h - CPU Disabled by User via BIOS Setup + 3h - CPU Disabled By BIOS (POST Error) + 4h - CPU is Idle, waiting to be enabled. + 5-6h - Reserved + 7h - Other @param[in] Option The option **/ @@ -2225,7 +2225,7 @@ DisplaySystemBootStatus ( ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_RSVD_FUTURE_ASSIGNMENT), gShellDebug1HiiHandle); } else if (Parameter >= 128 && Parameter <= 191) { ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_VENDOR_OEM_SPECIFIC), gShellDebug1HiiHandle); - } else if (Parameter >= 192 && Parameter <= 255) { + } else if (Parameter >= 192) { ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_PRODUCT_SPEC_IMPLMENTATION), gShellDebug1HiiHandle); } else { ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_ERROR_VALUE), gShellDebug1HiiHandle); @@ -2271,23 +2271,23 @@ DisplaySBDSManufactureDate ( Display System Reset (Type 23) information. - Identifies the system-reset capabilities for the system. - Bits 7:6 Reserved for future assignment via this specification, set to 00b. - Bit 5 System contains a watchdog timer, either True (1) or False (0). - Bits 4:3 Boot Option on Limit. - Identifies the system action to be taken when the Reset Limit is reached, one of: - 00b Reserved, do not use. - 01b Operating system - 10b System utilities - 11b Do not rebootBits - 2:1 Boot Option. Indicates the action to be taken following a watchdog reset, one of: - 00b Reserved, do not use. - 01b Operating system - 10b System utilities - 11b Do not reboot - Bit 0 Status. - 1b The system reset is enabled by the user - 0b The system reset is not enabled by the user +Identifies the system-reset capabilities for the system. + Bits 7:6 Reserved for future assignment via this specification, set to 00b. + Bit 5 System contains a watchdog timer, either True (1) or False (0). + Bits 4:3 Boot Option on Limit. + Identifies the system action to be taken when the Reset Limit is reached, one of: + 00b Reserved, do not use. + 01b Operating system + 10b System utilities + 11b Do not rebootBits + 2:1 Boot Option. Indicates the action to be taken following a watchdog reset, one of: + 00b Reserved, do not use. + 01b Operating system + 10b System utilities + 11b Do not reboot + Bit 0 Status. + 1b The system reset is enabled by the user + 0b The system reset is not enabled by the user @param[in] Reset Reset @param[in] Option The option @@ -2375,28 +2375,28 @@ DisplaySystemResetCapabilities ( Display Hardware Security (Type 24) information. - Identifies the password and reset status for the system: - - Bits 7:6 Power-on Password Status, one of: - 00b Disabled - 01b Enabled - 10b Not Implemented - 11b Unknown - Bits 5:4 Keyboard Password Status, one of: - 00b Disabled - 01b Enabled - 10b Not Implemented - 11b Unknown - Bits 3:2 Administrator Password Status, one of: - 00b Disabled - 01b Enabled - 10b Not Implemented - 11b Unknown - Bits 1:0 Front Panel Reset Status, one of: - 00b Disabled - 01b Enabled - 10b Not Implemented - 11b Unknown +Identifies the password and reset status for the system: + +Bits 7:6 Power-on Password Status, one of: + 00b Disabled + 01b Enabled + 10b Not Implemented + 11b Unknown +Bits 5:4 Keyboard Password Status, one of: + 00b Disabled + 01b Enabled + 10b Not Implemented + 11b Unknown +Bits 3:2 Administrator Password Status, one of: + 00b Disabled + 01b Enabled + 10b Not Implemented + 11b Unknown +Bits 1:0 Front Panel Reset Status, one of: + 00b Disabled + 01b Enabled + 10b Not Implemented + 11b Unknown @param[in] Settings The device settings. @param[in] Option The device options. diff --git a/ShellPkg/Library/UefiShellNetwork1CommandsLib/Ia32/Tsc.c b/ShellPkg/Library/UefiShellNetwork1CommandsLib/Ia32/Tsc.c deleted file mode 100644 index e2eae99077..0000000000 --- a/ShellPkg/Library/UefiShellNetwork1CommandsLib/Ia32/Tsc.c +++ /dev/null @@ -1,28 +0,0 @@ -/** @file - The implement to read TSC in IA32 platform. - - Copyright (c) 2009 - 2010, Intel Corporation. All rights reserved.
- - This program and the accompanying materials - 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 - http://opensource.org/licenses/bsd-license.php. - - THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, - WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. - -**/ - -#include - -/** - Reads and returns the current value of the Time Stamp Counter (TSC). - - @return The current value of TSC. - -**/ -UINT64 -ReadTime () -{ - return AsmReadTsc (); -} diff --git a/ShellPkg/Library/UefiShellNetwork1CommandsLib/Ipf/Itc.c b/ShellPkg/Library/UefiShellNetwork1CommandsLib/Ipf/Itc.c deleted file mode 100644 index 131e5c0e30..0000000000 --- a/ShellPkg/Library/UefiShellNetwork1CommandsLib/Ipf/Itc.c +++ /dev/null @@ -1,28 +0,0 @@ -/** @file - The implement to read ITC in IA64 platform. - - Copyright (c) 2009 - 2010, Intel Corporation. All rights reserved.
- - This program and the accompanying materials - 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 - http://opensource.org/licenses/bsd-license.php. - - THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, - WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. - -**/ - -#include - -/** - Reads and returns the current value of the Interval Timer Counter Register (ITC). - - @return The current value of ITC. - -**/ -UINT64 -ReadTime () -{ - return AsmReadItc (); -} diff --git a/ShellPkg/Library/UefiShellNetwork1CommandsLib/Ping.c b/ShellPkg/Library/UefiShellNetwork1CommandsLib/Ping.c index ab7658c45b..10d38d8022 100644 --- a/ShellPkg/Library/UefiShellNetwork1CommandsLib/Ping.c +++ b/ShellPkg/Library/UefiShellNetwork1CommandsLib/Ping.c @@ -185,11 +185,6 @@ NetChecksum ( @return The current value of the register. **/ -UINT64 -EFIAPI -ReadTime ( - VOID - ); STATIC CONST SHELL_PARAM_ITEM PingParamList[] = { { @@ -220,6 +215,32 @@ STATIC CONST SHELL_PARAM_ITEM PingParamList[] = { STATIC CONST CHAR16 *mDstString; STATIC CONST CHAR16 *mSrcString; STATIC UINT64 mFrequency = 0; +EFI_CPU_ARCH_PROTOCOL *gCpu = NULL; + +UINT64 +EFIAPI +ReadTime ( + VOID + ) +{ + static UINT64 CurrentTick = 0; + UINT64 TimerPeriod; + EFI_STATUS Status; + + ASSERT (gCpu != NULL); + + Status = gCpu->GetTimerValue (gCpu, 0, &CurrentTick, &TimerPeriod); + if (EFI_ERROR (Status)) { + // + // The WinntGetTimerValue will return EFI_UNSUPPORTED. Set the + // TimerPeriod by ourselves. + // + CurrentTick += 1000000; + } + + return CurrentTick; +} + /** Get and caculate the frequency in tick/ms. @@ -236,17 +257,15 @@ GetFrequency ( ) { EFI_STATUS Status; - EFI_CPU_ARCH_PROTOCOL *Cpu; UINT64 CurrentTick; UINT64 TimerPeriod; - Status = gBS->LocateProtocol (&gEfiCpuArchProtocolGuid, NULL, (VOID **) &Cpu); - + Status = gBS->LocateProtocol (&gEfiCpuArchProtocolGuid, NULL, (VOID **) &gCpu); if (EFI_ERROR (Status)) { return Status; } - Status = Cpu->GetTimerValue (Cpu, 0, &CurrentTick, &TimerPeriod); + Status = gCpu->GetTimerValue (gCpu, 0, &CurrentTick, &TimerPeriod); if (EFI_ERROR (Status)) { TimerPeriod = DEFAULT_TIMER_PERIOD; diff --git a/ShellPkg/Library/UefiShellNetwork1CommandsLib/UefiShellNetwork1CommandsLib.inf b/ShellPkg/Library/UefiShellNetwork1CommandsLib/UefiShellNetwork1CommandsLib.inf index 51dca82b48..3ff1676cde 100644 --- a/ShellPkg/Library/UefiShellNetwork1CommandsLib/UefiShellNetwork1CommandsLib.inf +++ b/ShellPkg/Library/UefiShellNetwork1CommandsLib/UefiShellNetwork1CommandsLib.inf @@ -30,15 +30,6 @@ Ping.c Ifconfig.c -[Sources.IA32] - Ia32/Tsc.c - -[Sources.X64] - X64/Tsc.c - -[Sources.IPF] - Ipf/Itc.c - [Packages] MdePkg/MdePkg.dec ShellPkg/ShellPkg.dec diff --git a/ShellPkg/Library/UefiShellNetwork1CommandsLib/X64/Tsc.c b/ShellPkg/Library/UefiShellNetwork1CommandsLib/X64/Tsc.c deleted file mode 100644 index b3e7bdbb96..0000000000 --- a/ShellPkg/Library/UefiShellNetwork1CommandsLib/X64/Tsc.c +++ /dev/null @@ -1,28 +0,0 @@ -/** @file - The implement to read TSC in X64 platform. - - Copyright (c) 2009 - 2010, Intel Corporation. All rights reserved.
- - This program and the accompanying materials - 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 - http://opensource.org/licenses/bsd-license.php. - - THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, - WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. - -**/ - -#include - -/** - Reads and returns the current value of Time Stamp Counter (TSC). - - @return The current value of TSC - -**/ -UINT64 -ReadTime () -{ - return AsmReadTsc (); -} diff --git a/ShellPkg/ShellPkg.dsc b/ShellPkg/ShellPkg.dsc index 516a09117f..b0e91da804 100644 --- a/ShellPkg/ShellPkg.dsc +++ b/ShellPkg/ShellPkg.dsc @@ -19,7 +19,7 @@ PLATFORM_VERSION = 0.50 DSC_SPECIFICATION = 0x00010006 OUTPUT_DIRECTORY = Build/Shell - SUPPORTED_ARCHITECTURES = IA32|IPF|X64|EBC + SUPPORTED_ARCHITECTURES = IA32|IPF|X64|EBC|ARM BUILD_TARGETS = DEBUG|RELEASE SKUID_IDENTIFIER = DEFAULT @@ -49,6 +49,15 @@ PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf +[LibraryClasses.ARM] + # + # It is not possible to prevent the ARM compiler for generic intrinsic functions. + # This library provides the instrinsic functions generate by a given compiler. + # [LibraryClasses.ARM] and NULL mean link this library into all ARM images. + # + NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf + + [PcdsFixedAtBuild.common] [Components.common] -- 2.39.2