Commit Graph

226 Commits

Author SHA1 Message Date
oliviermartin 526099f968 ArmPkg/ArmLib: Fixed parameter checking in ArmConfigureMmu()
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13429 6f19259b-4bc3-4df7-8a09-765794883524
2012-06-06 15:47:23 +00:00
oliviermartin c4c9086678 ArmPkg: Enhance CompareGuid performance by using CompareMem instead of nested unaligned read calls
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Eugene Cohen eugene@hp.com
Reviewed-by: Olivier Martin olivier.martin@arm.com



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13409 6f19259b-4bc3-4df7-8a09-765794883524
2012-05-31 15:28:37 +00:00
oliviermartin f8181c90f4 ArmPlatformPkg: Replaced 'ArmGicSecLib' by 'ArmGicLib'
Signed-off-by: Olivier Martin <olivier.martin@arm.com>



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13265 6f19259b-4bc3-4df7-8a09-765794883524
2012-05-02 20:19:00 +00:00
oliviermartin 9d59a88be1 ArmPkg/ArmCpuLib: Fixed SMP Cortex-A9 and Cortex-A15
Signed-off-by: Olivier Martin <olivier.martin@arm.com>



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13261 6f19259b-4bc3-4df7-8a09-765794883524
2012-05-02 20:14:55 +00:00
oliviermartin 315649cda2 ArmPkg/ArmGicLib: Replaced 'ArmGicAcknowledgeSgiFrom' by '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-02 20:09:16 +00:00
oliviermartin 4c19ece32a ArmPkg/ArmGicLib: Changed ArmGicSendSgiTo() to allow to send a specific SGI
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-02 20:08:03 +00:00
oliviermartin 1e40431699 ArmPkg/ArmLib: Added ARM Cpu IDs
Signed-off-by: Olivier Martin <olivier.martin@arm.com>



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13257 6f19259b-4bc3-4df7-8a09-765794883524
2012-05-02 20:06:36 +00:00
oliviermartin 9133aa80a9 ArmPkg/ArmLib: Fixed MpCore macros
Signed-off-by: Olivier Martin <olivier.martin@arm.com>



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13256 6f19259b-4bc3-4df7-8a09-765794883524
2012-05-02 20:05:36 +00:00
oliviermartin 836c350061 ArmPkg/ArmLib: Added new functions to access ARM coprocessors
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-02 20:02:39 +00:00
oliviermartin 7fffeef9be ARM Packages: Fixed th 'NS' (Non Secure) bit in the MMU page Table Descriptor
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-02 20:00:54 +00:00
oliviermartin 96a8bc1150 ArmPkg/PeCoffExtraActionLib: Enabled DS-5 command line when using ARM 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-02 19:58:46 +00:00
oliviermartin 124dfbf6da ArmPkg/ArmCpuLib: Removed unused files
Signed-off-by: Olivier Martin <olivier.martin@arm.com>



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13250 6f19259b-4bc3-4df7-8a09-765794883524
2012-05-02 19:57:43 +00:00
oliviermartin b1d41be7c9 ArmPkg/ArmCpuLib: Replaced complex functions ArmCpuSynchronizeWait & ArmCpuSynchronizeSignal by sev & wfe
Previsouly the synchronization of MpCore was using the SGI (Software
Generated Interrupt) to synchronize MpCore during the early boot.
This commit replaced this mechanism by the more appropriate SEV/WFE
instructions (Send/Wait Event instructions).
That also eases the port to a new cpu/platform.

Signed-off-by: Olivier Martin <olivier.martin@arm.com>



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13249 6f19259b-4bc3-4df7-8a09-765794883524
2012-05-02 19:55:32 +00:00
oliviermartin e9f7c58f25 ArmPkg: Replaced gArmTokenSpaceGuid.PcdGicNumInterrupts by ArmGicGetMaxNumInterrupts()
The maximum number of interrupts can be retrieve through the GIC distributor.

Signed-off-by: Olivier Martin <olivier.martin@arm.com>



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13244 6f19259b-4bc3-4df7-8a09-765794883524
2012-05-02 19:48:00 +00:00
oliviermartin 82325f95c5 ARM Packages: Minor changes (fixed mispelling, line endings, incorrect comments)
Signed-off-by: Olivier Martin <olivier.martin@arm.com>



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13243 6f19259b-4bc3-4df7-8a09-765794883524
2012-05-02 19:46:40 +00:00
oliviermartin 84cf376245 EDK II Packages: Added License.txt files
License.txt is a per-project document showing the license terms
used by that project.

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@13194 6f19259b-4bc3-4df7-8a09-765794883524
2012-04-12 16:40:32 +00:00
jljusten ea4ee7ac38 EDK II Packages: Add Contributions.txt and License.txt files
Contributions.txt documents the contribution process for all
tianocore projects. The conents of Contributions.txt should
match in all cases.

License.txt is a per-project document showing the license terms
used by that project.

Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13187 6f19259b-4bc3-4df7-8a09-765794883524
2012-04-11 23:19:46 +00:00
oliviermartin 5e7731443c ArmPlatformPkg/Sec: Allowed the Secondary Cores to set the Secure/Non Secure 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-26 11:03:36 +00:00
oliviermartin 18029bb911 ArmLib/ArmV7: Add ISB to ArmEnableVFP
ArmEnableVFP could crash on an out-of-order CPU. Adding an instruction barrier after writing to CPACR cures the problem.

Signed-off-by: Ryan Harkin <ryan.harkin@linaro.org>
Reviewed-by: Olivier Martin <olivier.martin@arm.com>



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13134 6f19259b-4bc3-4df7-8a09-765794883524
2012-03-26 11:01:21 +00:00
oliviermartin 7245b435c8 ArmPkg: Declared ARM Hypervisor Firmware PCDs
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13131 6f19259b-4bc3-4df7-8a09-765794883524
2012-03-26 10:57:11 +00:00
oliviermartin 0e9674e51f ArmPkg/ArmLib: Added ARM_PROCESSOR_MODE_HYP to ARM_PROCESSOR_MODE
ARM_PROCESSOR_MODE_HYP stands for the Hypervisor mode.



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13130 6f19259b-4bc3-4df7-8a09-765794883524
2012-03-26 10:56:07 +00:00
oliviermartin 645890ba40 ArmPkg/Drivers/PL390Gic: Removed acknowledge of special interrupts (spurious interrupt)
Cleaning a special interrupt has an unpredictable behaviour.



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13129 6f19259b-4bc3-4df7-8a09-765794883524
2012-03-26 10:54:49 +00:00
oliviermartin 1dc483b30e ArmPkg/LinuxLoader: Remove unused DebugLib (Minor change)
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13128 6f19259b-4bc3-4df7-8a09-765794883524
2012-03-26 10:52:31 +00:00
oliviermartin 69f60552de ArmPkg/ArmLib.h: Fixed the ClusterId and CoreId masks
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13124 6f19259b-4bc3-4df7-8a09-765794883524
2012-03-26 10:47:15 +00:00
oliviermartin be613c8b2c ArmPkg/PL390Gic: Introduced PcdGicSgiIntId to define which SGI is used for core synchronisation
By default this PCD is set to use SGI #0.



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13123 6f19259b-4bc3-4df7-8a09-765794883524
2012-03-26 10:46:25 +00:00
oliviermartin 9253410646 ArmPkg/ArmGicLib: Added function ArmGicSetSecureInterrupts() to define the secure interrupts
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13122 6f19259b-4bc3-4df7-8a09-765794883524
2012-03-26 10:45:27 +00:00
oliviermartin 916666c009 ArmPkg/ArmLib: Replaced 'UINTN' type by architecture agnostic types (EFI_PHYSICAL_ADDRESS & EFI_VIRTUAL_ADDRESS) to describe memory addresses
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13073 6f19259b-4bc3-4df7-8a09-765794883524
2012-02-29 17:22:11 +00:00
oliviermartin afb9f4da94 ArmPkg/Library/SemihostLib: Removed depenencies on Uefi.h (Base library)
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13065 6f19259b-4bc3-4df7-8a09-765794883524
2012-02-28 17:34:12 +00:00
oliviermartin 1377db63ff ArmPlatformPkg: Updated the stack setup to have the same geometry between the Secure and Normal World
Having a similar setup reduces the error during the MPCore stack setup.
The stack setup is described on this wikipage:
https://sourceforge.net/apps/mediawiki/tianocore/index.php?title=ArmPlatformPkg/Stack



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13058 6f19259b-4bc3-4df7-8a09-765794883524
2012-02-28 17:23:53 +00:00
oliviermartin 5ed2368498 ArmPkg/ArmLib: Fixed 'ArmConfigureMmu()' to avoid overflow when an entry is mapped at 0xFFFFFFFF
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13056 6f19259b-4bc3-4df7-8a09-765794883524
2012-02-28 17:20:34 +00:00
oliviermartin 3b73c91b65 ArmPkg/ArmLib.h: Update 'ARM_MEMORY_REGION_DESCRIPTOR' to support 64bit addresses
Replaced 'UINT32' by 'UINTN'.



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13055 6f19259b-4bc3-4df7-8a09-765794883524
2012-02-28 17:18:35 +00:00
oliviermartin 65acd8e7b3 ArmPlatformPkg: Moved 'ArmTrustZoneLib' from ArmPkg/Library to ArmPlatformPkg/Drivers
This library is really the driver for the ARM Trustzone controllers (TZPC and TZASC).



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13054 6f19259b-4bc3-4df7-8a09-765794883524
2012-02-28 17:16:58 +00:00
oliviermartin 0db25ccc6c ArmPlatformPkg: Minor code changes (comments, misspellings, coding stylei, 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-28 17:11:42 +00:00
oliviermartin 31d196c16f ArmPkg/ArmArchTimerLib: Renamed the constructor to 'TimerConstructor()'
Some ARM Platform components (ie: PrePei) use this constructor name to
initialize the timers (at this time there is no PE loader to call the
library constructors) when PI/UEFI is started to initialize the
PerformanceLib.



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13041 6f19259b-4bc3-4df7-8a09-765794883524
2012-02-27 10:23:08 +00:00
oliviermartin 1bccfbe5ab ArmPkg/PL390Gic: Removed duplicated line of codes disabling the interrupts
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13040 6f19259b-4bc3-4df7-8a09-765794883524
2012-02-27 10:20:46 +00:00
oliviermartin ac7362c985 ArmPkg/LinuxLoader: Fixed memory leak
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13039 6f19259b-4bc3-4df7-8a09-765794883524
2012-02-27 10:18:35 +00:00
oliviermartin c0a1f7776b ArmPkg/BdsLib: Added support for using uInitrd
Detect if there is a u-boot header on the initrd (by checking the
signature) and skip it.

Signed-off-by: ryan.harkin@linaro.org
Reviewed-by: oliviermartin




git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13031 6f19259b-4bc3-4df7-8a09-765794883524
2012-02-24 16:11:51 +00:00
oliviermartin 1093e3074f ArmPkg/BdsLib: Fixed LinuxImageSize if uImagei format
The uImage is 64Bytes smaller (size of the u-boot header) than
the size of the file read from the file system.



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13030 6f19259b-4bc3-4df7-8a09-765794883524
2012-02-24 16:05:00 +00:00
oliviermartin d60f6af456 ArmPkg/ArmV7Lib: Add support for Invalid Instruction Cache to Point of Unification
This patch adds support to invalidate Instruction Cache to the Point of Unification (PoU).

Signed-off-by: eugenecohen
Reviewed-by: oliviermartin



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13012 6f19259b-4bc3-4df7-8a09-765794883524
2012-02-14 18:44:40 +00:00
oliviermartin 9207c5d758 ArmPkg: Changed ARM CPU SetMemoryAttributes to always use strongly ordered for the EFI_MEMORY_UC attribute
Changed ARM CPU SetMemoryAttributes to always use strongly ordered for the EFI_MEMORY_UC attribute. 

Signed-off-by: 
Reviewed-by: eugenecohen
Reviewed-by: yanivtal




git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13011 6f19259b-4bc3-4df7-8a09-765794883524
2012-02-14 15:54:05 +00:00
oliviermartin 3d565dd674 ArmPkg/BdsLib: Fixed memory leak
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12996 6f19259b-4bc3-4df7-8a09-765794883524
2012-02-09 15:28:25 +00:00
oliviermartin 7598f36265 ArmPkg/BdsLib: Fixed incorrect typecasting
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12995 6f19259b-4bc3-4df7-8a09-765794883524
2012-02-09 15:27:22 +00:00
oliviermartin 4671d15d7a ArmPkg/BdsLib: Load initrd next to the Linux kernel to allow to reduce the memory from the Linux command line
The initrd was loaded at the top of the UEFI System Memory. By consequence, if the system memory
was reduced by the Linux command line then the initrd was not part of the system memory.



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12994 6f19259b-4bc3-4df7-8a09-765794883524
2012-02-09 15:25:40 +00:00
oliviermartin 995d9676c8 ArmPkg/BdsLib: Added support to start uImage
Detect if there is a u-boot header (by checking the signature) and skip it.



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12993 6f19259b-4bc3-4df7-8a09-765794883524
2012-02-09 15:23:58 +00:00
oliviermartin 513aa3497a ArmPlatformPkg/Sec: Replaced hardcode SCR and NSACR values by PCDs to enable CPU and Platform Specific settings
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12637 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-01 23:41:20 +00:00
oliviermartin d314d05f40 ArmPkg/ArmPkg.dsc: Add latest drivers to the DSC file to validate that they build
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12631 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-01 23:35:38 +00:00
oliviermartin 3d4c7abc56 ArmPkg/RvdPeCoffExtraActionLib: Add quotes in RVD command line for RVD under Linux
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12630 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-01 23:35:05 +00:00
oliviermartin 7755dfd3a5 ArmPkg/DefaultExceptionHandlerLib: Replace the Print() by SerialOutputWrite() function
Print() is using the Console Output Protocol that cannot be available at the time of the exception.



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12629 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-01 23:34:14 +00:00
oliviermartin ce4b2bd4c2 ArmPkg/ArmArchTimerLib: Fix TimerLib when the security extension is not implemented
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12628 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-01 23:33:29 +00:00
oliviermartin a8151a7074 ArmPkg: Fix GetClusterId() calculation from MpId
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12627 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-01 23:32:45 +00:00