Commit Graph

229 Commits

Author SHA1 Message Date
Olivier Martin cc135144b9 ArmPlatformPkg/ArmVExpressPkg: Remove the last 16MB of the 32bit DRAM region
Trusted Firmware will declare this region of DRAM as secure.
There is no way for the non-secure world to access this memory region.

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@15511 6f19259b-4bc3-4df7-8a09-765794883524
2014-05-08 15:00:42 +00:00
Brendan Jackman 73ca50096e ARM Packages: Use AND instead of BIC instruction with immediate
AARCH64 does not have a BIC-with-immediate instruction. GAS assembles it as a
AND with the immediate inverted, but Clang's integrated assembler emits an
error.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Brendan Jackman <brendan.jackman@arm.com>
Reviewed-by: Olivier Martin <olivier.martin@arm.com>



git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15509 6f19259b-4bc3-4df7-8a09-765794883524
2014-05-08 14:59:04 +00:00
Brendan Jackman 919a3a026c ARM Packages: use GCC_ASM_EXPORT to export functions
This ensures the .type directive is used to mark them as function symbols

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Brendan Jackman <brendan.jackman@arm.com>
Reviewed-by: Olivier Martin <olivier.martin@arm.com>



git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15506 6f19259b-4bc3-4df7-8a09-765794883524
2014-05-08 14:55:52 +00:00
Brendan Jackman ef7b378605 ARM Packages: Remove GCC filter for AARCH64 assembly files
Some non-GCC toolchain might support the GNU assembly language.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Brendan Jackman <brendan.jackman@arm.com>
Reviewed-by: Olivier Martin <olivier.martin@arm.com>



git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15504 6f19259b-4bc3-4df7-8a09-765794883524
2014-05-08 14:54:11 +00:00
Brendan Jackman e691183822 ArmPlatformPkg/ArmVExpressSecLibRTSM: Only use extended name of system registers for GCC
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Brendan Jackman <brendan.jackman@arm.com>
Reviewed-by: Olivier Martin <olivier.martin@arm.com>



git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15501 6f19259b-4bc3-4df7-8a09-765794883524
2014-05-08 14:50:44 +00:00
Olivier Martin 6add2be583 ArmPlatformPkg/ArmVExpress-CTA15-A7.fdf: Increased the size of FV after adding the Lan9118 driver
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@15487 6f19259b-4bc3-4df7-8a09-765794883524
2014-04-24 19:31:53 +00:00
Olivier Martin 02944eb70e ArmPlatformPkg: Added Lan9118 support
This is the on board Versatile Express Ethernet controller.
 
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@15486 6f19259b-4bc3-4df7-8a09-765794883524
2014-04-24 19:30:11 +00:00
Olivier Martin a78167a641 ArmPlatformPkg/ArmVExpressPkg: Update the Runtime Code and Data number of pages
This information give a hint to reserve some contiguous pages for runtime
regions.

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@15466 6f19259b-4bc3-4df7-8a09-765794883524
2014-04-14 10:25:08 +00:00
Olivier Martin 214698e700 ArmPlatformPkg/ArmVExpressLibRTSM: Added support for the additional 6GB memory of DRAM on Foundation Model
The FVP Foundation model has additional DRAM regions at 0x08_8000_0000.

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@15464 6f19259b-4bc3-4df7-8a09-765794883524
2014-04-14 09:04:31 +00:00
Olivier Martin df44112bda ArmPlatformPkg/ArmVExpressLibRTSM: Added support for the additional 2GB memory of DRAM on FVP
The FVP Base and Foundation models have additional DRAM regions at
0x08_8000_0000.

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@15461 6f19259b-4bc3-4df7-8a09-765794883524
2014-04-11 15:58:54 +00:00
Olivier Martin 3e8ddb4a03 ArmPlatformPkg/ArmVExpressLibRTSM: Removed unused dead code
This code is only specific to the ARM Versatile Express hardware board.
There is no concept of logic tile on the FVP model.

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@15460 6f19259b-4bc3-4df7-8a09-765794883524
2014-04-11 15:58:13 +00:00
Olivier Martin 6bcedcecb5 ArmPlatformPkg: Set PcdDefaultBootArgument to an empty unicode string
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@15454 6f19259b-4bc3-4df7-8a09-765794883524
2014-04-11 10:59:06 +00:00
Olivier Martin cddd490b23 ArmPlatformPkg/ArmVExpress-FVP-AArch64: Fixed number of cores and cluster for Base and Foundation models
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@15430 6f19259b-4bc3-4df7-8a09-765794883524
2014-04-03 20:04:39 +00:00
Olivier Martin ffcf178215 ArmPlatformPkg/ArmVExpressPkg: Add processor identifiers for Cortex A12/A7
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@15394 6f19259b-4bc3-4df7-8a09-765794883524
2014-03-26 19:28:35 +00:00
Olivier Martin 81f2915669 ArmPlatformPkg/ArmVExpressPkg: Added Android FastBoot support
That includes an implementation of FASTBOOT_PLATFORM_PROTOCOL for
ARM Versatile Express.

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@15317 6f19259b-4bc3-4df7-8a09-765794883524
2014-03-05 04:52:33 +00:00
Olivier Martin 4257aa4d4b ArmPlatformPkg/ArmVExpressPkg: Added Isp1761 USB OTG driver
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@15315 6f19259b-4bc3-4df7-8a09-765794883524
2014-03-05 04:33:37 +00:00
Olivier Martin a4ab7df48f ArmPlatformPkg/ArmVExpressDxe: Platform specific driver for ARM VExpress based platform
This driver should be used when adding code specific to a platform based on
ARM VExpress based board.

ArmFvpDxe driver has been renamed into ArmVExpressDxe driver to support the hardware
based platforms and the model based platforms.

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@15279 6f19259b-4bc3-4df7-8a09-765794883524
2014-03-01 11:05:44 +00:00
Olivier Martin 51ad04cbd1 ARM Packages: Include 'AsmMacroIoLibV8.h' instead of the 32bit version
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-02-24 19:20:16 +00:00
Olivier Martin da5ae569b9 Add flag to make UEFI run from DRAM or FLASH for FVPs
- By setting the 'ARM_FVP_RUN_NORFLASH' flag at compile time UEFI will
  be linked to run from NOR FLASH0 on FVPs.
- The RAM load location is currently set to 128MB from base of DRAM.

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@15245 6f19259b-4bc3-4df7-8a09-765794883524
2014-02-17 16:01:41 +00:00
Leif Lindholm e6f3ed4340 ARM Packages: CRLF fixup
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Leif Lindholm <leif.lindholm@linaro.org>
Signed-off-by: Olivier Martin <olivier.martin@arm.com>



git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15241 6f19259b-4bc3-4df7-8a09-765794883524
2014-02-12 15:30:34 +00:00
Olivier Martin 80ae629190 ArmPlatformPkg/ArmVExpress.dsc.inc: Exposed the 2 NOR Flash filesystem to UEFI
BootMonFs (file system used on the VExpress NOR Flash) is now supported on
both NOR Flash regions.

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@15209 6f19259b-4bc3-4df7-8a09-765794883524
2014-02-05 12:54:03 +00:00
Olivier Martin 5a78d29cb8 ArmPlatformPkg/ArmVExpress-CTA15-A7.fdf: Move UEFI image above the first 128MB of DRAM
Linux and its DTB required to be loaded in the first 128MB of the system memory.
Moving UEFI firmware above this limit ensures some XIP runtime code (part of the
UEFI firmware) are not overwritten when loading Linux kernel.

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@15168 6f19259b-4bc3-4df7-8a09-765794883524
2014-01-23 01:01:08 +00:00
Olivier Martin eb98fc6de8 ArmPlatformPkg: Removed the hardware floating point build flags
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@15166 6f19259b-4bc3-4df7-8a09-765794883524
2014-01-23 00:57:56 +00:00
Laszlo Ersek 974d61171f ArmPlatformPkg/ArmVExpressPkg: Clean line endings
The edk2 tree mandates CRLF line terminators. Earlier patches added some
lines with LF terminators. Clean them up.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Signed-off-by: Olivier Martin <olivier.martin@arm.com>



git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15132 6f19259b-4bc3-4df7-8a09-765794883524
2014-01-16 10:35:55 +00:00
Reece R. Pollack 9ad8d7d012 ArmPlatformPkg/ArmVExpress-RTSM-A15_MPCore.fdf: Added Generic Network drivers
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Reece R. Pollack <reece.pollack@linaro.org>
Signed-off-by: Steven Kinney <steven.kinney@linaro.org>
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-By: Olivier Martin <olivier.martin@arm.com>



git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15131 6f19259b-4bc3-4df7-8a09-765794883524
2014-01-16 10:31:14 +00:00
Reece R. Pollack 5c20c0c37a ArmPlatformPkg/ArmVExpress-RTSM-A15.fdf: Added the generic Network drivers
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Reece R. Pollack <reece.pollack@linaro.org>
Signed-off-by: Steven Kinney <steven.kinney@linaro.org>
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-By: Olivier Martin <olivier.martin@arm.com>



git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15130 6f19259b-4bc3-4df7-8a09-765794883524
2014-01-16 10:28:23 +00:00
Ryan Harkin 1eee8f3789 ArmPlatformPkg/ArmVExpressPkg: Add the core network components needed for networking and PXE boot.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ryan Harkin <ryan.harkin@linaro.org>
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-By: Olivier Martin <olivier.martin@arm.com>



git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15129 6f19259b-4bc3-4df7-8a09-765794883524
2014-01-16 10:25:00 +00:00
Olivier Martin 94e0955d3e ArmPlatformPkg/BootMonFs: Added support for the NorFlash File System of the ARM Development Boards
This is the filesystem created by the microcontroller on NOR Flash of the ARM Versatile
Express Development Board.

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@15126 6f19259b-4bc3-4df7-8a09-765794883524
2014-01-16 00:06:13 +00:00
Roy Franz 33fc8b0fec ArmPlatformPkg/ArmVExpressPkg: Add build option to support VExpress A15 QEMU emulation
This patch adds an EDK2_ARMVE_SUPPORT_QEMU macro that can be defined at build
time to build an image that supports QEMU.  The default build is unchanged and
builds the RTSM configuration.

QEMU only models fixed size blocks within a flash device, and the RTSM
configuration stores EFI variables in the smaller boot blocks of the
flash.  When built for QEMU the larger blocks are used that QEMU properly
emulates.

Signed-off-by: Roy Franz <roy.franz@linaro.org>
Contributed-under: TianoCore Contribution Agreement 1.0
Reviewed-By: Olivier Martin <olivier.martin@arm.com>


git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15125 6f19259b-4bc3-4df7-8a09-765794883524
2014-01-15 16:24:00 +00:00
Ryan Harkin 92720fe9c9 ArmPlatformPkg/ArmVExpressPkg: add virtio to RTSM A9 BSP
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ryan Harkin <ryan.harkin@linaro.org>
Reviewed-By: Olivier Martin <olivier.martin@arm.com>



git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15123 6f19259b-4bc3-4df7-8a09-765794883524
2014-01-15 12:22:06 +00:00
Ryan Harkin bdf67cd688 ArmPlatformPkg/ArmVExpressPkg: add virtio to RTSM A15 BSP
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ryan Harkin <ryan.harkin@linaro.org>
Reviewed-By: Olivier Martin <olivier.martin@arm.com>



git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15122 6f19259b-4bc3-4df7-8a09-765794883524
2014-01-15 12:19:29 +00:00
Ryan Harkin 4b128e5d4d ArmPlatformPkg/ArmVExpressPkg: Add virtio to RTSM A15 MPCore BSP
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ryan Harkin <ryan.harkin@linaro.org>
Reviewed-By: Olivier Martin <olivier.martin@arm.com>



git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15121 6f19259b-4bc3-4df7-8a09-765794883524
2014-01-15 12:18:29 +00:00
Olivier Martin c357fd6a1f ArmPkg/ArmPkg.dec: Redefined PcdSystemMemory(Base|Size) as UINT64
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
2014-01-10 11:27:31 +00:00
oliviermartin 94caa81c35 ArmPlatformPkg/ArmFvpDxe: Fixed the line endings
The line endings for EDK2 source files should be CRLF.



git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15057 6f19259b-4bc3-4df7-8a09-765794883524
2014-01-07 11:20:14 +00:00
Olivier Martin e94784c68d ArmPlatformPkg/ArmFvpDxe: Added Virtio Block support
Right now the ARM Platform driver does not do much, but
I expect to move most platform specific code into platform
specific driver in the future.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Olivier Martin <olivier.martin@arm.com>

v5:
- ensure / document that the VIRTIO_BLK_DEVICE_PATH structure must be
  packed
- fix whitespace damage in definition of "mVirtioBlockDevicePath"
- the platform driver is added to all platform DSC and FDF files in the
  previous patch; this patch focuses on virtio only

Change-Id: I3505bfc5b31085b8017bd9e6895a155bd7a2eee9
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-By: Olivier Martin <olivier.martin@arm.com>



git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14981 6f19259b-4bc3-4df7-8a09-765794883524
2013-12-13 12:05:01 +00:00
Olivier Martin 1e69576f53 ArmPlatformPkg/ArmVExpressPkg: Added the empty 'ArmFvpDxe' platform UEFI driver
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Olivier Martin <olivier.martin@arm.com>

v5:
- For uniformity, add the empty driver to
  ArmVExpress-RTSM-AEMv8Ax4-foundation.* too in this patch, not just
  ArmVExpress-RTSM-AEMv8Ax4.*. V4 added the empty driver to
  ArmVExpress-RTSM-AEMv8Ax4-foundation.* not sooner than the next patch,
  fusing it with other (= virtio) functionality. Let's split these changes
  cleanly.

Change-Id: I7d635011c8d3ac59097c728b7c7786d8677c80cb
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-By: Olivier Martin <olivier.martin@arm.com>



git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14980 6f19259b-4bc3-4df7-8a09-765794883524
2013-12-13 12:03:55 +00:00
Olivier Martin 7cf1a5b328 ArmPlatformPkg/ArmVExpress-RTSM-AEMv8Ax4-foundation.dsc: Remove the Monitor stacks PCDs
We do not have (Secure) Monitor mode on AArch64.

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@14939 6f19259b-4bc3-4df7-8a09-765794883524
2013-12-06 16:13:13 +00:00
Olivier Martin 99267097f3 ArmPlatformPkg: Fix and Implement ArmPlatformGetPrimaryCoreMpId
- 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-12-06 16:11:34 +00:00
Olivier Martin 34b292fa9e EmbeddedPkg/EmbeddedPkg.dec: Defined default values for PcdPrePiCpuMemorySize & PcdPrePiCpuIoSize
This change introduces default values for the PCDs PcdPrePiCpuMemorySize & PcdPrePiCpuIoSize.
These values are for the architectures ARM, AARCH64, IA32 and X64.

The redefinition of these PCDs (with the same default values) have been removed from the DSC files.

Note: the default value for AARCH64 was 32. It was preventing to allocate buffer above the 32bit
address space.

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@14914 6f19259b-4bc3-4df7-8a09-765794883524
2013-11-28 21:40:14 +00:00
Olivier Martin d4c92adef7 ArmPlatformPkg/ArmVExpressLibCTA9x4: Fixed the initial secondary core bringup when remapping DRAM at 0x0
If the DRAM is remapped at 0x0 then we need to wake up the secondary cores from wfe
(waiting for the memory to be initialized) as the instruction is still in the remapped
flash region at 0x0 to make them jumping into the C-code which lives in the NOR1 at 0x44000000 before
the region 0x0 is remapped as DRAM.

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@14910 6f19259b-4bc3-4df7-8a09-765794883524
2013-11-28 21:38:32 +00:00
Olivier Martin 54ed21dbbb ArmPlatformPkg/ArmVExpressPkg: Removed unused PCDs declaration from INF file
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@14907 6f19259b-4bc3-4df7-8a09-765794883524
2013-11-28 21:37:10 +00:00
Olivier Martin 8c6ab85790 ArmPlatformPkg/ArmVExpressPkg: Fixed when EDK2_ARMVE_STANDALONE is set to zero
If EDK2_ARMVE_STANDALONE is not defined then the value is set to 1.
The developer has to explicit set the macro to zero to build a non standalone build.
It means this macro is always defined.

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@14906 6f19259b-4bc3-4df7-8a09-765794883524
2013-11-28 21:36:17 +00:00
Olivier Martin 75f630347c ArmPlatformPkg: Added initial support for the FVP Base and Foundation Models
The FVP Base Model has GICv3 support.
UEFI SEC does limited configuration of GICv3 if present. This is required for Linux to use GICv3.
UEFI itself uses the GICv3 in legacy mode (GICv2).

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@14824 6f19259b-4bc3-4df7-8a09-765794883524
2013-11-05 18:10:36 +00:00
Olivier Martin 017baa1cf3 ARM Packages: Renamed PL390Gic driver into ArmGic driver
The aim is to make this driver follows the ARM GIC specifications and
be implementation independent.

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@14810 6f19259b-4bc3-4df7-8a09-765794883524
2013-10-29 06:36:34 +00:00
Olivier Martin 0171906d10 ArmPlatformPkg: Update AArch64 models to match the binaries generated by the AArch64 Linux kernel
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@14627 6f19259b-4bc3-4df7-8a09-765794883524
2013-09-04 09:38:53 +00:00
Girish K S 98fed08f9f SCR_EL3 is the control register for setting the security state
modified the comment which can mislead.

The "ldr r0, [r1]" is overrided with a immediate "mov ro, #3"
instruction. This mov instruction will over write the contents
of the ro register. So replacing 'mov' by 'orr' instruction would
prevent to override the original value.

This patch assumes mov is the right instruction to be retained

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Girish K S <ks.giri@samsung.com>
Signed-off-by: Olivier Martin <olivier.martin@arm.com>



git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14606 6f19259b-4bc3-4df7-8a09-765794883524
2013-08-27 09:17:20 +00:00
Olivier Martin 18e44b07d4 ArmPlatformPkg/ArmVExpressPkg: Added 'EfiResetPlatformSpecific' to ResetSystemLib
This value was missing from the switch on 'ResetType'.

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@14583 6f19259b-4bc3-4df7-8a09-765794883524
2013-08-21 14:45:02 +00:00
Olivier Martin a639401d2f ArmPlatformPkg/ArmVExpressPkg: Set PcdTrustzoneSupport to TRUE on the AArch64 platforms
This PCD ensures the transition from EL3 to EL2 in ArmPlatformPkg/Sec.

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@14579 6f19259b-4bc3-4df7-8a09-765794883524
2013-08-21 12:04:57 +00:00
Olivier Martin 48999d26c5 ArmPlatformPkg/ArmVExpressPkg: Add System ID of FVP models to VE LCD driver.
- Setting DVI fails on VE models. The FVP models behave the same.
  These have updated SYS ID numbers and they need to be added to the
  driver.

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@14564 6f19259b-4bc3-4df7-8a09-765794883524
2013-08-19 17:35:18 +00:00
Olivier Martin 4ca88ec73f ArmPlatformPkg/ArmVExpress.dsc.inc: Added DEBUG_GCD & DEBUG_CACHE values to the list of DEBUG_*
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@14563 6f19259b-4bc3-4df7-8a09-765794883524
2013-08-19 17:34:17 +00:00
Harry Liebel f9cec5f1d9 ArmPlatformPkg: Added Aarch64 Foundation Model
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@14495 6f19259b-4bc3-4df7-8a09-765794883524
2013-07-19 00:07:16 +00:00
Harry Liebel 27be3601d2 ArmPlatformPkg: Added support for Aarch64 AEM RTSM model
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@14490 6f19259b-4bc3-4df7-8a09-765794883524
2013-07-18 19:53:43 +00:00
Olivier Martin da275244e3 ArmPkg: Removed the non-used PCD PcdGicPrimaryCoreId
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@14480 6f19259b-4bc3-4df7-8a09-765794883524
2013-07-17 06:26:10 +00:00
Olivier Martin e8ee4b2d43 ArmPlatformPkg/ArmVExpressLibCTA15-A7: Mapped the extra 1GB of DRAM in the MMU
ARM Versatile Express TC2 Core Tile has two profiles: the 1GB DRAM core tile or
the 2GB DRAM core tile profiles.
By default UEFI assumes, it is the 1GB core tile. In case of 2GB DRAM it declares
this additional 1GB resource system memory to UEFI. But the previous code did
not map this memory in the MMU Page Table.
So, the memory was allocatable by UEFI modules, but was not accessible by the CPU
(because not mapped).

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Olivier Martin <olivier.martin@arm.com>
Reviewed-by: Leif Lindholm <Leif.Lindholm@linaro.org>




git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14449 6f19259b-4bc3-4df7-8a09-765794883524
2013-07-01 14:14:37 +00:00
Olivier Martin e7c578c902 ArmPlatformPkg: Fixed deprecated ifdef syntax in DSC files
The syntax '!ifdef $(MACRO)' is deprecated and should be replaced by '!ifdef MACRO'.

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@14440 6f19259b-4bc3-4df7-8a09-765794883524
2013-06-21 11:08:17 +00:00
Ryan Harkin cae32cfeb2 ArmPlatformPkg/ArmVExpressPkg: CTA9x4: Default to EDK2_ARMVE_STANDALONE=1
This patch changes the Versatile Express A9 BSP to build with
EDK2_ARMVE_STANDALONE=1 as the default option.

The user may then specify zero if they wish to build the non-standalone
version.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ryan Harkin <ryan.harkin@linaro.org>
Signed-off-by: Olivier Martin <olivier.martin@arm.com>



git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14439 6f19259b-4bc3-4df7-8a09-765794883524
2013-06-21 10:59:53 +00:00
Ryan Harkin e375b7e0bd ArmPlatformPkg/ArmVExpressPkg: Add Shutdown support
LibResetSystem was performing a cold reboot for both reboot and
shutdown.

This patch updates LibResetSystem to pass SYS_CFG_SHUTDOWN to the
microcontroller when called wit EfiResetShutdown.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ryan Harkin <ryan.harkin@linaro.org>
Reviewed-by: Olivier Martin <olivier.martin@arm.com>



git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14438 6f19259b-4bc3-4df7-8a09-765794883524
2013-06-21 10:09:50 +00:00
Olivier Martin 9d94fa2da2 ArmPlatformPkg/ArmVExpressLibCTA15-A7: Fixed ARM Toolchain build
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@14429 6f19259b-4bc3-4df7-8a09-765794883524
2013-06-19 17:58:26 +00:00
Olivier Martin 9e2e89f013 ArmPlatformPkg: Fixed size of RTSM FDs
The size of the FDs did not match the FD layout.

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@14426 6f19259b-4bc3-4df7-8a09-765794883524
2013-06-17 09:52:51 +00:00
oliviermartin 1cb7c11957 ArmPlatformPkg/ArmVExpressPkg: Switch from ATAG to FDT for VExpress RTSM
The FDT name are the one from Linaro release.

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@14348 6f19259b-4bc3-4df7-8a09-765794883524
2013-05-12 23:46:47 +00:00
oliviermartin b5a572238d ArmPlatform/ArmPlatformLib: Introduced ArmPlatformPeiBootAction()
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-10 12:49:10 +00:00
oliviermartin 2d45f194d9 ARM Packages: Replaced the macro GetCorePositionFromMpId() by the ArmPlatformGetCorePosition()
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@14346 6f19259b-4bc3-4df7-8a09-765794883524
2013-05-10 12:46:11 +00:00
oliviermartin d05ca26cb8 ArmPlatformPkg/ArmPlatformLib: Added ArmPlatformGetPrimaryCoreMpId()
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-10 12:44:30 +00:00
oliviermartin bebda7ceec ArmPlatformPkg/ArmPlatformLib: Added support for ArmPlatformIsPrimaryCore()
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-05-10 12:41:27 +00:00
oliviermartin 72647f1901 ArmPlatformPkg: Remove an unused function.
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-04-14 09:32:45 +00:00
oliviermartin faf74130d6 Remove unused L2 controller PCD from platform files.
Only the Cortex A9 based platforms have an external L2 controller.

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@14269 6f19259b-4bc3-4df7-8a09-765794883524
2013-04-14 09:31:47 +00:00
oliviermartin 9f5c60c38b ArmPlatformPkg/CTA15-A7: Add a convenient way to restore default values in NOR flash.
Setting bit4 of SCC register 48 now triggers the erasing of the memory region
reserved for variable storage in NOR flash and the restoration of the default
headers in flash.

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@14177 6f19259b-4bc3-4df7-8a09-765794883524
2013-03-12 00:43:58 +00:00
oliviermartin d38c35f9f7 EmbeddedPkg: Introduced a separate SerialPortExtLib library
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-12 00:40:11 +00:00
oliviermartin 166c01fbc2 ArmPkg: Move ArmSmcLib from ArmPlatformLib to ArmPkg
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-03-06 00:01:49 +00:00
oliviermartin 1e57a46299 ARM Packages: Fixed line endings
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
2013-01-25 11:28:06 +00:00
oliviermartin 295c2eb804 ArmPlatformPkg/ArmVExpress-CTA15-A7: Added support for CoreTile Express A15x2_A7x3
This is the big.LITTLE test chip for ARM Versatile Express Motherboard.

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



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13775 6f19259b-4bc3-4df7-8a09-765794883524
2012-09-28 11:09:36 +00:00
oliviermartin 17839a45b8 ArmPlatformPkg/ArmPlatformStackLib: Introduced helper library to initialize 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-28 11:01:36 +00:00
oliviermartin 21de944e03 ARM Packages: Moved ARM assembly files to 'Arm' subdirectory
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-28 10:52:16 +00:00
oliviermartin 695df8ba90 ArmPlatformPkg: Introduction of gArmPlatformTokenSpaceGuid.PcdCoreCount
On ARM PLatforms, there is no standard way to know how many cores are
available on the platform.
This PCD is expected to contain this number.

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



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13769 6f19259b-4bc3-4df7-8a09-765794883524
2012-09-28 10:43:28 +00:00
oliviermartin 0a6653bc2a ArmPkg/BdsLib: Added FDT support for BdsLib
Signed-off-by: Olivier Martin <olivier.martin@arm.com>



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13768 6f19259b-4bc3-4df7-8a09-765794883524
2012-09-28 09:58:42 +00:00
oliviermartin 619b399888 ArmPkg/DefaultExceptionHandlerLib: Added support to the BASE-type library
This library could be used before the UEFI phases to expose the CPU state
when an unexpected exception interrupt the firmware.

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



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13767 6f19259b-4bc3-4df7-8a09-765794883524
2012-09-28 09:55:48 +00:00
oliviermartin 9d6b024ded ArmPlatformPkg/Sec: Moved Exception Vector Table to ArmPkg/DebugAgentBaseLib
In case a DebugAgent library is supported for a specific debugger, we would
expect the exception be caught by DebugAgentLib.
The DebugAgentBaseLib exposes the cause of the exception to the user in the
Serial Terminal.

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



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13765 6f19259b-4bc3-4df7-8a09-765794883524
2012-09-28 09:52:11 +00:00
oliviermartin 751915bcd9 ArmPlatformPkg/ArmVExpress-CTA9x4.dsc: Fixed build
Removed unavailable driver.



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13761 6f19259b-4bc3-4df7-8a09-765794883524
2012-09-27 22:25:56 +00:00
oliviermartin e1772adfef ARM Packages: Replaced the build of Fat driver and EBL by the binaries of Fat driver and UEFI Shell
Signed-off-by: Olivier Martin <olivier.martin@arm.com>



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13758 6f19259b-4bc3-4df7-8a09-765794883524
2012-09-27 15:31:54 +00:00
oliviermartin ba8bd8ce71 ArmPlatformPkg/VExpressMotherBoard.h: Added more motherboard definitions
Signed-off-by: Olivier Martin <olivier.martin@arm.com>



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13746 6f19259b-4bc3-4df7-8a09-765794883524
2012-09-26 20:22:37 +00:00
oliviermartin a08dcb2ab1 ArmPlatformPkg/ArmVExpressPkg: Fixed build issue
ConSpillter now requires DxeServicesLib.



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13578 6f19259b-4bc3-4df7-8a09-765794883524
2012-08-01 10:07:33 +00:00
oliviermartin b113ddc3d8 ArmPlatformPkg/ArmVExpressLibCTA9x4: Fixed build
Signed-off-by: Olivier Martin <olivier.martin@arm.com>




git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13523 6f19259b-4bc3-4df7-8a09-765794883524
2012-07-11 18:57:31 +00:00
oliviermartin 92034e14da ARM Packages: Clean code (Remove unused PCDs, ...)
Signed-off-by: Olivier Martin <olivier.martin@arm.com>



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13494 6f19259b-4bc3-4df7-8a09-765794883524
2012-07-04 20:12:29 +00:00
oliviermartin 2575b72620 ArmPkg: Fixed RVCT compiler warnings
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-07-04 20:06:23 +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 e314d564db ArmPlatformPkg: Introduced 'ArmPlatformSecLib'
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-02 20:13:32 +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 f437141a9c ArmPlatformPkg: Renamed and Invoked earlier ArmPlatformNormalInitialize()
- 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-05-02 19:49:35 +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 ff4d6bb315 ArmPlatformPkg: Fixed build after latest BaseTools syncup
BaseTools now raises an error when a PCD is not declared in a DEC.
This change:
- Remove undeclared PCDs
- Add PCD declaration to DEC file

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@13195 6f19259b-4bc3-4df7-8a09-765794883524
2012-04-13 10:17:39 +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 793ae6eeb3 ARM Packages: Added the NULL implementation of CpuExceptionHandlerLib
This NULL implementation should not affect the existing code flow and
avoid the builds to be broken by a missing dependency.
In a longer term, an implementation of CpuExceptionHandlerLib should
be provided for ARM architecture.

Signed-off-by: oliviermartin



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13103 6f19259b-4bc3-4df7-8a09-765794883524
2012-03-15 16:03:41 +00:00
oliviermartin af0283b82b ArmPlatformPkg/ArmPlatformSysConfigLib: Removed dependency on Uefi.h since it is a Base Library
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13072 6f19259b-4bc3-4df7-8a09-765794883524
2012-02-29 17:21:17 +00:00
oliviermartin 911da88693 ArmPlatformPkg/ArmPlatformSysConfigLib: Add function 'ArmPlatformSysConfigGetValues'
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13066 6f19259b-4bc3-4df7-8a09-765794883524
2012-02-28 17:35:03 +00:00
oliviermartin 68dda854c6 ArmPlatformPkg/NorFlashDxe: Fixed CFI NOR Flash driver
CFI Flash differentiates DeviceBaseAddress with BlockAddress in
its protocol. The DeviceBaseAddress was not considered in the
previous version of this driver.
This version also fixes some bugs in the implementation of the
CFI protocol.

This new version also uses the Boot Mode Hob to reinitialized the
FVB when Boot Mode is equal to BOOT_WITH_DEFAULT_SETTINGS.



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13064 6f19259b-4bc3-4df7-8a09-765794883524
2012-02-28 17:32:47 +00:00
oliviermartin 8cc852f791 ArmPlatformPkg: Move the Secure Monitor initialization into a separate 'ArmTrustedMonitorLib' library
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13059 6f19259b-4bc3-4df7-8a09-765794883524
2012-02-28 17:27:15 +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 947a14a0a8 ArmPlatformPkg: Fix ARM EB and VE builds
The EDID protocol defintions were missing from their ArmPlatformLcdLib.inf INF files.



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12878 6f19259b-4bc3-4df7-8a09-765794883524
2011-12-15 18:54:18 +00:00
oliviermartin 53f39c6c9a ArmPlatformPkg/ArmVExpressPkg: Add PL180 MCI support to ARM RTSM
The MMC controller is accessible through the ARM RTSM model.
A filesystem can be added on a MMC file to be accessible through the 
UEFI firmware running on RTSM.



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12862 6f19259b-4bc3-4df7-8a09-765794883524
2011-12-14 10:43:36 +00:00