summaryrefslogtreecommitdiff
path: root/ArmPlatformPkg/Library
AgeCommit message (Collapse)Author
2011-09-22ArmPlatformPkg: Introduce ArmPlatformGlobalVariableLiboliviermartin
This library hides where the 'XIP' Global Variable are located in the memory. It is expected the Sec/PrePi modules define the Global Variable area through the GlobalVariable HOB. The ArmPlatformGlobalVariableLib library allows access to global variables by their offsets in this region. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12420 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-22ARM Packages: Rename PcdNormal* into Pcd* PCDsoliviermartin
The denomination 'Normal' was used to make reference to the 'Normal' or 'Non Secure' or 'Non Trusted' world. To avoid confusion, this prefix has been removed from PCDs to define the normal world. The PCDs explicitely related to the Secure/Trusted World continue to have the 'Sec' prefix. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12416 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-22ArmPlatformPkg: Introduce Primary core macrosoliviermartin
On MpCore system, the primary core can now be any core of the system. To identify the primary core, you can use 'gArmTokenSpaceGuid.PcdArmPrimaryCoreMask' and 'gArmTokenSpaceGuid.PcdArmPrimaryCore'. These PCDs by default use the ClusterId and CoreId to identify the core. And the primary core is defined as the ClusetrId=0 and CoreId=0. The helper macros are: IS_PRIMARY_CORE(MpId), GET_CORE_ID(MpId), GET_CLUSTER_ID(MpId), GET_CORE_POS(MpId), PRIMARY_CORE_ID. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12412 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-22ArmPkg: Renamed library 'PL390GicLib' into 'ArmGicLib'oliviermartin
This library is the interface for the ARM Generic Interrupt Controller Architecture Specification. ARM Platform can use any GIC controller (not necessary PL390 GIC). git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12411 6f19259b-4bc3-4df7-8a09-765794883524
2011-08-30ArmPlatformPkg: Fix ARM RealView EB and VE buildsoliviermartin
Tested with RVCTLINUX and ARMGCC toolchains. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12233 6f19259b-4bc3-4df7-8a09-765794883524
2011-08-18ArmPlatformPkg: Changed the reference base of the PI Global Pointer Offsetoliviermartin
Before the PI Global Pointer Offsets were refered to the top of the Global Pointer region (negative offset). After this commit the Global Pointer Offset are relative to the base of the Global Pointer region. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12172 6f19259b-4bc3-4df7-8a09-765794883524
2011-08-18ArmPlatformPkg/PrePiHobListPointerLib: Fixed pointer calculationoliviermartin
In the PrePi module, the global variables are located at the top of the stack. At the opposite of the PeiCore where the global variables are located in the middle of the stack. The top stack region is reserved for Temporary Memory. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12167 6f19259b-4bc3-4df7-8a09-765794883524
2011-08-18ArmPlatformPkg/SP804TimerLib: Fix delay functions to be reentrantoliviermartin
In the previous implementation, if the MicroSecondDelay or NanoSecondDelay were called while a delay function was already running, the timer HW controller was reinitialized with the new settings and it was discarding the settings of the first called delay function. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12163 6f19259b-4bc3-4df7-8a09-765794883524
2011-08-18ArmPlatformPkg/SP804TimerLib: Fixed macro timer base addressesoliviermartin
The base address for the Metronome and Performance timer were reverted. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12162 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-07ArmPlatformPkg: Fix warningsoliviermartin
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12001 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-06ArmPlatformPkg: Remove PcdStandalone from Sec module and Introduce ↵oliviermartin
ArmPlatformSecExtraAction() The PcdStandalone is a PCD ARM Ltd uses to make the difference between a standalone UEFI (boot from cold boot to Boot Manager without user intervention) and a Debug UEFI firmware (the firmware engineer has to copy the Normale World image into the DRAM to enable his/her firmware). By coping the firmware into DRAM in the non standalone version it is much faster than reflashing the NOR Flash after each build. ArmPlatformSecExtraAction() function is called just before the Sec module jump to normal world. The platform firmware can run extra actions at this stage. The 'ARM Standalone' concept has moved to the implementation of ArmPlatformSecExtraAction() for the ARM development boards (in ArmPlatformPkg/Library/DebugSecExtraActionLib). ArmPlatformPkg: Enable DebugAgentLib in Sec and PrePeiCore ArmPlatformPkg: Fix line endings in some source files Use CR+LF line endings as defined by the EDK2 coding convention git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11991 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-06ArmPlatformPkg/SP804TimerLib: Fixed the performance timeroliviermartin
The SP804 timer counts down. Change GetPerformanceCounterProperties () to declare this property. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11989 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-04ArmPlatformPkg: Fix build issuesoliviermartin
Other compiler version ... other warnings git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11970 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-01ArmPlatformPkg/PrePiHobListPointerLib: Get the HobListPointer from the stop ↵oliviermartin
of the stack When using ArmPlatformPkg/PrePeiCore or ArmPlatformPkg/PrePi, the global variable during the XIP phase are stored on the top of the stack. Global variables are defined by their PCD offset from the top of this stack. For example, the HobListPtr is defined at the offset PcdHobListPtrGlobalOffset. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11958 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-01ArmPkg: Move ARM Platform drivers from ArmPkg/Drivers/ to ↵oliviermartin
ArmPlatformPkg/Drivers/ (2) ... svn did not like my way to move folder from one directory to another one :-/ git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11957 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-01ArmPkg: Move ARM Platform drivers from ArmPkg/Drivers/ to ↵oliviermartin
ArmPlatformPkg/Drivers/ The idea is to keep ArmPkg responsible for the ARM architectural modules and ArmPlatformPkg the ARM development platform packages (with their respective drivers). ArmPlatformPkg: Reduce driver dependency on ArmPlatform.h - Move some driver definitions from C-Macro to PCD values - Unify PCD driver namespace git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11956 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-11ArmPlatformPkg/PrePeiCore: Reserve some memory on the top of the stack for ↵oliviermartin
Global Variables in XIP code The size of this memory is controlled by a PCD. The Global Variable in this regsion are defined by their offset. This memory region can be use to store the PEI Services Table Pointer. Update the PeiServicesTablePointerLib to use this region instead of PcdPeiServicePtrAddr. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11803 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-11ArmPlatformPkg/EblCmdLib: Add the 'devicepaths' EBL commandoliviermartin
This command start alls the available drivers and prints out all the device paths of the platform. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11801 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-11ArmPlatformPkg/PL031RealTimeClockLib: Implement PL031 RTC driveoliviermartin
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11793 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-11ArmPkg: Fix coding style to follow EDK2 coding conventionoliviermartin
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11789 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-03ArmPlatformPkg/SP804Timer: Introduce ↵oliviermartin
gArmPlatformTokenSpaceGuid.PcdSP804FrequencyInMHz This PCD defines the speed of the SP804 timer. The default value is 1MHz. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11745 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-03ArmPlatformPkg/SP804Timer: Remove the SP810 System Controller dependencyoliviermartin
The SP804 drivers must not consider the presence of the SP810 System Controller on the platform. The SP810 was used to enable the SP804 Dual Timers on ArmVExpress. It is the role of the Platform specific driver to enable to the SP804 dual timers if required. The former SP810 initialization code has moved to ArmPlatformLib for ArmRealViewEb and ArmVersatileExpress. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11744 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-03ArmPlatformPkg/PL011Uart: Create PL011 UART driveroliviermartin
This library makes the interface with the PL011 UART controller. This library can be linked to different types of driver (Serial Console, debugger, etc) using PL011 UART controller. ArmPlatformPkg/PL011SerialPortLib: Use Drivers/PL011Uart Remove the direct accesses to the PL011 UART controller to use the PL011Uart library. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11743 6f19259b-4bc3-4df7-8a09-765794883524
2011-03-31ArmPkg/Mmu: Support page size granularity in the initial MMU settingoliviermartin
Formerly, it was only possible to use section size granularity for the translation table regions. This change allows to define initial translation table regions with 4K-byte granularty (page size granularity). git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11467 6f19259b-4bc3-4df7-8a09-765794883524
2011-02-01Add ArmPlatformPkg from ARM Ltd. patch.andrewfish
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11291 6f19259b-4bc3-4df7-8a09-765794883524