oliviermartin
d65502601e
MdeModulePkg/Variable: Check if there is a NV Variable Storage header prior to use its attributes
...
The Variable PEI and RuntimeDxe drivers were using the attribute 'HeaderLength' of
EFI_FIRMWARE_VOLUME_HEADER without checking if a Firmware Volume Header was existing at
the base address.
In case the Firmware Volume Header does not exist or is corrupted, the attribute 'HeaderLength'
is a non valid value that can lead to a non valid physical address when accessing produces an
access error.
Signed-off-by: oliviermartin
Reviewed-by: niruiyu
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12836 6f19259b-4bc3-4df7-8a09-765794883524
2011-12-12 19:00:59 +00:00
oliviermartin
c20d62b5d2
ArmPlatformPkg: Coding style changes (tab and line endings) - Minor changes
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12828 6f19259b-4bc3-4df7-8a09-765794883524
2011-12-07 17:16:03 +00:00
oliviermartin
22ed9fb70a
BaseTools: Pending patches update
...
Add patch:
- ARMLINUXGCC: Set the linked base address at 0x0 (0x8000 by default)
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12824 6f19259b-4bc3-4df7-8a09-765794883524
2011-12-06 16:40:43 +00:00
oliviermartin
8234441688
ArmPlatformPkg/Sec: Enabled VFP (if supported by platform) prior to any library invocation
...
Some compilers uses VFP for some 64bit operation. If the VFP coprocessor is not enabled at
this stage the processor raises an undefined exception.
To prevent this case, the VFP enabling has been moved at the beginning of the platform
initialization phase.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12823 6f19259b-4bc3-4df7-8a09-765794883524
2011-12-06 16:32:11 +00:00
oliviermartin
8e0b5e07b7
ArmPlatformPkg: Update pending patches with the latest BaseTools SyncUp
...
- ARMLINUXGCC toolchain is now supported
- ARMGCC: Set '0x0' for the linkage base address
- Fixed Trim utility
- Fixed support for !include in DSC files
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12819 6f19259b-4bc3-4df7-8a09-765794883524
2011-12-05 14:29:16 +00:00
oliviermartin
1aa9860e8f
ArmPlatformPkg/PrePi: Ony synchronize cores when it is a MPCore System
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12726 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-16 12:53:25 +00:00
oliviermartin
d0da41c285
ArmPlatformPkg: Remove inappropriate comment in ArmPlatformPkg.dec
...
The comment was not related to the context.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12709 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-15 10:39:42 +00:00
oliviermartin
720b0d8878
ArmPlatformPkg/patches: Update pending patches to fix builds
...
This update should fix the build errors due to the postfix 'U' added to PCD numbers.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12708 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-15 10:26:58 +00:00
oliviermartin
09bb585cb2
ArmPlatformPkg/patches: Update the 'PendingPatches' on the latest BaseTools syncup
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12680 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-10 10:57:37 +00:00
oliviermartin
5f5b907c0d
ArmPlatformPkg: Fix Global Variable region initialization when GlobalVariable's size is zero
...
The exit loop was not considering a size of zero for the Global Variable region.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12678 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-09 11:52:37 +00:00
oliviermartin
710b8acb56
ArmPlatform/Sec: Ensure all the CPU cores are calling ArmCpuSetup()
...
Only the primary core was calling this function.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12646 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-01 23:45:41 +00:00
oliviermartin
aa26b8f6c8
ArmPlatformPkg/PrePi: Remove duplicate call of BuildMemoryTypeInformationHob()
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12645 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-01 23:45:09 +00:00
oliviermartin
d17afc8a02
ArmPlaformPkg/ArmVExpressPkg: Move initialization of SP810 at the early stage of the platform initialization (SEC)
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12644 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-01 23:44:51 +00:00
oliviermartin
ce5ed6c8d5
ArmPlatformPkg: Fix PCD namespace for PCD that defines the the size of a Secure/Non Secure FD/FV files
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12643 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-01 23:44:30 +00:00
oliviermartin
c0658bd6b8
ArmPlatformPkg/Bds: Fix the Boot Manager option to set the FDT device path
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12642 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-01 23:44:05 +00:00
oliviermartin
22a262c8ee
ArmPlatformPkg/Bds: Fixed and Improved initrd support in the ArmPlatformPkg Boot Manager
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12641 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-01 23:43:37 +00:00
oliviermartin
483bc3d330
ArmPlatformPkg/Bds: Fix when the default console variables are empty (or null)
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12640 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-01 23:43:12 +00:00
oliviermartin
031f52ce0f
ArmPlatformPkg: Fix initialization of the Global Variable when stack pointer higher than 0x7FFFFFFF
...
Fixed signed comparison error.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12639 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-01 23:42:29 +00:00
oliviermartin
99565b88c1
ArmPlatform/PrePi: Fixed PrePi for MP Cores platform and Global Variable region settings
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12638 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-01 23:41:52 +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
504d14603d
ArmPlatformPkg: Use EmuVariable, Add Simple TextInTextOut to make easier to port to a new platform
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12636 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-01 23:40:49 +00:00
oliviermartin
00b2153446
ArmPlatformPkg: Boot Linux from semihosting on RTSM by default (was NOR Flash)
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12635 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-01 23:40:18 +00:00
oliviermartin
d4bec9f955
ArmPlatformPkg: Use fixed PcdTrustzoneSupport to define if Trustzone is enabled for a firmware
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12634 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-01 23:39:43 +00:00
oliviermartin
d48e4b19ae
ArmPlatformPkg: Fix PrePi firmwares for ArmRealViewEb
...
The SEC component was using the wrong library for the Global Variable region.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12633 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-01 23:39:17 +00:00
oliviermartin
8d0fe26cbf
ArmPlatformPkg: Remove ArmPlatformBootRemapping() function from the 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
2011-11-01 23:36:59 +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
793275a858
ArmPlatformPkg: Coding style (minor changes)
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12625 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-01 23:31:02 +00:00
oliviermartin
a79803d7f9
ArmPlatformPkg/ArmVExpressPkg: Do not declare SCC base for the RTSM VE Model
...
The System Control Configuration registers are not implemented on the Model
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12624 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-01 23:28:27 +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
fa16d12dcc
ArmPlatformPkg/ArmVExpressPkg: The virtual memory must have the Secure attribute when the platform does not make the transition in Normal World.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12480 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-29 20:48:36 +00:00
oliviermartin
66f530edfa
ArmPlatformPkg/ArmVExpressPkg: HiiDatabaseDxe driver was missing
...
UefiHiiServicesLib requires an implementation of gEfiHiiDatabaseProtocolGuid.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12479 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-29 20:44:16 +00:00
oliviermartin
705b0c031f
ArmPlatformPkg/Bds: Fix GetConsoleDevicePathFromVariable() when SetVariable has failed
...
Return the Default Device Path even when SetVariable has failed.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12469 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-28 19:05:54 +00:00
oliviermartin
886f97c86b
ARM Packages: Fixed Build failings/warnings/EDK2 coding convention
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12458 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-27 16:42:47 +00:00
oliviermartin
12fcdcb83d
ArmPlatformPkg: Create an ARM Platform DSC / FDF / ArmPlatformLib template
...
By copying these templates, it should make easier to port EDK2 to new ARM
Platforms.
- ArmPlatformPkg.(dsc|fdf): For EDK2 firmwares which support the full boot
story from cold boot to OS loading
- ArmPlatformPkg-2ndstage.(dsc|fdf): For EDK2 as a second stage boot loader
(either started after a proprietary ROM firmware or x-loader)
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12457 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-27 16:40:46 +00:00
oliviermartin
88d4f51dfc
ArmPlatformPkg: Add support for ARM RTSM Versatile Express A15x1 and A15x4
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12456 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-27 16:37:01 +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
12c5ae238e
ArmPlatformPkg: Replaced 'ArmPlatformTrustzoneSupported' by the fixed Pcd gArmTokenSpaceGuid.PcdTrustzoneSupport
...
This change does not make possible to disable Trustzone from the firmware.
The firmware has to be built for Trustzone support enabled or disabled.
The memory page table are now defined as 'Normal Memory' in any case.
Except for RTSM Device Memory which as to be Secure Device Memory due
to a RTSM bug.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12452 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-27 16:29:07 +00:00
oliviermartin
4103bc94fb
ArmPlatformPkg: Replaced '!if' conditions by more appropriate '!ifdef' conditions
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12451 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-27 16:27:05 +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
90d6a1bbf1
ArmPkg: Introduce ArmCpuLib to abstract ARM Cpu specific initialization
...
Every CPUs have their own initialization requirements.
This library allows to allows to abstract these initialization requirements
into the ARM Platform common components.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12448 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-27 16:22:09 +00:00
oliviermartin
9703e34729
ArmPlatformPkg/patches: Update the pending patches with the updated ARMGCC and RVCT toolchains and the new ARMLINUXGCC toolchain patches.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12438 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-23 09:05:36 +00:00
oliviermartin
95b3580f82
ArmPlatformPkg/Bds: Add an option in the Boot Manager to edit the Device Path of the Platform Device Tree
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12430 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-22 23:23:19 +00:00
oliviermartin
1ddb209e0e
ArmPlatformPkg/ArmVExpressPkg: Add support for ARM Versatile Express A9x4 Model
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12429 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-22 23:22:31 +00:00
oliviermartin
4463f70698
ArmPlatformPkg/ArmiVExpressPkg: Introduce 'ArmVExpress.dsc.inc' to avoid duplication of library and PCD defintions around ARM Versatile Express Boards
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12428 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-22 23:21:02 +00:00
oliviermartin
f4ee7a8234
ArmPlatformPkg/ArmRealViewEbPkg: Introduce 'ArmRealViewEb.dsc.inc' to avoid duplication of library and PCD defintions around ARM RealView Emulation Boards
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12427 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-22 23:19:23 +00:00
oliviermartin
c21e237866
ArmPlatformPkg/ArmRealViewEbPkg: Removed unused 'Pei' module
...
ArmRealViewEbPkg is now using the ArmPlatform Common modules (ArmPlatformPkg/Sec
and ArmPlatformPkg/PrePeiCore).
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12425 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-22 23:16:56 +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
44788bae6f
ArmPkg: Create MpCoreInfo PPI and HOB to describe CPU Cores on a MPCore platform
...
These info are:
- ClusterId, CoreId
- MailBox Set/Get/Clear address
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12423 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-22 23:14:01 +00:00
oliviermartin
77de7e5372
ArmPlatformPkg: Add ArmPlatformGetPlatformPpiList()
...
This function exposes the Platform Specific PPIs. They can be used by
any PrePi modules or passed to the PeiCore by PrePeiCore
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12422 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-22 23:12:23 +00:00
oliviermartin
93d451c67b
ArmPlatformPkg/PrePeiCore: Reverse Stack & PeiTemporary
...
To get the global variable at top of the Primary Stack such as in the Pei module.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12421 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-22 23:11:34 +00:00