summaryrefslogtreecommitdiff
path: root/ArmPlatformPkg/Library
AgeCommit message (Collapse)Author
2014-02-24ARM Packages: Include 'AsmMacroIoLibV8.h' instead of the 32bit versionOlivier Martin
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15256 6f19259b-4bc3-4df7-8a09-765794883524
2014-01-17Add VOID MigratePeiServicesTablePointer() to fix'Deprecated declaration'.Gao, Liming
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Gao, Liming <liming.gao@intel.com> Reviewed-By: Olivier Martin <Olivier.Martin@arm.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15139 6f19259b-4bc3-4df7-8a09-765794883524
2014-01-15ArmPlatformPkg/PeiServicesTablePointerLib: Update PeiServicesTablePointerLib ↵Gao, Liming
instance to add new API MigratePeiServicesTablePointer() Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Gao, Liming <liming.gao@intel.com> Reviewed-By: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15120 6f19259b-4bc3-4df7-8a09-765794883524
2014-01-10ArmPkg/ArmPkg.dec: Redefined PcdSystemMemory(Base|Size) as UINT64Olivier Martin
The System Memory region might be out of the 32-bit memory space. This change has been validated on the FVP AArch64 model using 4GB of DRAM at 0x8_0000_0000: - # System Memory (2GB) - gArmTokenSpaceGuid.PcdSystemMemoryBase|0x80000000 - gArmTokenSpaceGuid.PcdSystemMemorySize|0x80000000 + # System Memory (4GB) + gArmTokenSpaceGuid.PcdSystemMemoryBase|0x800000000 + gArmTokenSpaceGuid.PcdSystemMemorySize|0x100000000 EFI Shell and Linux kernel boot successfully. Note: This change has not been validated on AArch32. I expect some early assembly code to not work. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15093 6f19259b-4bc3-4df7-8a09-765794883524
2013-12-06ArmPlatformPkg/ArmPlatformStackLib: Do not directly use PcdArmPrimaryCoreOlivier Martin
To make the code platform independent we should not use PcdArmPrimaryCore in libraries other than the platform specific libraries. Some platforms allow to change the primary core with external registers. These platforms do not use PcdArmPrimaryCore to identify the primary CPU. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14938 6f19259b-4bc3-4df7-8a09-765794883524
2013-12-06ArmPlatformPkg: Fix and Implement ArmPlatformGetPrimaryCoreMpIdOlivier Martin
- Used correct PCD - Implement the function for AArch64, BeagleBoard, CTA15A7 Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14937 6f19259b-4bc3-4df7-8a09-765794883524
2013-11-28ARM Packages: Removed 'Chipset/ArmV7.h' inclusion from the non-ARMv7 ↵Olivier Martin
specific files Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14909 6f19259b-4bc3-4df7-8a09-765794883524
2013-10-21ArmPlatformPkg/PL031RealTimeClockLib: Fixed the conditions in LibSetTime()Olivier Martin
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14794 6f19259b-4bc3-4df7-8a09-765794883524
2013-07-26ArmPkg,ArmPlatformPkg: Free memory allocated by Get.*SpaceMap()Olivier Martin
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14507 6f19259b-4bc3-4df7-8a09-765794883524
2013-07-18ArmPlatformPkg: Added Aarch64 supportHarry Liebel
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Harry Liebel <Harry.Liebel@arm.com> Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14489 6f19259b-4bc3-4df7-8a09-765794883524
2013-05-15EmbeddedPkg/SerialPortExtLib.h: Changed SerialPortSetAttributes() prototype ↵oliviermartin
to return the set value(s) To be compliant with the UEFI specification it is required to update SERIAL_IO_MODE with the values set. This prototype change allows to get the value used inside SerialPortSetAttributes(). Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Olivier Martin <Olivier.martin@arm.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14365 6f19259b-4bc3-4df7-8a09-765794883524
2013-05-10ArmPlatform/ArmPlatformLib: Introduced ArmPlatformPeiBootAction()oliviermartin
This function allows platform to do any specific actions prior to the start the PEI phase. For instance, this function could be used by some platforms to initialize clocks that are required at the early stage of the PEI phase. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Olivier Martin <olivier.martin@arm.com> Acked-by: Ryan Harkin <ryan.harkin@linaro.org> Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14347 6f19259b-4bc3-4df7-8a09-765794883524
2013-05-10ArmPlatformPkg/ArmPlatformLib: Added ArmPlatformGetPrimaryCoreMpId()oliviermartin
ArmPlatformGetPrimaryCoreMpId returns the MPID of the primary core. The primary core might not be known at build time (eg: the platform allows the boot CPU to be changed through board config). This function is used during the secondary core stack initialization to know the position of the secondary core in the SoC. A secondary core that is at the position N, with N greater than the primary core position, will be at the position N-1 in the list of secondary stacks (the primary core has its own separate bigger stack). Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Olivier Martin <olivier.martin@arm.com> Acked-by: Ryan Harkin <ryan.harkin@linaro.org> Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14345 6f19259b-4bc3-4df7-8a09-765794883524
2013-05-10ArmPlatformPkg/ArmPlatformLib: Added support for ArmPlatformIsPrimaryCore()oliviermartin
Checking if a core if the primary/boot core used to be done with the macro IS_PRIMARY_CORE(). Some platforms exposes configuration registers to change the primary core. Replacing the macro IS_PRIMARY_CORE() by ArmPlatformIsPrimaryCore() allows some flexibility in the way to check the primary core. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Olivier Martin <olivier.martin@arm.com> Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org> Acked-by: Ryan Harkin <ryan.harkin@linaro.org> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14344 6f19259b-4bc3-4df7-8a09-765794883524
2013-04-14ArmPlatformPkg: Remove an unused function.oliviermartin
ArmPlatformGetAdditionalSystemMemory() function wasn't used anywhere in UEFI. This patch deletes it. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14270 6f19259b-4bc3-4df7-8a09-765794883524
2013-03-12ArmPlatformPkg: Moved ARMv7 specific files to a 'Arm' subdirectoryoliviermartin
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14182 6f19259b-4bc3-4df7-8a09-765794883524
2013-03-12ArmPkg: Introduce GetGlobalEnvironmentVariable() function.oliviermartin
Rename GetEnvironmentVariable() function into GetGlobalEnvironmentVariable(). GetEnvironmentVariable() function sill exists but caller must now pass a Guid. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14176 6f19259b-4bc3-4df7-8a09-765794883524
2013-03-12ArmPlatformPkg/ArmPlatformLibNull: Fixed buildoliviermartin
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14174 6f19259b-4bc3-4df7-8a09-765794883524
2013-03-12EmbeddedPkg: Introduced a separate SerialPortExtLib libraryoliviermartin
Formerly only the header was defined and it was expecting the SerialPortExtLib interface to be implemented by SerialPortLib if supported. This behaviour was not conform to the EDK2 framework. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14173 6f19259b-4bc3-4df7-8a09-765794883524
2013-03-06ArmPkg: Move ArmSmcLib from ArmPlatformLib to ArmPkgoliviermartin
A ArmSmcLib Null implementation has also been added for CPU without the ARM Security Extension (Trustzone support). Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14164 6f19259b-4bc3-4df7-8a09-765794883524
2013-01-28ArmPlatformPkg/PL031RealTimeClockLib: Set PL031_{TimeZone,Daylight} UEFI ↵oliviermartin
variables as local PL031_TimeZone and PL031_Daylight are not global variables as defined by UEFI specification Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14107 6f19259b-4bc3-4df7-8a09-765794883524
2013-01-28ArmPlatformPkg: Fixed unsigned type to be architecture independentoliviermartin
Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14106 6f19259b-4bc3-4df7-8a09-765794883524
2013-01-28ArmPlatformPkg/ArmPlatformLibNull: Added template for ↵oliviermartin
ArmPlatformGetCorePosition() Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14105 6f19259b-4bc3-4df7-8a09-765794883524
2013-01-25ARM Packages: Fixed line endingsoliviermartin
This large code change only modifies the line endings to be CRLF to be compliant with the EDK2 coding convention document. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14088 6f19259b-4bc3-4df7-8a09-765794883524
2012-09-28ArmPlatformPkg/ArmPlatformStackLib: Introduced helper library to initialize ↵oliviermartin
stacks The new functions are: - ArmPlatformStackSet(IN UINTN StackBase, IN UINTN MpId, IN UINTN PrimaryStackSize, IN UINTN SecondaryStackSize); - ArmPlatformStackSetPrimary(IN UINTN StackBase, IN UINTN MpId, IN UINTN PrimaryStackSize, IN UINTN SecondaryStackSize); - ArmPlatformStackSetSecondary(IN UINTN StackBase, IN UINTN MpId, IN UINTN PrimaryStackSize, IN UINTN SecondaryStackSize); The stack topology can be changed by implementing a new ArmPlatformStackLib Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13774 6f19259b-4bc3-4df7-8a09-765794883524
2012-09-28EmbeddedPkg: Introduced 'SerialPortExtLib.h'oliviermartin
EmbeddedPkg/SerialDxe was not allowing to set/get the control of the Serial connection because the needed functions were not exposed in SerialPortLib.h. This commit introduces an additional library to extend the SerialPort features. Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13773 6f19259b-4bc3-4df7-8a09-765794883524
2012-09-28ARM Packages: Moved ARM assembly files to 'Arm' subdirectoryoliviermartin
Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13772 6f19259b-4bc3-4df7-8a09-765794883524
2012-09-28ArmPlatformPkg/EblCmdLib: Added the command 'dumpfdt'oliviermartin
Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13771 6f19259b-4bc3-4df7-8a09-765794883524
2012-09-26ArmPlatformPkg/EblCmdLib: Fixed 'performance' commandoliviermartin
Added support for performance counter that counts up or down Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13747 6f19259b-4bc3-4df7-8a09-765794883524
2012-07-04ArmPkg: Fixed RVCT compiler warningsoliviermartin
Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13490 6f19259b-4bc3-4df7-8a09-765794883524
2012-05-02ArmPlatformPkg/DebugSecExtraActionLib: Added Warning comment to signal the ↵oliviermartin
DRAM must be inititalized at this stage Since the System Memory initialization has been moved inside ArmPlatformSecLib on some platforms, the use of this library could crash if the firmware engineer forgot to initialize the DRAM. This library 'patches' the DRAM to add an infinite loop. Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13262 6f19259b-4bc3-4df7-8a09-765794883524
2012-05-02ArmPlatformPkg: Introduced 'ArmPlatformSecLib'oliviermartin
The function only used in Secure Firmware used to be mixed with the Non-Secure/Normal functions in ArmPlatformLib. When the Secure Firmware was not required for some platforms (eg: BeagleBoard), these functions were empty functions. This new interface has been created to clean the ArmPlatformLib interface between the SEC and PEI phases. Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13260 6f19259b-4bc3-4df7-8a09-765794883524
2012-05-02ArmPkg/ArmGicLib: Replaced 'ArmGicAcknowledgeSgiFrom' by ↵oliviermartin
'ArmGicAcknowledgeInterrupt' The function 'ArmGicAcknowledgeSgiFrom' was actually acknowledging Interrupts (and not only SGIs). ArmPkg/ArmGicLib: Introduced the PCD PcdGicPrimaryCoreId This PCD defines the Id of the primary core in the GIC. Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13259 6f19259b-4bc3-4df7-8a09-765794883524
2012-05-02ArmPkg/ArmGicLib: Changed ArmGicSendSgiTo() to allow to send a specific SGIoliviermartin
Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13258 6f19259b-4bc3-4df7-8a09-765794883524
2012-05-02EmbeddedPkg/SerialDxe: Do not block UART when no data is available on the portoliviermartin
Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13255 6f19259b-4bc3-4df7-8a09-765794883524
2012-05-02ArmPkg/ArmLib: Added new functions to access ARM coprocessorsoliviermartin
Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13253 6f19259b-4bc3-4df7-8a09-765794883524
2012-05-02ARM Packages: Fixed th 'NS' (Non Secure) bit in the MMU page Table Descriptoroliviermartin
The 'NS' bit must only be set in Secure world to define the Non-Secure region of the Non-Secure World. This bit must not be set in Non-Secure World. Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13252 6f19259b-4bc3-4df7-8a09-765794883524
2012-05-02ArmPkg/PeCoffExtraActionLib: Enabled DS-5 command line when using ARM ↵oliviermartin
Toolchain v5 Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13251 6f19259b-4bc3-4df7-8a09-765794883524
2012-05-02ArmPlatformPkg/ArmPlatformGlobalVariableLib: Fixed calculation of ↵oliviermartin
GlobalVariableBase Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13248 6f19259b-4bc3-4df7-8a09-765794883524
2012-05-02ArmPlatformPkg/ArmPlatformGlobalVariableLib: Added new function ↵oliviermartin
ArmPlatformGetGlobalVariableAddress() This function returns the address of a Global Variable in the Global Variable Region. Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13246 6f19259b-4bc3-4df7-8a09-765794883524
2012-05-02ArmPlatformPkg: Renamed and Invoked earlier ArmPlatformNormalInitialize()oliviermartin
- ArmPlatformNormalInitialize() has been renamed into ArmPlatformInitialize() - Make the function be called at the early stage of the PEI phase as some platforms require their interconnects or clocks to be initialize before any access to Timers or UARTs. Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13245 6f19259b-4bc3-4df7-8a09-765794883524
2012-03-26ArmPlatformPkg/Sec: Allowed the Secondary Cores to set the Secure/Non Secure ↵oliviermartin
bits to their PPIs The GICD_IGROUPR0 is banked for each connected processor. It means the Non-Secure bits for the PPIs (Private Peripheral Interrupts) must be configured for every processor. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13135 6f19259b-4bc3-4df7-8a09-765794883524
2012-03-26ArmPlatformPkg/ArmSmcLib: Added helper library to make SMC call to the ↵oliviermartin
Secure World This library adds C-wrapper around the SMC instruction and allows to pass parameters to the Secure World. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13133 6f19259b-4bc3-4df7-8a09-765794883524
2012-03-26ArmPlatformPkg/ArmPlatformGlobalVariableLib: Fixed incorrect type castingoliviermartin
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13121 6f19259b-4bc3-4df7-8a09-765794883524
2012-02-29ArmPlatformPkg/PL011Uart: Allowed to change UART settings in its ↵oliviermartin
initialization function Because this driver can be used for different purposes (Terminal, Debug port, communication), its initialization function has been extended to accept additional settings. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13071 6f19259b-4bc3-4df7-8a09-765794883524
2012-02-28ArmPlatformPkg: Move the Secure Monitor initialization into a separate ↵oliviermartin
'ArmTrustedMonitorLib' library git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13059 6f19259b-4bc3-4df7-8a09-765794883524
2012-02-28ArmPlatformPkg: Minor code changes (comments, misspellings, coding stylei, ↵oliviermartin
line endings) - Fixed misspellings - Updated Copyright - Remove unused sections in INF file - Fixed incorrect commentsi - Fixed coding style - Fixed line endings (CRLR) git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13052 6f19259b-4bc3-4df7-8a09-765794883524
2012-02-27ArmPlatformPkg/ArmPlatformGlobalVariableLib: Added an assert to ensure the ↵oliviermartin
'VariableOffset' belongs to the GlobalVariable region git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13043 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-01ArmPlatform/PrePi: Fixed PrePi for MP Cores platform and Global Variable ↵oliviermartin
region settings git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12638 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-01ArmPlatformPkg: Remove ArmPlatformBootRemapping() function from the ↵oliviermartin
ArmPlatformLib Memory map remapping is a platform specific feature only enabled by some platforms. Instead of keeping this function empty for most platforms, the function has been removed. This feature can easily fit in any other ArmPlatformLib function. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12632 6f19259b-4bc3-4df7-8a09-765794883524