]> git.proxmox.com Git - mirror_edk2.git/log
mirror_edk2.git
9 years agoArmPkg/SemihostFs: Fix open file issues revealed by SCT
Ronald Cron [Mon, 27 Oct 2014 10:40:33 +0000 (10:40 +0000)]
ArmPkg/SemihostFs: Fix open file issues revealed by SCT

Fix return codes in case of errors.
Fix translation from EFI open mode to semi-hosting open mode to avoid the
truncate to zero length of an already existing file opened in read/write
or read/write/create mode.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ronald Cron <ronald.cron@arm.com>
Reviewed-By: Olivier Martin <olivier.martin@arm.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16241 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoEmbeddedPkg/Lan9118Dxe: Switch back the driver in stopped state after shutdown
Ronald Cron [Mon, 27 Oct 2014 10:39:52 +0000 (10:39 +0000)]
EmbeddedPkg/Lan9118Dxe: Switch back the driver in stopped state after shutdown

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ronald Cron <ronald.cron@arm.com>
Reviewed-By: Olivier Martin <olivier.martin@arm.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16240 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoEmbeddedPkg/Lan9118Dxe: Add or fix input parameter checks
Ronald Cron [Mon, 27 Oct 2014 10:39:12 +0000 (10:39 +0000)]
EmbeddedPkg/Lan9118Dxe: Add or fix input parameter checks

Add or fix checking of the input parameters of the functions that constitute
the EFI_SIMPLE_NETWORK_PROTOCOL interface provided by the LAN9118 driver.
In case of invalid calls, the returned error codes are now compliant with the
UEFI specificationi and the SCT tests checking for those error codes do not
fail anymore.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ronald Cron <ronald.cron@arm.com>
Reviewed-By: Olivier Martin <olivier.martin@arm.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16239 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoArmPkg/SemihostLib: Add library functions
Ronald Cron [Mon, 27 Oct 2014 10:38:18 +0000 (10:38 +0000)]
ArmPkg/SemihostLib: Add library functions

Add library functions to rename a file and get a temporary name
for a file through the semi-hosting interface.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ronald Cron <ronald.cron@arm.com>
Reviewed-By: Olivier Martin <olivier.martin@arm.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16238 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoArmPkg/Semihostlib: Rename semi-hosting open option
Ronald Cron [Mon, 27 Oct 2014 10:37:20 +0000 (10:37 +0000)]
ArmPkg/Semihostlib: Rename semi-hosting open option

Change mnemonic SEMIHOST_FILE_MODE_CREATE with mnemonic SEMIHOST_FILE_MODE_UPDATE.
The bit referred to by this mnemonic is for the semi-hosting open mode code the
equivalent of the + in the ISO C fopen mode terminology. This allows to select the
so called update mode for which both read and write are allowed on the open file.
The mnemonic SEMIHOST_FILE_MODE_UPDATE is more in line with the ISO C fopen mode
terminology. A description of the ISO C fopen modes can be found here :
http://pubs.opengroup.org/onlinepubs/009695399/functions/fopen.html.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ronald Cron <ronald.cron@arm.com>
Reviewed-By: Olivier Martin <olivier.martin@arm.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16237 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoEmbeddedPkg/Lan9118Dxe: Fixed dereferencing optional NULL pointer
Olivier Martin [Mon, 27 Oct 2014 10:35:57 +0000 (10:35 +0000)]
EmbeddedPkg/Lan9118Dxe: Fixed dereferencing optional NULL pointer

TxBuff argument is optional in SNP.GetStatus(). This argument can be NULL.

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@16236 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoEmbeddedPkg: Fix crash when retrieving LAN9118 network statistics
Ronald Cron [Mon, 27 Oct 2014 10:34:56 +0000 (10:34 +0000)]
EmbeddedPkg: Fix crash when retrieving LAN9118 network statistics

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ronald Cron <ronald.cron@arm.com>
Reviewed-By: Olivier Martin <olivier.martin@arm.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16235 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoArmPkg/ArmGic: Added GicV3 support to ArmGicDxe
Olivier Martin [Mon, 27 Oct 2014 10:30:53 +0000 (10:30 +0000)]
ArmPkg/ArmGic: Added GicV3 support to ArmGicDxe

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@16234 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoArmPkg/ArmGic: Added GicV3 support to ArmGicLib
Olivier Martin [Mon, 27 Oct 2014 10:29:50 +0000 (10:29 +0000)]
ArmPkg/ArmGic: Added GicV3 support to ArmGicLib

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@16233 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoArmPkg/ArmGic: Added GicV3 detection
Olivier Martin [Mon, 27 Oct 2014 10:28:44 +0000 (10:28 +0000)]
ArmPkg/ArmGic: Added GicV3 detection

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Olivier Martin <olivier.martin@arm.com>
Signed-off-by: Harry Liebel <Harry.Liebel@arm.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16232 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoArmPkg/ArmGic: Introduced ArmGicGetSupportedArchRevision()
Olivier Martin [Mon, 27 Oct 2014 10:27:27 +0000 (10:27 +0000)]
ArmPkg/ArmGic: Introduced ArmGicGetSupportedArchRevision()

This function returns the revision of the GIC Architecture.
Some GICv3 controllers can work in GICv2 mode. Switching to an
older GIC revision is driven by the higher level exception level.
This function allows code to support any GIC revision at runtime.

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@16231 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoMdePkg/IntelFrameworkPkg HobLib: Add BuildResourceDescriptorWithOwnerHob() API.
Star Zeng [Mon, 27 Oct 2014 00:42:57 +0000 (00:42 +0000)]
MdePkg/IntelFrameworkPkg HobLib: Add BuildResourceDescriptorWithOwnerHob() API.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16230 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoClean not in pub spec comments status codes returned for functions of EFI_TCG_PROTOCOL
Gao, Liming [Fri, 24 Oct 2014 08:35:43 +0000 (08:35 +0000)]
Clean not in pub spec comments status codes returned for functions of EFI_TCG_PROTOCOL

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Gao, Liming <liming.gao@intel.com>
Reviewed-by: Long, Qin <qin.long@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16229 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoUpdate some package owners
Tian, Hot [Thu, 23 Oct 2014 01:35:44 +0000 (01:35 +0000)]
Update some package owners

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Tian, Hot <hot.tian@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16228 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoAdd comments to clarify mPubKeyStore buffer MemCopy. There is no memory overflow...
Chao, Zhang [Wed, 22 Oct 2014 07:30:22 +0000 (07:30 +0000)]
Add comments to clarify mPubKeyStore buffer MemCopy. There is no memory overflow issue.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Chao, Zhang <chao.b.zhang@intel.com>
Reviewed-by: Yao, Jiewen <jiewen.yao@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16227 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoBaseTools/UPT: Remove Macro Expend for UserExtension section
Hess Chen [Wed, 22 Oct 2014 06:44:45 +0000 (06:44 +0000)]
BaseTools/UPT: Remove Macro Expend for UserExtension section

Remove Macro Expend for UserExtension section

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Hess Chen <hesheng.chen@intel.com>
Reviewed-by: Gao, Liming <liming.gao@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16226 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoMdeModulePkg/AtaAtapiPassThru: When D2H FIS received at PIO DATA-IN transfer, check...
Reza Jelveh [Wed, 22 Oct 2014 05:52:48 +0000 (05:52 +0000)]
MdeModulePkg/AtaAtapiPassThru: When D2H FIS received at PIO DATA-IN transfer, check PxTFD.Error register to confirm if there is a real error for better device compatibilities with Qemu and Marvel9230 sata controllers.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Reza Jelveh <reza.jelveh@tuhh.de>
Signed-off-by: Feng Tian <feng.tian@intel.com>
Reviewed-by: A. Sava <asava.dev@gmail.com>
Reviewed-by: Star Zeng <Start.Zeng@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16225 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoAdd DebugCommunicationLibUsb3 for USB3.0 source level debug support.
Elvin Li [Wed, 22 Oct 2014 05:01:58 +0000 (05:01 +0000)]
Add DebugCommunicationLibUsb3 for USB3.0 source level debug support.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Elvin Li <elvin.li@intel.com>
Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com>
Reviewed-by: Feng Tian <feng.tian@intel.com>
Reviewed-by: Jeff Fan <jeff.fan@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16224 6f19259b-4bc3-4df7-8a09-765794883524

9 years ago[MdePkg] Code clean-up: Remove trailing spaces
Lee Leahy [Wed, 22 Oct 2014 03:03:18 +0000 (03:03 +0000)]
[MdePkg] Code clean-up: Remove trailing spaces

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Lee Leahy <leroy.p.leahy@intel.com>
Reviewed-by: Erik Bjorge <erik.c.bjorge@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16223 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoCheck the question value before call CHANGED. Only when question value has been chang...
Eric Dong [Tue, 21 Oct 2014 05:50:06 +0000 (05:50 +0000)]
Check the question value before call CHANGED. Only when question value has been changed, browser will call CHANGED callback type.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Eric Dong <eric.dong@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16222 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoClean up the code. Action statement should not have text two opcode.
Eric Dong [Tue, 21 Oct 2014 05:48:00 +0000 (05:48 +0000)]
Clean up the code. Action statement should not have text two opcode.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Eric Dong <eric.dong@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16221 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoAdd PubKey index check before touching PubKey cache. Internal PubKey Variable PubkeyI...
Chao, Zhang [Tue, 21 Oct 2014 00:35:49 +0000 (00:35 +0000)]
Add PubKey index check before touching PubKey cache. Internal PubKey Variable PubkeyIndex is always 0, causing Index – 1 overflow. Update corresponding comments.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Chao, Zhang <chao.b.zhang@intel.com>
Reviewed-by: Dong, Guo <guo.dong@intel.com>
Reviewed-by: Fu, Siyuan <siyuan.fu@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16220 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoArmVirtualizationPkg: FdtPL011SerialPortLib: support UEFI_APPLICATION
Laszlo Ersek [Wed, 15 Oct 2014 14:15:21 +0000 (14:15 +0000)]
ArmVirtualizationPkg: FdtPL011SerialPortLib: support UEFI_APPLICATION

The library already supports UEFI_DRIVER, we just need to relax the
restriction list.

This allows ArmVirtualizationPkg platforms to build applications, like the
UEFI shell.

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@16219 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoAdd comments for FSVariable driver which used by Duet platform only, trust all meta...
Eric Dong [Wed, 15 Oct 2014 06:20:09 +0000 (06:20 +0000)]
Add comments for FSVariable driver which used by Duet platform only, trust all meta data for this platform.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Eric Dong <eric.dong@intel.com>
Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16218 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoAdd comments for FSVariable driver which used by Duet platform only, trust all meta...
Eric Dong [Wed, 15 Oct 2014 05:19:08 +0000 (05:19 +0000)]
Add comments for FSVariable driver which used by Duet platform only, trust all meta data for this platform.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Eric Dong <eric.dong@intel.com>
Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16217 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoPrevent EBDA area being overwritten, get the size info from the address 0x40E. If...
Eric Dong [Wed, 15 Oct 2014 05:17:41 +0000 (05:17 +0000)]
Prevent EBDA area being overwritten, get the size info from the address 0x40E. If can’t get the size info, then use the default value for it.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Eric Dong <eric.dong@intel.com>
Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16216 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoAtaBusDxe: Fix ReadBlockEx andWriteBlockEx to still signal event when the BufferSize...
Ruiyu Ni [Wed, 15 Oct 2014 04:49:04 +0000 (04:49 +0000)]
AtaBusDxe: Fix ReadBlockEx andWriteBlockEx to still signal event when the BufferSize is 0.
DiskIoDxe: Fix ReadDiskEx and WriteDiskEx to not modify the user’s buffer when the BufferSize is 0.
DiskIoDxe: Fix ReadDiskEx and WriteDiskEx hang issue when the submitted blockio2 task is completed before submitting another blockio2 task.
DiskIoDxe: Fix FlushEx to free the flush task item in callback (memory leak issue).

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
Reviewed-by: Feng Tian <feng.tian@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16215 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoEDK II: Add Maintainers.txt file
Jordan Justen [Tue, 14 Oct 2014 16:24:41 +0000 (16:24 +0000)]
EDK II: Add Maintainers.txt file

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Jaben Carsey <Jaben.carsey@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16214 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoEDK II: Add .gitignore
Ryan Harkin [Tue, 14 Oct 2014 16:08:15 +0000 (16:08 +0000)]
EDK II: Add .gitignore

While edk2 is still maintained in SVN, Many edk2 developers use git
for their main workflow, using the official mirrors.

Add a .gitignore to the EDK II root, BaseTools and Conf directories to
prevents files generated as part of the build from cluttering up "git
status" output.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ryan Harkin <ryan.harkin@linaro.org>
[removed Linaro-specific bits, rework for upstream]
Signed-off-by: Leif Lindholm <leif.lindholm@linaro.org>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16213 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoArmPlatformPkg/ArmVExpressPkg: Enable specifying firmware version string on build
Leif Lindholm [Tue, 14 Oct 2014 14:46:32 +0000 (14:46 +0000)]
ArmPlatformPkg/ArmVExpressPkg: Enable specifying firmware version string on build

If FIRMWARE_VER is defined on the build command line, set
gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareVersionString based on it.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Leif Lindholm <leif.lindholm@linaro.org>
Reviewed-By: Olivier Martin <olivier.martin@arm.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16212 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoMdeModulePkg PeiCore: Update the code of PeiAllocatePages() to correctly consider...
Star Zeng [Tue, 14 Oct 2014 06:53:18 +0000 (06:53 +0000)]
MdeModulePkg PeiCore: Update the code of PeiAllocatePages() to correctly consider the overhead sizeof (EFI_HOB_MEMORY_ALLOCATION).

It can fix the confused ERROR log like below.

"AllocatePages failed: No 0x1 Pages is available.
There is only left 0x1 pages memory resource to be allocated."

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16211 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoRemoves dead code from the PlatformBdsLibNull,leaving this unused code might confuse...
Olivier Martin [Tue, 14 Oct 2014 06:30:17 +0000 (06:30 +0000)]
Removes dead code from the PlatformBdsLibNull,leaving this unused code might confuse the user.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Olivier Martin <olivier.martin@arm.com>
Reviewed-by: Eric Dong <eric.dong@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16210 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoShellPkg: Comments update and code refine.
Qiu Shumin [Tue, 14 Oct 2014 01:16:38 +0000 (01:16 +0000)]
ShellPkg: Comments update and code refine.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Qiu Shumin <shumin.qiu@intel.com>
Reviewed-by: Jaben Carsey <Jaben.carsey@intel.com>
Reviewed-by: Erik Bjorge <erik.c.bjorge@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16209 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoArmPlatformPkg/ArmVirtualizationPkg: Added support for Intel BDS
Olivier Martin [Mon, 13 Oct 2014 10:55:38 +0000 (10:55 +0000)]
ArmPlatformPkg/ArmVirtualizationPkg: Added support for Intel BDS

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@16208 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoRemoves dependencies on SMBIOS in the IntelFrameworkModulePkg’s BDS.
Olivier Martin [Sat, 11 Oct 2014 02:19:36 +0000 (02:19 +0000)]
Removes dependencies on SMBIOS in the IntelFrameworkModulePkg’s BDS.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Olivier Martin <olivier.martin@arm.com>
Reviewed-by: Eric Dong <eric.dong@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16207 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoArmPkg/ArmLib/AArch64: Initialize the new N+1-level page table before registering it
Olivier Martin [Fri, 10 Oct 2014 11:25:04 +0000 (11:25 +0000)]
ArmPkg/ArmLib/AArch64: Initialize the new N+1-level page table before registering it

Prior to this change, when a new page table was created at level N+1,
the reference to the table was added to the level N translation table,
before being initialized.
It means if virtual addresses were in the address range defined by
this new table the CPU would crash as the address range was not
initialized.

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@16206 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoArmPkg/UncachedMemoryAllocationLib: Track uncached memory allocations
Olivier Martin [Fri, 10 Oct 2014 11:24:11 +0000 (11:24 +0000)]
ArmPkg/UncachedMemoryAllocationLib: Track uncached memory allocations

Keeping track of uncached memory allocations prevents doing expensive
cache operations (eg: clean & invalidate) on newly allocated regions
by reusing regions where possible

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@16205 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoArmPkg/ArmPsciResetSystemLib: Made the library only using SMC
Olivier Martin [Fri, 10 Oct 2014 11:22:50 +0000 (11:22 +0000)]
ArmPkg/ArmPsciResetSystemLib: Made the library only using SMC

Only ArmVirtualizationPkg based platforms are expected to use
the dynamic method to choose between SMC and HVC to invoke PSCI.

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@16204 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoArmPlatformPkg/Bds: Reduce boot device entries
Harry Liebel [Fri, 10 Oct 2014 10:39:36 +0000 (10:39 +0000)]
ArmPlatformPkg/Bds: Reduce boot device entries

If a storage device is used for Variable storage or access is provided
by the Simple Filesystem Protocol do not list it again for RAW memory
map access in the 'Add Boot device' menu.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Harry Liebel <Harry.Liebel@arm.com>
Reviewed-By: Olivier Martin <olivier.martin@arm.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16203 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoMdeModulePkg FaultTolerantWriteDxe: Remove unnecessary @para from function header...
Star Zeng [Fri, 10 Oct 2014 04:52:38 +0000 (04:52 +0000)]
MdeModulePkg FaultTolerantWriteDxe: Remove unnecessary @para from function header comments of ReadWorkSpaceData().

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Star Zeng <star.zeng@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16202 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoMdeModulePkg FaultTolerantWriteDxe: Remove assumptions below in FTW driver.
Star Zeng [Fri, 10 Oct 2014 02:27:14 +0000 (02:27 +0000)]
MdeModulePkg FaultTolerantWriteDxe: Remove assumptions below in FTW driver.
1. Work space and spare block must be in a FVB with FV header.
Updated to work space and spare block could be in independent FVBs that are without FV header.
2. NV region, work space and spare block must have same BlockSize.
Updated to NV region, work space and spare block could have different BlockSize.
3. Works space size must be <= one block size.
Update to work space size could be <= one block size (not span blocks) or > one block size (block size aligned).

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16201 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoMdeModulePkg DxeCore: Add FVH signature check before VerifyFvHeaderChecksum in FwVol.
Star Zeng [Thu, 9 Oct 2014 09:37:58 +0000 (09:37 +0000)]
MdeModulePkg DxeCore: Add FVH signature check before VerifyFvHeaderChecksum in FwVol.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16200 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoShellPkg: Add a typecast to 'BOOLEAN' to avoid build failure in VS2005.
Qiu Shumin [Thu, 9 Oct 2014 01:25:32 +0000 (01:25 +0000)]
ShellPkg: Add a typecast to 'BOOLEAN' to avoid build failure in VS2005.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Qiu Shumin <shumin.qiu@intel.com>
Reviewed-by: Jaben Carsey <Jaben.carsey@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16199 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoShellPkg: fix "incompatible pointer type" build error
Gabriel Somlo [Wed, 8 Oct 2014 20:38:05 +0000 (20:38 +0000)]
ShellPkg: fix "incompatible pointer type" build error

Following commit 7fe3fbad05cd6ef23e83ab5da8c5a82ff9bb456e, building
OvmfPkg on Linux breaks with an "incompatible pointer type" error.
This patch adds a cast to supress the warning and allow the build
to complete

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Gabriel Somlo <somlo@cmu.edu>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16198 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoShellPkg: hexedit command does not return lasterror equal to 0 when exiting from...
jcarsey [Tue, 7 Oct 2014 19:58:43 +0000 (19:58 +0000)]
ShellPkg: hexedit command does not return lasterror equal to 0 when exiting from editor

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by : Tapan Shah <tapandshah@hp.com>

Reviewed-by: Jaben Carsey <jaben.carsey@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16197 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoDmpstore command does not return lasterror equal to 0 when ‘-s’ flag used to dump...
jcarsey [Tue, 7 Oct 2014 19:57:23 +0000 (19:57 +0000)]
Dmpstore command does not return lasterror equal to 0 when ‘-s’ flag used to dump variables in file

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by : Tapan Shah <tapandshah@hp.com>
Reviewed-by: Jaben Carsey <jaben.carsey@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16196 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoShellPkg: Fix Meta Data misspelling
Jaben Carsey [Fri, 3 Oct 2014 15:49:59 +0000 (15:49 +0000)]
ShellPkg: Fix Meta Data misspelling

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jaben Carsey <jaben.carsey@intel.com>
Reviewed-by: Erik Bjorge <erik.c.bjorge@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16195 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoShellPkg: Update SetVar to use existing attributes for updating existing variables.
Jaben Carsey [Thu, 2 Oct 2014 16:41:28 +0000 (16:41 +0000)]
ShellPkg: Update SetVar to use existing attributes for updating existing variables.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jaben Carsey <jaben.carsey@intel.com>
Reviewed-by: Erik Bjorge <erik.c.bjorge@intel.com>
Reviewed-by: Tapan Shah <tapandshah@hp.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16194 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoShellPkg: Update MV. now supports across file system moves.
Jaben Carsey [Thu, 2 Oct 2014 16:40:49 +0000 (16:40 +0000)]
ShellPkg: Update MV.  now supports across file system moves.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jaben Carsey <jaben.carsey@intel.com>
Reviewed-by: Erik Bjorge <erik.c.bjorge@intel.com>
Reviewed-by: Tapan Shah <tapandshah@hp.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16193 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoOvmfPkg: SecureBootConfigDxe: remove stale fork
Laszlo Ersek [Thu, 2 Oct 2014 08:08:14 +0000 (08:08 +0000)]
OvmfPkg: SecureBootConfigDxe: remove stale fork

In the previous patch we disabled its use; there are no more clients.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
Tested-by: Gary Lin <glin@suse.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16192 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoOvmfPkg: disable stale fork of SecureBootConfigDxe
Laszlo Ersek [Thu, 2 Oct 2014 08:08:05 +0000 (08:08 +0000)]
OvmfPkg: disable stale fork of SecureBootConfigDxe

OvmfPkg forked SecureBootConfigDxe from SecurityPkg in SVN r13635 (git
commit 8c71ec8f). Since then, the original (in
"SecurityPkg/VariableAuthenticated/SecureBootConfigDxe") has diverged
significantly.

The initial diff between the original and the fork, when the fork was made
(ie. at SVN r13635), reads as follows:

> diff -ur SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfig.vfr OvmfPkg/SecureBootConfigDxe/SecureBootConfig.vfr
> --- SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfig.vfr  2014-09-30 23:35:28.598067147 +0200
> +++ OvmfPkg/SecureBootConfigDxe/SecureBootConfig.vfr    2014-08-09 02:40:35.824851626 +0200
> @@ -51,7 +51,7 @@
>            questionid = KEY_SECURE_BOOT_ENABLE,
>            prompt = STRING_TOKEN(STR_SECURE_BOOT_PROMPT),
>            help   = STRING_TOKEN(STR_SECURE_BOOT_HELP),
> -          flags  = INTERACTIVE | RESET_REQUIRED,
> +          flags  = INTERACTIVE,
>      endcheckbox;
>      endif;
>
> @@ -158,7 +158,7 @@
>            questionid = KEY_SECURE_BOOT_DELETE_PK,
>            prompt = STRING_TOKEN(STR_DELETE_PK),
>            help   = STRING_TOKEN(STR_DELETE_PK_HELP),
> -          flags  = INTERACTIVE | RESET_REQUIRED,
> +          flags  = INTERACTIVE,
>      endcheckbox;
>      endif;
>    endform;
> diff -ur SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigDxe.inf OvmfPkg/SecureBootConfigDxe/SecureBootConfigDxe.inf
> --- SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigDxe.inf       2014-09-30 23:35:28.598067147 +0200
> +++ OvmfPkg/SecureBootConfigDxe/SecureBootConfigDxe.inf 2014-09-30 23:35:28.577067027 +0200
> @@ -1,5 +1,8 @@
>  ## @file
> -#  Component name for SecureBoot configuration module.
> +# Component name for SecureBoot configuration module for OVMF.
> +#
> +# Need custom SecureBootConfigDxe for OVMF that does not force
> +# resets after PK changes since OVMF doesn't have persistent variables
>  #
>  # Copyright (c) 2011 - 2012, Intel Corporation. All rights reserved.<BR>
>  # This program and the accompanying materials
> diff -ur SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigImpl.c OvmfPkg/SecureBootConfigDxe/SecureBootConfigImpl.c
> --- SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigImpl.c        2014-09-30 23:35:28.599067153 +0200
> +++ OvmfPkg/SecureBootConfigDxe/SecureBootConfigImpl.c  2014-09-30 23:35:28.578067033 +0200
> @@ -2559,7 +2559,7 @@
>            NULL
>            );
>        } else {
> -        *ActionRequest = EFI_BROWSER_ACTION_REQUEST_RESET;
> +        *ActionRequest = EFI_BROWSER_ACTION_REQUEST_SUBMIT;
>        }
>        break;

The commit message is not overly verbose:

  OvmfPkg: Add custom SecureBootConfigDxe that doesn't reset

  We don't force a platform reset for OVMF when PK is changed in custom
  mode setup.

But the INF file hunk is telling:

  Need custom SecureBootConfigDxe for OVMF that does not force resets
  after PK changes since OVMF doesn't have persistent variables

We do have persistent variables now. Let's disable the (now obsolete)
OvmfPkg fork, and revert to the (well maintained) SecurityPkg-provided
config driver.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
Tested-by: Gary Lin <glin@suse.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16191 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoMdeModulePkg/ScsiDiskDxe: Fix the build warning/error "unreachable statement"
Olivier Martin [Tue, 30 Sep 2014 00:59:04 +0000 (00:59 +0000)]
MdeModulePkg/ScsiDiskDxe: Fix the build warning/error "unreachable statement"

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Olivier Martin <olivier.martin@arm.com>
Reviewed-by: Feng Tian <feng.tian@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16190 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoRemoves some unused assigned variables.
Olivier Martin [Mon, 29 Sep 2014 09:02:57 +0000 (09:02 +0000)]
Removes some unused assigned variables.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Olivier Martin <olivier.martin@arm.com>
Reviewed-by: Eric Dong <eric.dong@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16189 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoBoth printed fields are 64 bit long for IA32 too. It is better to print them as such.
Nikolai Saoukh [Mon, 29 Sep 2014 08:48:24 +0000 (08:48 +0000)]
Both printed fields are 64 bit long for IA32 too. It is better to print them as such.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Nikolai Saoukh <nms@otdel-1.org>
Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16188 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoRemoves some unused assigned variables. Some compiler (GCC in this case) raises a...
Olivier Martin [Mon, 29 Sep 2014 08:46:31 +0000 (08:46 +0000)]
Removes some unused assigned variables. Some compiler (GCC in this case) raises a warning/error.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Olivier Martin <olivier.martin@arm.com>
Reviewed-by: Eric Dong <eric.dong@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16187 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoEmulatorPkg/MpService: remove redundant switch-case statement
Chen Fan [Sun, 28 Sep 2014 06:22:10 +0000 (06:22 +0000)]
EmulatorPkg/MpService: remove redundant switch-case statement

we had set the AP procedure in StartupAllAPs(), so do not need
to set AP procedure twice.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Chen Fan <chen.fan.fnst@cn.fujitsu.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16186 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoEmulatorPkg/MpService: Check Processor State when Set Procedure
Chen Fan [Sun, 28 Sep 2014 06:22:03 +0000 (06:22 +0000)]
EmulatorPkg/MpService: Check Processor State when Set Procedure

Due to the state of processor could be set blocked by SingleThread
parameter, so we ought to add a READY state check, only let
the processor in READY state to invoke procedure.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Chen Fan <chen.fan.fnst@cn.fujitsu.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16185 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoEmulatorPkg/MpService: use simple pointer access
Chen Fan [Sun, 28 Sep 2014 06:21:55 +0000 (06:21 +0000)]
EmulatorPkg/MpService: use simple pointer access

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Chen Fan <chen.fan.fnst@cn.fujitsu.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16184 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoEmulatorPkg/MpService: Fix a NULL reference
Chen Fan [Sun, 28 Sep 2014 06:21:46 +0000 (06:21 +0000)]
EmulatorPkg/MpService: Fix a NULL reference

when making a CreateEvent() to call CpuCheckAllAPsStatus(),
the Context parameter was NULL in CpuCheckAllAPsStatus(),
so we must not use the Context as the ProcessorData pointer.
and should recalculate it.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Chen Fan <chen.fan.fnst@cn.fujitsu.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16183 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoFix an issue on FixedMtreProgramming - AND/OR mask incorrect.
jyao1 [Sun, 28 Sep 2014 01:07:13 +0000 (01:07 +0000)]
Fix an issue on FixedMtreProgramming - AND/OR mask incorrect.

Contributed-under: TianoCore Contribution Agreement 1.0

signed-off by: Yao, Jiewen <jiewen.yao@intel.com>
reviewed by: Rangarajan, Ravi P <ravi.p.rangarajan@intel.com>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16181 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoRoll back the dependency change in MOR driver.
Dong, Guo [Fri, 26 Sep 2014 03:24:56 +0000 (03:24 +0000)]
Roll back the dependency change in MOR driver.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Dong, Guo <guo.dong@intel.com>
Reviewed-by: Gao, Liming <liming.gao@intel.com>
Reviewed-by: Yao, Jiewen <jiewen.yao@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16179 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoBaseTools: Use '/' as path separator for objcopy --add-gnu-debuglink
Nikolai Saoukh [Thu, 25 Sep 2014 02:29:18 +0000 (02:29 +0000)]
BaseTools: Use '/' as path separator for objcopy --add-gnu-debuglink

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Nikolai Saoukh <nms@otdel-1.org>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16172 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoOvmfPkg: Fix VS2005 build warnings
Jordan Justen [Thu, 25 Sep 2014 02:29:10 +0000 (02:29 +0000)]
OvmfPkg: Fix VS2005 build warnings

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16171 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoOvmfPkg/AcpiPlatformDxe: Fix VS2012 IA32 build warning
Jordan Justen [Thu, 25 Sep 2014 02:29:00 +0000 (02:29 +0000)]
OvmfPkg/AcpiPlatformDxe: Fix VS2012 IA32 build warning

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16170 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoBaseTools: Actually plug in BaseTools build on AArch64
Leif Lindholm [Wed, 24 Sep 2014 21:07:53 +0000 (21:07 +0000)]
BaseTools: Actually plug in BaseTools build on AArch64

Support for building BaseTools on AArch64 is available in the tree, but
not currently "plugged in". This patch adds the required snippet.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Leif Lindholm <leif.lindholm@linaro.org>
Reviewed-by: Olivier Martin <olivier.martin@arm.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16169 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoEnhance TargetName check when save iSCSI configuration.
Ye Ting [Wed, 24 Sep 2014 09:35:54 +0000 (09:35 +0000)]
Enhance TargetName check when save iSCSI configuration.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ye Ting <ting.ye@intel.com>
Reviewed-by: Wu, Jiaxin <jiaxin.wu@intel.com>
Reviewed-by: Fu, Siyuan <siyuan.fu@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16168 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoEnhance TargetName check when save iSCSI configuration.
Ye Ting [Wed, 24 Sep 2014 09:35:32 +0000 (09:35 +0000)]
Enhance TargetName check when save iSCSI configuration.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ye Ting <ting.ye@intel.com>
Reviewed-by: Wu, Jiaxin <jiaxin.wu@intel.com>
Reviewed-by: Fu, Siyuan <siyuan.fu@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16167 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoThe binaries of ShellBinPkg are generated with ShellPkg project 16163. The binaries...
Qiu Shumin [Wed, 24 Sep 2014 07:49:20 +0000 (07:49 +0000)]
The binaries of ShellBinPkg are generated with ShellPkg project 16163. The binaries are built with no debug information by building with "RELEASE" target.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Qiu Shumin <shumin.qiu@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16166 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoUsers of the LP64 data model should declare SIXTY_FOUR_BIT_LONG, not SIXTY_FOUR_BIT...
Ard Biesheuvel [Wed, 24 Sep 2014 07:48:26 +0000 (07:48 +0000)]
Users of the LP64 data model should declare SIXTY_FOUR_BIT_LONG, not SIXTY_FOUR_BIT when building OpenSSL.

Contributed-under: TianoCore Contribution Agreement 1.0

Reviewed-By: Olivier Martin <olivier.martin@arm.com>
Reviewed-by: Andrew Fish <afish@apple.com>
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16165 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoShellPkg: Make the argument type match the function expected parameter type to avoid...
Qiu Shumin [Wed, 24 Sep 2014 05:06:59 +0000 (05:06 +0000)]
ShellPkg: Make the argument type match the function expected parameter type to avoid build fail in GCC45.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Qiu Shumin <shumin.qiu@intel.com>
Reviewed-by: Ni Ruiyu <ruiyu.ni@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16163 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoRefine get default value process for browser.
Eric Dong [Tue, 23 Sep 2014 08:06:23 +0000 (08:06 +0000)]
Refine get default value process for browser.
Before get default value for each questions, call ExtractConfig function to get the altcfg string for all formset. Later when question try to get default value from AltCfg string, just get the value from the saved altcfg string instead of call ExtractConfig function to get it.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Eric Dong <eric.dong@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16162 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoShellPkg: Refine code style to avoid potential NullPointer dereference.
Qiu Shumin [Tue, 23 Sep 2014 06:20:59 +0000 (06:20 +0000)]
ShellPkg: Refine code style to avoid potential NullPointer dereference.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Qiu Shumin <shumin.qiu@intel.com>
Reviewed-by: Ni Ruiyu <ruiyu.ni@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16161 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoBaseTools: Update nmake Makefile to handle the file path with “:\\”.
Gao, Liming [Tue, 23 Sep 2014 01:32:56 +0000 (01:32 +0000)]
BaseTools: Update nmake Makefile to handle the file path with “:\\”.

DOS del command doesn’t handle “:\\” in the file path. This patch converts “:\\” to “:\”.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Gao, Liming <liming.gao@intel.com>
Reviewed-by: lhauch <larry.hauch@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16160 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoShellPkg: Fix setting hot key for boot option fail.
Qiu Shumin [Tue, 23 Sep 2014 01:14:30 +0000 (01:14 +0000)]
ShellPkg: Fix setting hot key for boot option fail.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Qiu Shumin <shumin.qiu@intel.com>
Reviewed-by: Jaben Carsey <Jaben.carsey@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16159 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoOvmfPkg: AcpiPlatformDxe: implement QEMU's full ACPI table loader interface
Laszlo Ersek [Mon, 22 Sep 2014 21:11:22 +0000 (21:11 +0000)]
OvmfPkg: AcpiPlatformDxe: implement QEMU's full ACPI table loader interface

Recent changes in the QEMU ACPI table generator have shown that our
limited client for that interface is insufficient and/or brittle.

Implement the full interface utilizing OrderedCollectionLib for addressing
fw_cfg blobs by name.

In order to stay compatible with EFI_ACPI_TABLE_PROTOCOL, we don't try to
identify QEMU's RSD PTR and link it into the UEFI system configuration
table. Instead, once all linker/loader commands have been processed, we
process the AddPointer commands for a second time.

In the second pass, we look at the targets of these pointer commands. The
key idea (by Michael Tsirkin) is that any ACPI interpreter will only be
able to locate ACPI tables by following absolute pointers, hence QEMU's
set of AddPointer commands will cover all of the ACPI tables (and more,
see below).

Some of QEMU's AddPointer commands (ie. some fields in ACPI tables) may
point to areas in fw_cfg blobs that are not ACPI tables themselves.
Examples are the BGRT.ImageAddress field, and the TCPA.LASA field. We tell
these apart from ACPI tables by performing the following checks on pointer
target "candidates":
- length check against minimum ACPI table size, and remaining blob size
- checksum verification.

If a target area looks like an ACPI table, and is different from RSDT and
DSDT (which EFI_ACPI_TABLE_PROTOCOL handles internally), we install the
table (at which point EFI_ACPI_TABLE_PROTOCOL creates a deep copy of the
relevant segment of the pointed-to fw_cfg blob).

Simultaneously, we keep account if each fw_cfg blob has ever been
referenced as the target of an AddPointer command without that AddPointer
command actually identifying an ACPI table. In this case the containing
fw_cfg file (of AcpiNVS memory type) must remain around forever, because
we never install that area with EFI_ACPI_TABLE_PROTOCOL, but some field in
some ACPI table that we *do* install still references it, by the absolute
address that we've established during the first pass.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16158 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoOvmfPkg: AcpiPlatformDxe: remove current ACPI table loader
Laszlo Ersek [Mon, 22 Sep 2014 21:11:15 +0000 (21:11 +0000)]
OvmfPkg: AcpiPlatformDxe: remove current ACPI table loader

In the next patch we rewrite the client code for QEMU's fw_cfg ACPI table
loader interface. In order to avoid randomly intermixed hunks in that
patch, first remove the old code cleanly.

We remove the InstallQemuLinkedTables() function and empty the
InstallAllQemuLinkedTables() function. We also remove CheckRsdp().

InstallAllQemuLinkedTables() will return constant EFI_NOT_FOUND to
AcpiPlatformEntryPoint(), causing the latter to proceed to OVMF's builtin
tables.

This way the history remains bisectable and the new client gets a clean
start in the next patch.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16157 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoOvmfPkg: AcpiPlatformDxe: actualize QemuLoader.h comments
Laszlo Ersek [Mon, 22 Sep 2014 21:11:09 +0000 (21:11 +0000)]
OvmfPkg: AcpiPlatformDxe: actualize QemuLoader.h comments

We used to state in this header file that we only cared about the Allocate
command. This is no longer the case; update the comments accordingly.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16156 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoOvmfPkg: resolve OrderedCollectionLib with base red-black tree instance
Laszlo Ersek [Mon, 22 Sep 2014 21:11:02 +0000 (21:11 +0000)]
OvmfPkg: resolve OrderedCollectionLib with base red-black tree instance

The "complete" QEMU fw_cfg ACPI loader will need to look up downloaded
blobs by name, in order to implement the AddPointer and AddChecksum
commands. Introduce OrderedCollectionLib to support such indexing.

BaseOrderedCollectionRedBlackTreeLib is a BASE module, hence add the
OrderedCollectionLib resolution to the main [LibraryClasses] section.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16155 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoBaseTools/ECC: Ignore duplicate check for 'NULL' library
Hess Chen [Mon, 22 Sep 2014 07:37:28 +0000 (07:37 +0000)]
BaseTools/ECC: Ignore duplicate check for 'NULL' library

Update a checkpoint to ignore duplicate check for 'NULL' library

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Hess Chen <hesheng.chen@intel.com>
Reviewed-by: Yingke Liu <yingke.d.liu@Intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16154 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoBaseTools/Upt: Fix several bugs
Hess Chen [Mon, 22 Sep 2014 07:06:12 +0000 (07:06 +0000)]
BaseTools/Upt: Fix several bugs

1. Fix a bug of generating additional EOL in file header.
2. Fix a bug of format error for Defines section.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Hess Chen <hesheng.chen@intel.com>
Reviewed-by: Yingke Liu <yingke.d.liu@Intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16153 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoFix X64 native function call prolog. Prepare space for at least 4 arguments,
Samer El-Haj-Mahmoud elhaj [Mon, 22 Sep 2014 05:54:41 +0000 (05:54 +0000)]
Fix X64 native function call prolog. Prepare space for at least 4 arguments,
even if the native function's arguments are less than 4.

From MSDN x64 Software Conventions, Overview of x64 Calling Conventions:
“The caller is responsible for allocating space for parameters to the
callee, and must always allocate sufficient space for the 4 register
parameters, even if the callee doesn’t have that many parameters.
This aids in the simplicity of supporting C unprototyped functions,
and vararg C/C++ functions.”

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Samer El-Haj-Mahmoud elhaj@hp.com
Reviewed by: Jiewen Yao <Jiewen.Yao@intel.com>
Reviewed by: Feng Tian <Feng.Tian@intel.com>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16152 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoCorrect the convert hex string to decimal value logic.
Eric Dong [Mon, 22 Sep 2014 05:37:16 +0000 (05:37 +0000)]
Correct the convert hex string to decimal value logic.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Eric Dong <eric.dong@intel.com>
Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16150 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoBaseTools/Upt: Fix several bugs
Hess Chen [Fri, 19 Sep 2014 02:04:08 +0000 (02:04 +0000)]
BaseTools/Upt: Fix several bugs

1. Fix a bug of packaging a full path file in zip at Linux.
2. Fix a format error of generating Hob/Event/BootMode information.
3. Fix a bug of generating additional “GUID” subtype for “UNDEFINED” guid.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Hess Chen <hesheng.chen@intel.com>
Reviewed-by: Yingke Liu <yingke.d.liu@Intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16149 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoShellPkg: ShellPkg: Fix the cp fail while coping directory.
Ni Ruiyu [Fri, 19 Sep 2014 01:39:45 +0000 (01:39 +0000)]
ShellPkg: ShellPkg: Fix the cp fail while coping directory.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ni Ruiyu <ruiyu.ni@intel.com>
Signed-off-by: Qiu Shumin <shumin.qiu@intel.com>
Reviewed-by: Jaben Carsey <Jaben.carsey@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16148 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoShellPkg: Remove the redundant quotes around the parameter for 'alias'.
Qiu Shumin [Fri, 19 Sep 2014 01:34:44 +0000 (01:34 +0000)]
ShellPkg: Remove the redundant quotes around the parameter for 'alias'.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Qiu Shumin <shumin.qiu@intel.com>
Reviewed-by: Jaben Carsey <Jaben.carsey@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16147 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoShellPkg: Refine code style to avoid potential uninitialized local variable.
Qiu Shumin [Fri, 19 Sep 2014 01:32:05 +0000 (01:32 +0000)]
ShellPkg: Refine code style to avoid potential uninitialized local variable.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Qiu Shumin <shumin.qiu@intel.com>
Reviewed-by: Jaben Carsey <Jaben.carsey@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16146 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoEmbeddedPkg: Introduced NULL library for SerialPortExtLib
Olivier Martin [Thu, 18 Sep 2014 21:18:22 +0000 (21:18 +0000)]
EmbeddedPkg: Introduced NULL library for SerialPortExtLib

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@16145 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoArmPkg/TimerDxe: add workaround for KVM timer interrupt handling
Ard Biesheuvel [Thu, 18 Sep 2014 21:16:47 +0000 (21:16 +0000)]
ArmPkg/TimerDxe: add workaround for KVM timer interrupt handling

KVM on ARM currently masks the timer interrupt on the timer side when
delivering an interrupt to the guest. This itself is a workaround for an
issue where the interrupt is reraised and trapped by the host as soon as
the guest is entered, resulting in the guest being starved.

Work around this by calling ArmGenericTimerEnable () after servicing each
interrupt. The virtual version of ArmGenericTimerCounterLib will then
make sure to unmask the interrupt again.

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@16144 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoArmPlatformPkg: Introduced ArmPlatformSysConfigLib NULL library
Olivier Martin [Thu, 18 Sep 2014 21:15:29 +0000 (21:15 +0000)]
ArmPlatformPkg: Introduced ArmPlatformSysConfigLib NULL library

Some platforms do not have SysConfig controller used by the ARM
Versatile Express.
Some peripheral drivers currently rely on SysConfigLib (eg: PL031
RTC driver, LCD 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@16143 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoStdLib: Produce DevMedia as a library class alternative to DevShell.
Daryl McDaniel [Thu, 18 Sep 2014 19:13:22 +0000 (19:13 +0000)]
StdLib: Produce DevMedia as a library class alternative to DevShell.
AppPkg: Replace existing DevShell dependencies with DevMedia.

These patches will NOT cause existing code which uses DevShell to break.
During an interim period, either DevShell or DevMedia may be used.
In the future, DevShell will be removed from the code base.

During the interim, DevShell and DevMedia refer to the same library.

StdLib/LibC/Uefi/Devices/daShell.inf
  Make this library also satisfy the DevMedia library class.
StdLib/StdLib.inc
  Add a library class definition for DevMedia

AppPkg/Applications/OrderedCollectionTest/OrderedCollectionTest.inf
AppPkg/Applications/Python/PythonCore.inf
AppPkg/Applications/Sockets/GetAddrInfo/GetAddrInfo.inf
AppPkg/Applications/Sockets/GetHostByAddr/GetHostByAddr.inf
AppPkg/Applications/Sockets/GetHostByDns/GetHostByDns.inf
AppPkg/Applications/Sockets/GetHostByName/GetHostByName.inf
AppPkg/Applications/Sockets/GetNameInfo/GetNameInfo.inf
AppPkg/Applications/Sockets/GetNetByAddr/GetNetByAddr.inf
AppPkg/Applications/Sockets/GetNetByName/GetNetByName.inf
AppPkg/Applications/Sockets/GetServByName/GetServByName.inf
AppPkg/Applications/Sockets/GetServByPort/GetServByPort.inf
AppPkg/Applications/Sockets/RecvDgram/RecvDgram.inf
AppPkg/Applications/Sockets/SetHostName/SetHostName.inf
AppPkg/Applications/Sockets/SetSockOpt/SetSockOpt.inf
AppPkg/Applications/Sockets/TftpServer/TftpServer.inf
AppPkg/Applications/Sockets/WebServer/WebServer.inf
  Change LibraryClass dependency from DevShell to DevMedia

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Daryl McDaniel <daryl.mcdaniel@intel.com>
Reviewed-by: Jaben Carsey <Jaben.carsey@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16142 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoArmPlatformPkg/ArmVirtualizationPkg: Add ArmVirtualizationQemu platform
Michael Casadevall [Thu, 18 Sep 2014 18:11:24 +0000 (18:11 +0000)]
ArmPlatformPkg/ArmVirtualizationPkg: Add ArmVirtualizationQemu platform

This adds support for executing UEFI in a QEMU/mach-virt emulated environment.
The following assumptions are made about the target:
- DRAM base at 0x4000_0000, containing the device tree blob
- DRAM size at least 1 MB
- device tree uses 64-bit physical base addresses and sizes
- ARM architected timer
- Cortex-A15 CPU (if built for 32-bit)

The following information is retrieved from the device tree:
- PL011 UART base address
- GIC base addresses
- virtual timer interrupt
- PL031 RTC base address
- DRAM size, must be at least 128 MB
- virtio MMIO transports
- PSCI 0.2 availability (for reset and poweroff)

The device tree image is relocated and installed as a configuration table
so an EFI stub enabled kernel can be booted directly without the need for
a bootloader.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Michael Casadevall <michael.casadevall@linaro.org>
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
Tested-by: Laszlo Ersek <lersek@redhat.com>
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-By: Olivier Martin <olivier.martin@arm.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16141 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoArmVirtualizationPkg: add device tree based PL011 SerialPortLib
Laszlo Ersek [Thu, 18 Sep 2014 18:07:52 +0000 (18:07 +0000)]
ArmVirtualizationPkg: add device tree based PL011 SerialPortLib

This adds 2 implementations of SerialPortLib for device tree based platforms
using a PL011 UART:
- an 'early' one which is completely stateless and uses only fixed PCDs
- a normal one which takes its base address from a HOB containing the base
  address discovered in the PEI phase

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-with-remarks-by: Laszlo Ersek <lersek@redhat.com>
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@16140 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoArmPlatformPkg/ArmVirtualizationPkg: introduce gEarlyPL011BaseAddressGuid
Laszlo Ersek [Thu, 18 Sep 2014 18:06:22 +0000 (18:06 +0000)]
ArmPlatformPkg/ArmVirtualizationPkg: introduce gEarlyPL011BaseAddressGuid

This GUID will identify a customized HOB that carries the base address of
the PL011 serial port, for clients that cannot access PCDs.

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@16139 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoArmPlatformPkg/ArmVirtualizationPkg: add ArmVirtualizationPlatformLib library
Michael Casadevall [Thu, 18 Sep 2014 18:05:03 +0000 (18:05 +0000)]
ArmPlatformPkg/ArmVirtualizationPkg: add ArmVirtualizationPlatformLib library

This is an implementation of ArmPlatformLib that discovers the size of system
DRAM from a device tree blob located at the address passed in
gArmTokenSpaceGuid.PcdDeviceTreeBaseAddress, which should equal the value in
gArmTokenSpaceGuid.PcdSystemMemoryBase.

As the device tree blob is passed in system DRAM, this library can only be used
if sufficient DRAM is available (>= 128 MB) and if not using shadowed NOR. The
reason for this is that it makes it easier to guarantee that such a device tree
blob at base of DRAM will not be clobbered before we get a chance to preserve it.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Michael Casadevall <michael.casadevall@linaro.org>
Acked-by: Laszlo Ersek <lersek@redhat.com>
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-By: Olivier Martin <olivier.martin@arm.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16138 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoArmPlatformPkg/ArmVirtualizationPkg: Add VirtFdtDxe driver
Ard Biesheuvel [Thu, 18 Sep 2014 17:59:58 +0000 (17:59 +0000)]
ArmPlatformPkg/ArmVirtualizationPkg: Add VirtFdtDxe driver

This driver enumerates the device nodes in the device tree located at the
base address passed in gArmTokenSpaceGuid.PcdDeviceTreeBaseAddress, and
installs drivers for devices it cares about (GIC interrupt controller, RTC,
architected timer interrupt)

Contributed-under: TianoCore Contribution Agreement 1.0
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-by: Olivier Martin <olivier.martin@arm.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16137 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoArmPlatformPkg/ArmVirtualizationPkg: Add PlatformPeiLib library
Ard Biesheuvel [Thu, 18 Sep 2014 17:58:01 +0000 (17:58 +0000)]
ArmPlatformPkg/ArmVirtualizationPkg: Add PlatformPeiLib library

This is a fork of the ARM PlatformPeiLib for virtual machines. The main
purpose of having this specific implementation is that it allows us to
preserve the device tree blob if it was passed to us in system DRAM.

Contributed-under: TianoCore Contribution Agreement 1.0
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
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@16136 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoArmPlatformPkg/ArmVirtualizationPkg: introduce PCDs for device tree base address
Ard Biesheuvel [Thu, 18 Sep 2014 17:56:44 +0000 (17:56 +0000)]
ArmPlatformPkg/ArmVirtualizationPkg: introduce PCDs for device tree base address

Introduce gArmVirtualizationTokenSpaceGuid.PcdDeviceTreeBaseAddress and
PcdDeviceTreeInitialBaseAddress, which will be used by virtual machine ports
that discover the system configuration from a flattened device tree DTB image.

The latter is FixedPcd only, and should contain the initial offset of the DTB,
the former may be declared as dynamic, and updated at runtime if the DTB is
relocated before the DXE phase.

Contributed-under: TianoCore Contribution Agreement 1.0
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
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@16135 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoArmPlatformPkg/ArmVirtualizationPkg: Add private HobLib implementation for DXE phase
Ard Biesheuvel [Thu, 18 Sep 2014 17:55:17 +0000 (17:55 +0000)]
ArmPlatformPkg/ArmVirtualizationPkg: Add private HobLib implementation for DXE phase

To allow a dynamically discovered UART base address, we parse the device
tree early and store the base address in a HOB. To prevent circular
constructor dependencies from interfering with bringing up the serial port
using this dynamic base address, use our own private HobLib with no
dependencies on DebugLib either directly or indirectly through UefiLib.

Contributed-under: TianoCore Contribution Agreement 1.0
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
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@16134 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoArmVirtualizationPkg: add driver for QEMU's NOR flash
Ard Biesheuvel [Thu, 18 Sep 2014 17:53:36 +0000 (17:53 +0000)]
ArmVirtualizationPkg: add driver for QEMU's NOR flash

This adds an implementation of NorFlashPlatformLib that exposes the
two 64 MB NOR flash banks that are provided by QEMU's mach-virt
emulation both in 32-bit and 64-bit mode.

Contributed-under: TianoCore Contribution Agreement 1.0
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-by: Olivier Martin <olivier.martin@arm.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16133 6f19259b-4bc3-4df7-8a09-765794883524

9 years agoArmVirtualizationPkg: add Include/ArmPlatform.h
Ard Biesheuvel [Thu, 18 Sep 2014 17:52:37 +0000 (17:52 +0000)]
ArmVirtualizationPkg: add Include/ArmPlatform.h

This include file contains platform specific defines, and is shared by
various modules.

Contributed-under: TianoCore Contribution Agreement 1.0
Acked-by: Laszlo Ersek <lersek@redhat.com>
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@16132 6f19259b-4bc3-4df7-8a09-765794883524