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
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
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
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
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
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
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
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
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
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
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
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
81be6e070f
ArmPkg/ArmCpuLib: Fix GCC/XCode builds
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12626 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-01 23:32:04 +00:00
oliviermartin
89bbce116a
Arm Packages: Fix builds for XCODE32 toolchain
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12509 6f19259b-4bc3-4df7-8a09-765794883524
2011-10-04 13:58:28 +00:00
oliviermartin
68085d37f8
ArmPkg/CompilerIntrinsicsLib: Reverse the order of the 'ldrb' instructions in __aeabi_uread4
...
Change __aeabi_uread4 from:
ldrb r2, [r0, #1 ]
ldrb r1, [r0]
(...)
to:
ldrb r1, [r0]
ldrb r2, [r0, #1 ]
(...)
This change is a workaround to handle correctly __aeabi_uread4 on ARM
Versatile Express RTSM.
It should not have any major consequence on the other ARM platforms.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12481 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-29 20:55:10 +00:00
oliviermartin
19a7404aec
ArmPkg/BdsLib: Fix incorrect pointer casting
...
A physical address (64bit) was cast to a 32bit pointer.
Signed-off-by: Eugene Cohen (HP)
Reviewed-by: oliviermartin
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12460 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-27 18:27:20 +00:00
oliviermartin
ae7f81cba3
ArmPkg/CompilerIntrinsicsLib: Fix __aeabi_memclr and __aeabi_memclr4
...
The passed arguments did not match the __aeabi_memset prototype.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12459 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-27 18:13:26 +00:00
oliviermartin
da9675a241
ArmPkg: Add ARM Architectural Timer support
...
ARM Architectural Timer support is defined by the ARM Generic Timer Specification.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12455 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-27 16:35:16 +00:00
oliviermartin
0c0e7ef451
ArmPkg/ArmLib: Update Arm11 port
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12454 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-27 16:33:20 +00:00
oliviermartin
bd6b97994a
ArmPkg/ArmLib: Clean ArmV7Lib
...
- Move the non specific ArmV7 functions to ArmLib.
- Clean the ARM Platform common components to not depend on ArmV7 if not required
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12453 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-27 16:31:20 +00:00
oliviermartin
aa84fef5fe
ArmPkg: Removed 'ArmV7/ArmV7MPCore*' files
...
These files were Cortex A9 specific. The A9 specific functions have
moved to ArmCpuLib/ArmCortexA9Lib.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12449 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-27 16:24:30 +00:00
oliviermartin
1d2bbdbb8d
ArmPkg: Removed deprecated 'ArmMPCoreMailBoxLib'
...
This library has been replaced by ArmMpCoreInfo PPI and HOBs.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12424 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-22 23:16:04 +00:00
oliviermartin
f92b93c9a3
ARM Packages: Rename PcdNormal* into Pcd* PCDs
...
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-22 23:06:31 +00:00
oliviermartin
d9325c8e4f
ArmPkg/BdsLib: Move the code specific to the Atag preparation into a separate file
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12409 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-22 22:55:54 +00:00
oliviermartin
76d17c3156
ArmPkg/BdsLib: Use two distinct functions to boot Linux either by Atag or Fdt
...
Separate the BdsBootLinux() function into two functions for Atag and Fdt specific Linux booting
- BdsBootLinuxAtag ()
- BdsBootLinuxFdt ()
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12408 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-22 22:54:38 +00:00
oliviermartin
11c20f4e06
Arm Packages: Fixed coding style/Line endings to follow EDK2 coding convention
...
Arm Packages: Fixed mispelling
Arm Packages: Reduced warnings all over the code
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12407 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-22 22:53:54 +00:00
oliviermartin
2a9f433bc9
ArmPkg/ArmDisassemblerLib: Comment out unused variable
...
'ItFlag' is set but not used. Comment out this variable for future use.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12339 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-13 09:55:01 +00:00
oliviermartin
a6d4d0ac16
ArmPkg/BdsLib: Add missing BdsLoadOption.c file
...
Missing from my commit "ArmPkg/BdsLib: Move some functions used to
create/update BDS Boot Entry from ArmPlatformPkg/Bds to
ArmPkg/BdsLib"
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12325 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-12 09:37:11 +00:00
oliviermartin
aa863d357a
ArmPkg/BdsLib: Fix MemMap Device Path node support
...
The previous version was only checking if the Remaining Device Path node
was a MemMap DevicePath node.
This fix also checks if the Root DevicePath node is a MemMap DevicePath node.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12315 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-09 10:55:26 +00:00
oliviermartin
4aa2417061
ArmPkg/BdsLib: Move some functions used to create/update BDS Boot Entry from ArmPlatformPkg/Bds to ArmPkg/BdsLib
...
These functions can be reused by any EFI application to add/update a BDS Boot Entry.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12314 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-09 10:54:33 +00:00
oliviermartin
2755d844f9
ArmPkg/BdsLib: Add support to pass argument to a loaded EFI application
...
OptionalData argument has to be set in the Loaded Image Protocol of the
new EFI application.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12313 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-09 10:53:42 +00:00
oliviermartin
796b0b15e8
ArmPkg/CompilerIntrinsicsLib: Add memory intrinsics for RVCT
...
New intrinsics: __aeabi_memmove, __aeabi_memset, __aeabi_memclr and __aeabi_memclr4
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12293 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-07 19:09:39 +00:00
oliviermartin
cc1e814923
ArmPlatformPkg: Fix ARM RealView EB and VE builds
...
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-30 16:54:48 +00:00
oliviermartin
48be3ea2e0
ArmPkg/BdsLib: InitrdImageSize was not initialized when no initrd was
...
passed
The PrepareAtagList function is using this variable to determine if a
initrd was passed to the kernel.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12181 6f19259b-4bc3-4df7-8a09-765794883524
2011-08-22 11:01:44 +00:00
oliviermartin
1c6f402c24
ArmPkg/BdsLib: Fixed parameters passed to AllocatePages()
...
Typo issue ...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12176 6f19259b-4bc3-4df7-8a09-765794883524
2011-08-19 15:37:16 +00:00
oliviermartin
8c454d9800
BeagleBoardPkg: Use gArmTokenSpaceGuid.PcdSystemMemoryBase/Size to define System Memory
...
These PCDs are used by ArmPlatformPkg/Bds to know where to load the Linux kernel and its parameters.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12171 6f19259b-4bc3-4df7-8a09-765794883524
2011-08-18 21:15:50 +00:00
oliviermartin
bd54c237f3
ArmPkg/BdsLib: Allocate memory with AnyPage type if it failed with the one initially requested
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12170 6f19259b-4bc3-4df7-8a09-765794883524
2011-08-18 21:11:27 +00:00
oliviermartin
656416bc2e
ArmPlatformPkg/Bds: Add Linux 'initrd' support to BDS
...
An 'initrd' file can be specified for a Linux kernel.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12169 6f19259b-4bc3-4df7-8a09-765794883524
2011-08-18 13:21:14 +00:00
oliviermartin
151acec6e1
ArmPkg: Fix ARMGCC build
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12165 6f19259b-4bc3-4df7-8a09-765794883524
2011-08-18 11:12:39 +00:00
oliviermartin
abb4e5f346
ArmPkg/DebugAgentSymbolsOnlyLib: Fix the Firmware Base Address containing the Sec module
...
The previous version was using the FD base address. But the FV base address
should be used instead.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12138 6f19259b-4bc3-4df7-8a09-765794883524
2011-08-15 17:00:09 +00:00