summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2014-04-16FVP duplicate GUID fixup.Leif Lindholm
2014-04-16Merge remote-tracking branch 'rmt-1/linaro-topic-leg-fvp-acpi' into release-prepLeif Lindholm
2014-04-16Merge remote-tracking branch 'rmt-1/linaro-topic-2014.04-backports' into ↵Leif Lindholm
release-prep
2014-04-16ArmPlatformPkg/NorFlashDxe: Fixed driver to support UEFI Runtime modeOlivier Martin
- Added the NOR Flash region to the Runtime UEFI Memory Mapped IO - Caught the gEfiEventVirtualAddressChangeGuid event to fixup the NOR Flash pointers 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@15438 6f19259b-4bc3-4df7-8a09-765794883524
2014-04-16ArmPlatformPkg/NorFlashDxe: Fix coding mistakes that would prevent Runtime modeOlivier Martin
- No allocation during Runtime mode (post ExitBootServices()) - Allocate all the persistent data into runtime space - Do not access BootServices API during Runtime mode 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@15437 6f19259b-4bc3-4df7-8a09-765794883524
2014-04-16ArmPlatformPkg/NorFlashDxe: Declare the driver as a UEFI Runtime driverOlivier Martin
NorFlash driver is required by UEFI Variable services to read/write Non-Volatile UEFI variables. 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@15436 6f19259b-4bc3-4df7-8a09-765794883524
2014-04-16ArmPlatformPkg/PL031RealTimeClock: Fixed driver to support UEFI Runtime ServicesOlivier Martin
- Removed PCD base address from the macro definition. The base address needs to be fixup when the driver runs in UEFI Runtime mode - Added the PL031 controller memory region to the Runtime UEFI Memory Mapped IO - Caught the gEfiEventVirtualAddressChangeGuid event to fixup the PL031 Base address 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@15435 6f19259b-4bc3-4df7-8a09-765794883524
2014-04-16ArmPlatformPkg/PrePi: Use the same calculation to declare the stack size as ↵Olivier Martin
in the entrypoint The stack size in the entrypoint (ie: $ARCH/ModuleEntryPoint.S) is calculated such as StackSize = PrimaryCoreStack + (core_count - 1) * SecondaryCoreStack While we were declaring the stacksize into the stack hob as: StackSize = PrimaryCoreStack + (cluster * 8) * SecondaryCoreStack If the number of cluster (ie: PcdClusterCount) were not defined correctly then the stack size declaration were not correct. It could cause stack corruption if the allocator allocates memory in this range. 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@15431 6f19259b-4bc3-4df7-8a09-765794883524
2014-04-16Temporary merge hack for network INFs.Leif Lindholm
2014-04-16merge fixupLeif Lindholm
2014-04-16ArmPlatformPkg/ArmVExpressPkg: add acpi supportGraeme Gregory
ASL files taked from http://git.linaro.org/arm/acpi/acpi-asl.git for the FVP Base model. Signed-off-by: Graeme Gregory <graeme.gregory@linaro.org>
2014-04-11ArmPkg: Fixed GetEnvironmentVariable() when the UEFI Variable did not existOlivier Martin
The function was allocating a buffer for the read value from the UEFI Variable. But it was returning the pointer of the default value when the variable was not present. It could cause error when the default value and the returned value were free when these addresses were the same (double FreePool on the same address). 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@15427 6f19259b-4bc3-4df7-8a09-765794883524
2014-04-07Merge remote-tracking branch 'rmt-1/linaro-topic-pxeboot' into release-prepSteven Kinney
2014-04-07Merge remote-tracking branch 'rmt-1/linaro-topic-misc' into release-prepSteven Kinney
2014-04-07Merge remote-tracking branch 'rmt-1/linaro-topic-leg-fvp-acpi' into release-prepSteven Kinney
2014-04-07Merge remote-tracking branch 'rmt-1/linaro-topic-leg' into release-prepSteven Kinney
2014-04-07Merge remote-tracking branch 'rmt-1/linaro-topic-bds' into release-prepSteven Kinney
2014-04-07Merge remote-tracking branch 'rmt-1/linaro-platform-panda' into release-prepSteven Kinney
2014-04-07Merge remote-tracking branch 'rmt-1/linaro-platform-arndale' into release-prepSteven Kinney
2014-04-07Merge remote-tracking branch 'rmt-0/linaro-platform-tc2' into release-prepSteven Kinney
2014-04-07Merge remote-tracking branch 'rmt-0/linaro-platform-tc1' into release-prepSteven Kinney
2014-04-07Merge remote-tracking branch 'rmt-0/linaro-platform-ref64' into release-prepSteven Kinney
2014-04-07Merge remote-tracking branch 'rmt-0/linaro-platform-fvp' into release-prepSteven Kinney
2014-04-07Merge remote-tracking branch 'rmt-0/linaro-platform-a9' into release-prepSteven Kinney
2014-04-07ArmPlatformPkg/ArmVExpressPkg: add acpi supportGraeme Gregory
ASL files taked from http://git.linaro.org/arm/acpi/acpi-asl.git for the FVP Base model. Signed-off-by: Graeme Gregory <graeme.gregory@linaro.org>
2014-04-04ArmPlatformPkg: Added Juno platformOlivier Martin
Change-Id: I11176b5e6730cc7aab535affa91237d47c144803
2014-04-02SMBIOS:VE: Add SMBIOS support for ARM VE modelsYi Li
Add SMBIOS support for VExpress boards, but only support ARM32 architecture as the SMBIOS spec 2.8 doesn't define the ARM64 filed in TYPE4. After the spec updated, we can add the support for ARM64 also. Only for ArmVExpress-RTSM-A15-MPCore and ArmVExpress-CTA15-A7 two models. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yi Li <yi.li@linaro.org> Signed-off-by: Steven Kinney <steven.kinney@linaro.org>
2014-04-02SMBIOS:ARM: Add SMBIOS base driver on ARM PlatformYi Li
Add SMBIOS support on ARM platforms, constructing and updating 10 basic tables required by SMBIOS spec 2.7.1. The codes are derived from PlatformSmbiosDxe in EmulatorPkg. Some static data need to modify to match a real board. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yi Li <yi.li@linaro.org> Signed-off-by: Steven Kinney <steven.kinney@linaro.org>
2014-04-02LAN91x: Set SNP current MAC address in entry functionRoy Franz
Set the current (permanent was already being set) in the driver entry function. This allows the driver to be connected to before it is initialized. Signed-off-by: Roy Franz <roy.franz@linaro.org> Contributed-under: TianoCore Contribution Agreement 1.0
2014-04-02LAN9118: set SNP MAC in entry functionRoy Franz
Set the MAC addresses in the SNP function in the entry point, rather than the initialization function. This allows the driver to be bound to before being initialized. Without this change there is the unhandled requirement that the LAN9118 driver be initialized before the ip4 driver binds to it. Signed-off-by: Roy Franz <roy.franz@linaro.org> Contributed-under: TianoCore Contribution Agreement 1.0
2014-04-02Mnp Error handlingRoy Franz
Change MnpGetModeData() handling of return status from SnpStatus to not consider EFI_NOT_STARTED an error, similar to how Ip4ConfigDriverBindingStart() handles it. Without this change, Ip4ConfigDriverBindingStart() considers the Mnp->GetModeData successful even though the SnpMode parameter is unchanged, and is full of unitialized stack data. If this change is not correct, then other error handling changes need to be made in Ip4ConfigDriverBindingStart() so that uninitialized data from the stack is not used. Signed-off-by: Roy Franz <roy.franz@linaro.org> Contributed-under: TianoCore Contribution Agreement 1.0
2014-04-02LAN9118: Fix RELEASE build and some uninit variablesReece R. Pollack
The restructuring of the synchronization introduced or exposed some uninitialized variables. This patch fixes these. Also, the RELEASE build produced some warnings about an unused function used only from within DEBUG() statements. This patch conditionalizes this debug-only function on the same define used to control the expansion of the DEBUG macro. Signed-off-by: Reece R. Pollack <reece.pollack@linaro.org>
2014-04-02ArmPlatformPkg: Added LAN91x Dxe driverReece R. Pollack
Added a driver for the SMSC LAN91x Ethernet controllers, such as the 91C111 emulated in the ARM RTSM development simulators. Note that per-CPU support patches are committed in their respective branches rather than here. Signed-off-by: Reece R. Pollack <reece.pollack@linaro.org>
2014-04-02ArmPlatformPkg: Added LAN9118 Dxe driverReece R. Pollack
Added a driver for the SMSC LAN9118 Ethernet controller, used on the baseboard of the Versatile Express reference system. Note that per-CPU support patches are committed in their respective branches rather than here. Signed-off-by: Reece R. Pollack <reece.pollack@linaro.org>
2014-04-02MdeModulePkg//ArpDxe: Retrieved SnpMode only after configuring SnpOlivier Martin
When Arp driver starts (with ArpDriverBindingStart()), its service will be created and the Mnp child configured (ArpService->Mnp->Configure() called in ArpCreateService()). It is only at this time the Snp protocol will be initialized (at the end of MnpStart()). So, a valid SnpMode could not be expected prior to ArpService->Mnp->Configure(). Signed-off-by: Olivier Martin <olivier.martin@arm.com>
2014-04-02MdeModulePkg/MnpDxe: Checked returned value of Snp->GetStatus()Olivier Martin
... as explicitly said by the comment. Signed-off-by: Olivier Martin <olivier.martin@arm.com> Change-Id: Id9fd51dd5510d6acd04fe2c323a901248c4b85c3
2014-04-02Add build option to support VExpress A15 QEMU network emulationRoy Franz
This patch adds an EDK2_ARMVE_SUPPORT_QEMU macro that can be defined at build time to build an image that supports networking on the QEMU VExpress A15 platform. The default build is unchanged and builds the RTSM configuration. The RTSM VExpress model emulates a different networking controller (91C111) than the VExpress board (9118). QEMU emulates the 9118 which matches the real hardare. Defining the EDK2_ARMVE_SUPPORT_QEMU macro configures the build to use the 9118 networking driver. Signed-off-by: Roy Franz <roy.franz@linaro.org> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Steven Kinney <steven.kinney@linaro.org>
2014-04-02LAN91x Driver: Add the LAN91x driver to the A9 RTSM buildRyan Harkin
Signed-off-by: Ryan Harkin <ryan.harkin@linaro.org> Signed-off-by: Steven Kinney <steven.kinney@linaro.org>
2014-04-02LAN91x Driver: Add the LAN91x driver to the multi-core A15 RTSM buildReece R. Pollack
Signed-off-by: Reece R. Pollack <reece.pollack@linaro.org> Signed-off-by: Steven Kinney <steven.kinney@linaro.org>
2014-04-02LAN91x Driver: Add the LAN91x driver to the single-core A15 RTSM buildReece R. Pollack
Similar changes will be required to any RTSM build that is to include the new LAN91x network interface driver. This one is ONLY for the A15x1 model. Signed-off-by: Reece R. Pollack <reece.pollack@linaro.org> Signed-off-by: Steven Kinney <steven.kinney@linaro.org>
2014-04-02Add EDK2 sub-dir for Android buildsRyan Harkin
Android builds assume there is still an edk2 sub-directory in the repository. To get around this, I've added a softlink to make the edk2 sub-dir point to the top level directory, to fool the build system into thinking we have one. Signed-off-by: Ryan Harkin <ryan.harkin@linaro.org> Signed-off-by: Steven Kinney <steven.kinney@linaro.org>
2014-04-02RTSM-A15_MPCore: add EDK2_OUT_DIR supportRyan Harkin
Allow the build to specify where to put the output directory. Signed-off-by: Ryan Harkin <ryan.harkin@linaro.org> Signed-off-by: Steven Kinney <steven.kinney@linaro.org>
2014-04-02RTSM-A15: add EDK2_OUT_DIR supportRyan Harkin
Allow the build to specify where to put the output directory. Signed-off-by: Ryan Harkin <ryan.harkin@linaro.org> Signed-off-by: Steven Kinney <steven.kinney@linaro.org>
2014-04-02RTSM-A9x4: add EDK2_OUT_DIR supportRyan Harkin
Allow the build to specify where to put the output directory. Signed-off-by: Ryan Harkin <ryan.harkin@linaro.org> Signed-off-by: Steven Kinney <steven.kinney@linaro.org>
2014-04-02Raise Tpl to protect MMC against Timer eventsRyan Harkin
Raise Tpl to protect MMC against Timer events between command and block IO An attempt to improve reliability of the MMC card on TC2 when booting with the A7 core. Signed-off-by: Ryan Harkin <ryan.harkin@linaro.org> Signed-off-by: Steven Kinney <steven.kinney@linaro.org>
2014-04-02Added .gitignoreRyan Harkin
Signed-off-by: Ryan Harkin <ryan.harkin@linaro.org> Signed-off-by: Steven Kinney <steven.kinney@linaro.org>
2014-04-02MdeModulePkg/PartitionDxe: hack MBR unique signature to zeroRyan Harkin
This is a hack and is not intended to go upstream, but will be useful for Linaro's short term goals. Linaro's development boards use SD cards, currently we have a problem where each unique SD card has a different UUID when created with linaro-media-create / linaro-android-media create. This means that no one Boot Device configuration can boot Linaro images without some manual intervention from the user. This hack will zero the signature (UUID) read from the card meaning that all SD cards will appear to be the same card. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ryan Harkin <ryan.harkin@linaro.org> Signed-off-by: Steven Kinney <steven.kinney@linaro.org>
2014-04-02MmcDxe: fixes sd card identification on pandaOlivier Deprez
It is observed with few SD cards that the protocol is hanging after issuing cmd5 and before cmd8. Adding a small delay inbetween recovers and driver bring up is continuing without problem. Signed-off-by: Steven Kinney <steven.kinney@linaro.org>
2014-04-02ArmPkg/ArmLib: Revert data cache clean/disable order when turning MMU onRyan Harkin
Part of the change to ArmPkg/Library/BdsLib/BdsLinuxLoader.c causes A9 to hang when booting the kernel, so I reverted the change that caused the problem. Signed-off-by: Ryan Harkin <ryan.harkin@linaro.org> Signed-off-by: Steven Kinney <steven.kinney@linaro.org>
2014-04-02Move RTSM/FVP VExpress variable storage to 256k flash blocksRoy Franz
Change the addresses/sizes of the variable storage areas to use 256k blocks so UEFI is compatible with both the RTSM/FVP models and QEMU. The VExpress flash has non-uniform block sizes, with most blocks being 256k and the top 4 blocks being 64k. UEFI has been using these top 64k blocks for persistent variable storage. The RTSM models the non-uniform sizes, while QEMU only supports emulating flash with uniform block sizes which results in the top 256k (the 4 64k blocks) of flash being unusable for writing in QEMU. The ARM UEFI flash implementation only supports Firmware Volumes at the start of a flash region, so the variable storage is moved to the base of the second NOR flash. Note that this change will require RTSM flash images to be updated, as the variable storage has moved. This patch only updates the RTSM configurations for the A15 VExpress platform, as that is currently the only configuration of QEMU that supports booting UEFI. Signed-off-by: Roy Franz <roy.franz@linaro.org> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Steven Kinney <steven.kinney@linaro.org>