summaryrefslogtreecommitdiff
path: root/ArmVirtPkg
AgeCommit message (Collapse)Author
2015-07-07ArmVirtPkg/ArmVirt.dsc.inc: Fixed BuildOptionsOlivier Martin
The linker script is specific to GCC toolchain. So, this script will not work with other linkers (eg: ARM Toolchain Linker, Microsoft Linker, etc). Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Olivier Martin <Olivier.Martin@arm.com> Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17865 6f19259b-4bc3-4df7-8a09-765794883524
2015-07-07ArmVirtPkg: use correct ASM decoration for non-function global symbolsArd Biesheuvel
This fixes the declaration and definition of mSystemMemoryEnd so that it is correctly annotated as a non-function symbol. Also adds the ASM_PFX prefix, which is empty on AARCH64 but should be included for correctness. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17861 6f19259b-4bc3-4df7-8a09-765794883524
2015-07-06ArmVirtPkg: adapt ArmVirtXen build to system memory end global variableArd Biesheuvel
This fixes the ArmVirtXen build that was broken by r17835, which adds a global variable mSystemMemoryEnd which is shared between a module and a library it depends on. Add the same global variable to the relocatable PrePi used by ArmVirtXen. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Acked-by: Laszlo Ersek <lersek@redhat.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17837 6f19259b-4bc3-4df7-8a09-765794883524
2015-07-06ArmVirtPkg: build runtime drivers with 64 KB section alignmentArd Biesheuvel
This adds the 64 KB alignment overlay linker script to the linker command line of DXE_RUNTIME_DRIVER modules. This makes these modules compatible with the new Properties Table feature by aligning the .text and .data sections to 64 KB. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Olivier Martin <Olivier.Martin@arm.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17825 6f19259b-4bc3-4df7-8a09-765794883524
2015-07-02Revert tree to r17801Jordan Justen
Revert r17802 "BaseTools: AArch64: use explicit linker scripts" Revert r17803 "ArmVirtPkg: build runtime drivers with 64 KB section alignment" Revert r17804 "IntelFrameworkModulePkg: AcpiS3SaveDxe: prepare for End-of-Dxe callback" Revert r17805 "IntelFrameworkModulePkg: AcpiS3SaveDxe: call S3Ready() at End-of-Dxe" Revert r17806 "OvmfPkg: AcpiS3SaveDxe: prepare for End-of-Dxe callback" Requested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17807 6f19259b-4bc3-4df7-8a09-765794883524
2015-07-02ArmVirtPkg: build runtime drivers with 64 KB section alignmentArd Biesheuvel
This adds the 64 KB alignment overlay linker script to the linker command line of DXE_RUNTIME_DRIVER modules. This makes these modules compatible with the new Properties Table feature by aligning the .text and .data sections to 64 KB. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17803 6f19259b-4bc3-4df7-8a09-765794883524
2015-07-01ArmVirtPkg: Use the merged Variable driverStar Zeng
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Tested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17770 6f19259b-4bc3-4df7-8a09-765794883524
2015-07-01ArmVirtPkg: Cleanup redundant library class resolution of Variable modulesStar Zeng
SecurityPkg/VariableAuthenticated/Pei/VariablePei.inf doesn't consume BaseCryptLib directly or indirectly, cleanup it. SecurityPkg/VariableAuthenticated/Pei/VariablePei.inf { <LibraryClasses> BaseCryptLib|CryptoPkg/Library/BaseCryptLib/PeiCryptLib.inf } BaseCryptLib has been declared at [LibraryClasses.common.DXE_RUNTIME_DRIVER] section in ArmVirt.dsc.inc. OpensslLib has been declared at [LibraryClasses.common] section in ArmVirt.dsc.inc. So cleanup them. SecurityPkg/VariableAuthenticated/RuntimeDxe/VariableRuntimeDxe.inf { <LibraryClasses> BaseCryptLib|CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf } Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Tested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17769 6f19259b-4bc3-4df7-8a09-765794883524
2015-07-01ArmVirtPkg: Link AuthVariableLib for following merged variable driver deployStar Zeng
AuthVariableLib and TpmMeasurementLib library classes are now linked with MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf to optionally support secure variables. For ArmVirtPkg, link AuthVariableLib and DxeTpmMeasurementLib in SecurityPkg when SECURE_BOOT_ENABLE = TRUE, and link AuthVariableLibNull and TpmMeasurementLibNull in MdeModulePkg when SECURE_BOOT_ENABLE = FALSE. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Tested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17763 6f19259b-4bc3-4df7-8a09-765794883524
2015-06-25ArmVirtPkg: signal EndOxDxe event in PlatformBsdInitArd Biesheuvel
Currently, the ArmVirtPkg platforms built with the Intel BDS fail to signal the end-of-DXE event 'gEfiEndOfDxeEventGroupGuid' when entering the BDS phase, which results in some loss of functionality, i.e., variable reclaim in the VariableDxe drivers, and the splitting of the memory regions that is part of the recently added UEFI 2.5 properties table feature. As discussed on the edk2-devel mailing list here: http://thread.gmane.org/gmane.comp.bios.tianocore.devel/16088/focus=16109 it is up to the platform BDS to signal that event, since there may be platform specific ordering constraints with respect to the signalling of the event that are difficult to honor at the generic level. So add the SignalEvent () call to PlatformBdsInit () of ArmVirtPkg's PlatformBdsLib implementation for the Intel BDS. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Laszlo Ersek <lersek@redhat.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17713 6f19259b-4bc3-4df7-8a09-765794883524
2015-06-16ArmVirtPkg: increase memory preallocations for secure buildArd Biesheuvel
This is a followup to r17554 ("ArmVirtPkg: increase memory preallocations to reduce region count") that increases the sizes of the preallocated regions to account for the footprint of the crypto and authentication libraries. This is only done if secure boot is enabled at build time, to prevent imposing a larger minimum RAM size on non-secure builds. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Olivier Martin <Olivier.Martin@arm.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17646 6f19259b-4bc3-4df7-8a09-765794883524
2015-06-08ArmVirtPkg: add "Contributions.txt" and "License.txt"Laszlo Ersek
Both files originate from ArmPlatformPkg. The copyright notices at the top of "License.txt" have been refreshed as follows: - I grepped ArmVirtPkg for "copyright", case-insensitively - for each copyright holder company, I unified the intervals to the strictest superset (no absent year was introduced in this process) - I listed the copyright notices in decreasing order of last contribution year. - When a "last contribution year" was shared by several notices, I sorted those between each other in descending "first contribution year" order. Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org> Cc: Olivier Martin <olivier.martin@arm.com> Cc: Jordan Justen <jordan.l.justen@intel.com> Cc: Andrew Fish <afish@apple.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17582 6f19259b-4bc3-4df7-8a09-765794883524
2015-06-08ArmVirtPkg: XenRealTimeClockLib: fixup typo in Linaro copyright noticeLaszlo Ersek
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17581 6f19259b-4bc3-4df7-8a09-765794883524
2015-06-03ArmVirtPkg: increase memory preallocations to reduce region countArd Biesheuvel
This updates the sizes of the preallocated regions so that the number of distinct regions that exists is minimal at the time we exit boot services. For a typical run of the ArmVirtQemu platform, we get the following utilization numbers: Reserved : 4 Pages (16,384 Bytes) LoaderCode: 210 Pages (860,160 Bytes) LoaderData: 0 Pages (0 Bytes) BS_Code : 355 Pages (1,454,080 Bytes) BS_Data : 6,807 Pages (27,881,472 Bytes) RT_Code : 112 Pages (458,752 Bytes) RT_Data : 288 Pages (1,179,648 Bytes) ACPI_Recl : 32 Pages (131,072 Bytes) ACPI_NVS : 0 Pages (0 Bytes) MMIO : 16,385 Pages (67,112,960 Bytes) MMIO_Port : 0 Pages (0 Bytes) PalCode : 0 Pages (0 Bytes) Available : 123,264 Pages (504,889,344 Bytes) -------------- Total Memory: 511 MB (536,854,528 Bytes) Strangely enough, the allocation count of 20,000 pages for BS_Data does not result in those regions being merged. For BS_Code, RT_Code and RT_Data, the increased preallocation results in the following reduction in the number of regions. 0x000040000000-0x00004000ffff [Loader Data | | | | | |WB|WT|WC|UC] - 0x000040010000-0x0000b66bbfff [Conventional Memory| | | | | |WB|WT|WC|UC] - 0x0000b66bc000-0x0000b66d0fff [Loader Data | | | | | |WB|WT|WC|UC] - 0x0000b66d1000-0x0000b6f6bfff [Loader Code | | | | | |WB|WT|WC|UC] - 0x0000b6f6c000-0x0000b6f6ffff [Reserved | | | | | |WB|WT|WC|UC]* - 0x0000b6f70000-0x0000b6f8ffff [Runtime Code |RUN| | | | |WB|WT|WC|UC]* - 0x0000b6f90000-0x0000b6faffff [ACPI Reclaim Memory| | | | | |WB|WT|WC|UC]* - 0x0000b6fb0000-0x0000b6fcffff [Runtime Code |RUN| | | | |WB|WT|WC|UC]* - 0x0000b6fd0000-0x0000b701ffff [Runtime Data |RUN| | | | |WB|WT|WC|UC]* - 0x0000b7020000-0x0000b702ffff [Runtime Code |RUN| | | | |WB|WT|WC|UC]* - 0x0000b7030000-0x0000b70cffff [Runtime Data |RUN| | | | |WB|WT|WC|UC]* - 0x0000b70d0000-0x0000b70dffff [Runtime Code |RUN| | | | |WB|WT|WC|UC]* + 0x000040010000-0x0000b680bfff [Conventional Memory| | | | | |WB|WT|WC|UC] + 0x0000b680c000-0x0000b6820fff [Loader Data | | | | | |WB|WT|WC|UC] + 0x0000b6821000-0x0000b70bbfff [Loader Code | | | | | |WB|WT|WC|UC] + 0x0000b70bc000-0x0000b70bffff [Reserved | | | | | |WB|WT|WC|UC]* + 0x0000b70c0000-0x0000b70dffff [ACPI Reclaim Memory| | | | | |WB|WT|WC|UC]* 0x0000b70e0000-0x0000b9f87fff [Conventional Memory| | | | | |WB|WT|WC|UC] 0x0000b9f88000-0x0000bb921fff [Boot Data | | | | | |WB|WT|WC|UC] 0x0000bb922000-0x0000bb9bffff [Conventional Memory| | | | | |WB|WT|WC|UC] 0x0000bb9c0000-0x0000bbbb0fff [Boot Data | | | | | |WB|WT|WC|UC] 0x0000bbbb1000-0x0000bbbeffff [Conventional Memory| | | | | |WB|WT|WC|UC] 0x0000bbbf0000-0x0000bbf1ffff [Boot Data | | | | | |WB|WT|WC|UC] - 0x0000bbf20000-0x0000bedfffff [Conventional Memory| | | | | |WB|WT|WC|UC] - 0x0000bee00000-0x0000bf71ffff [Loader Data | | | | | |WB|WT|WC|UC] - 0x0000bf720000-0x0000bf7ccfff [Conventional Memory| | | | | |WB|WT|WC|UC] - 0x0000bf7cd000-0x0000bf92ffff [Boot Code | | | | | |WB|WT|WC|UC] - 0x0000bf930000-0x0000bf93ffff [Runtime Code |RUN| | | | |WB|WT|WC|UC]* - 0x0000bf940000-0x0000bf95ffff [Conventional Memory| | | | | |WB|WT|WC|UC] - 0x0000bf960000-0x0000bf97ffff [Runtime Data |RUN| | | | |WB|WT|WC|UC]* + 0x0000bbf20000-0x0000bebfffff [Conventional Memory| | | | | |WB|WT|WC|UC] + 0x0000bec00000-0x0000bf51ffff [Loader Data | | | | | |WB|WT|WC|UC] + 0x0000bf520000-0x0000bf65cfff [Conventional Memory| | | | | |WB|WT|WC|UC] + 0x0000bf65d000-0x0000bf7bffff [Boot Code | | | | | |WB|WT|WC|UC] + 0x0000bf7c0000-0x0000bf84ffff [Runtime Code |RUN| | | | |WB|WT|WC|UC]* + 0x0000bf850000-0x0000bf86ffff [Conventional Memory| | | | | |WB|WT|WC|UC] + 0x0000bf870000-0x0000bf97ffff [Runtime Data |RUN| | | | |WB|WT|WC|UC]* 0x0000bf980000-0x0000bf997fff [Conventional Memory| | | | | |WB|WT|WC|UC] 0x0000bf998000-0x0000bf99afff [Boot Data | | | | | |WB|WT|WC|UC] 0x0000bf99b000-0x0000bf9aefff [Conventional Memory| | | | | |WB|WT|WC|UC] Contributed-under: TianoCore Contribution Agreement 1.0 Reviewed-by: Laszlo Ersek <lersek@redhat.com> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17554 6f19259b-4bc3-4df7-8a09-765794883524
2015-05-29Renamed ArmPlatformPkg/ArmVirtualizationPkg into ArmVirtPkgOlivier Martin
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Olivier Martin <olivier.martin@arm.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> Tested-by: Laszlo Ersek <lersek@redhat.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17537 6f19259b-4bc3-4df7-8a09-765794883524