]> git.proxmox.com Git - mirror_edk2.git/log
mirror_edk2.git
8 years agoNetworkPkg: Remove unused EFI_HTTP_PROTOCOL definition
Jiaxin Wu [Wed, 23 Dec 2015 00:34:14 +0000 (00:34 +0000)]
NetworkPkg: Remove unused EFI_HTTP_PROTOCOL definition

This patch is used to remove unused EFI_HTTP_PROTOCOL definition.

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

8 years agoAppPkg/.../Python-2.7.10: AppPkg.dsc, pyconfig.h, PyMod-2.7.10
Daryl McDaniel [Wed, 23 Dec 2015 00:15:45 +0000 (00:15 +0000)]
AppPkg/.../Python-2.7.10: AppPkg.dsc, pyconfig.h, PyMod-2.7.10

Apply UEFI-specific changes to files to make them equivalent to the Python 2.7.2 versions.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Daryl McDaniel <edk2-lists@mc2research.org>
Reviewed-by: Jaben Carsey <jaben.carsey@intel.com>
Reviewed-by: Erik Bjorge <erik.c.bjorge@intel.com>
---
 AppPkg/AppPkg.dsc                                  |   5 +-
 .../Python/Python-2.7.10/Ia32/pyconfig.h           |  93 ++++++++----
 .../Python-2.7.10/PyMod-2.7.10/Lib/ntpath.py       |  30 +++-
 .../Python/Python-2.7.10/PyMod-2.7.10/Lib/os.py    |  35 ++++-
 .../Python/Python-2.7.10/PyMod-2.7.10/Lib/pydoc.py |  17 +++
 .../Python/Python-2.7.10/PyMod-2.7.10/Lib/site.py  | 165 ++++++---------------
 .../Python-2.7.10/PyMod-2.7.10/Modules/_sre.c      | 150 ++++++++++---------
 .../Python-2.7.10/PyMod-2.7.10/Modules/addrinfo.h  | 101 +++++++------
 .../PyMod-2.7.10/Modules/errnomodule.c             |  57 ++++++-
 .../PyMod-2.7.10/Modules/expat/expat_external.h    |   4 +-
 .../Python-2.7.10/PyMod-2.7.10/Modules/getpath.c   | 143 +++++-------------
 .../Python-2.7.10/PyMod-2.7.10/Modules/main.c      |  61 ++++----
 .../PyMod-2.7.10/Modules/selectmodule.c            |  43 ++++--
 .../PyMod-2.7.10/Modules/zlib/gzguts.h             |  10 +-
 .../PyMod-2.7.10/Modules/zlib/zutil.h              |  11 +-
 .../PyMod-2.7.10/Objects/longobject.c              |  14 +-
 .../PyMod-2.7.10/Objects/stringlib/localeutil.h    |  17 ++-
 .../PyMod-2.7.10/Python/getcopyright.c             |  24 ++-
 .../Python-2.7.10/PyMod-2.7.10/Python/marshal.c    |  21 ++-
 .../Python-2.7.10/PyMod-2.7.10/Python/random.c     |  32 +++-
 .../Python/Python-2.7.10/X64/pyconfig.h            |  63 ++++++--
 21 files changed, 640 insertions(+), 456 deletions(-)

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

8 years agoAppPkg/.../Python-2.7.10: Update file for Python-2.7.10 inclusion.
Daryl McDaniel [Wed, 23 Dec 2015 00:07:43 +0000 (00:07 +0000)]
AppPkg/.../Python-2.7.10: Update file for Python-2.7.10 inclusion.

    Add copyright message.
    Add some blank lines.
    Remove a superfluous call to setup_confname_tables(m) from INITFUNC().

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Daryl McDaniel <edk2-lists@mc2research.org>
Reviewed-by: Erik Bjorge <erik.c.bjorge@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19461 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoAppPkg/.../Python-2.7.10: Rename identifiers beginning with "posix_" to "edk2_".
Daryl McDaniel [Wed, 23 Dec 2015 00:04:20 +0000 (00:04 +0000)]
AppPkg/.../Python-2.7.10: Rename identifiers beginning with "posix_" to "edk2_".

Rename identifiers to have an edk2_ prefix instead of posix_ in order to
conform to the convention used in other environment-specific Python modules.
This also makes the names match the module instead of implying that these are
Posix compatible routines.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Daryl McDaniel <edk2-lists@mc2research.org>
Reviewed-by: Erik Bjorge <erik.c.bjorge@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19460 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoAppPkg/.../Python-2.7.10: Remove irrelevant conditional code from edk2module.c.
Daryl McDaniel [Wed, 23 Dec 2015 00:01:30 +0000 (00:01 +0000)]
AppPkg/.../Python-2.7.10: Remove irrelevant conditional code from edk2module.c.

Remove sections of conditional code that are not relevant to the
EDK II or UEFI environments.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Daryl McDaniel <edk2-lists@mc2research.org>
Reviewed-by: Erik Bjorge <erik.c.bjorge@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19459 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoAppPkg/.../Python-2.7.10: New helper scripts
Daryl McDaniel [Tue, 22 Dec 2015 23:57:04 +0000 (23:57 +0000)]
AppPkg/.../Python-2.7.10: New helper scripts

New files libprep.bat and srcprep.bat.
These scripts make it easier to set up the source tree and the target system's
library directory by automating the required file copy operations.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Daryl McDaniel <edk2-lists@mc2research.org>
Reviewed-by: Erik Bjorge <erik.c.bjorge@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19458 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoAppPkg/.../Python-2.7.10: ReadMe and .inf files
Daryl McDaniel [Tue, 22 Dec 2015 23:54:07 +0000 (23:54 +0000)]
AppPkg/.../Python-2.7.10: ReadMe and .inf files

Files Py2710ReadMe.txt and Python2710.inf, modified from the corresponding
Python-2.7.2 files for use with Python-2.7.10.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Daryl McDaniel <edk2-lists@mc2research.org>
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@19457 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoMdePkg : Update SPCR to use ACPI5 definition
Samer El-Haj-Mahmoud [Tue, 22 Dec 2015 17:10:08 +0000 (17:10 +0000)]
MdePkg : Update SPCR to use ACPI5 definition

Update BaseAddress in the SPCR structure to use
EFI_ACPI_5_0_GENERIC_ADDRESS_STRUCTURE

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Samer El-Haj-Mahmoud <elhaj@hpe.com>
Reviewed-by: Michael Kinney <michael.d.kinney@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19456 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoMdeModulePkg UfsPassThruDxe: Raise to TPL_NOTIFY when dealing async task
Hao Wu [Tue, 22 Dec 2015 13:58:52 +0000 (13:58 +0000)]
MdeModulePkg UfsPassThruDxe: Raise to TPL_NOTIFY when dealing async task

This commit will raise the Tpl to TPL_NOTIFY when adding non-blocking SCSI
I/O requests to the asynchronous task list.

This commit will also raise the Tpl of asynchronous task polling timer to
TPL_NOTIFY.

These changes are made to match the behavior in ScsiDiskDxe driver.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Hao Wu <hao.a.wu@intel.com>
Reviewed-by: Feng Tian <feng.tian@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19455 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoMdeModulePkg ScsiBusDxe: Raise the Tpl of async IO callback to TPL_NOTIFY
Hao Wu [Tue, 22 Dec 2015 13:58:31 +0000 (13:58 +0000)]
MdeModulePkg ScsiBusDxe: Raise the Tpl of async IO callback to TPL_NOTIFY

Raise the Tpl of async SCSI I/O callback function to TPL_NOTIFY to match
the behavior in ScsiDiskDxe driver.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Hao Wu <hao.a.wu@intel.com>
Reviewed-by: Feng Tian <feng.tian@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19454 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoMdePkg UefiScsiLib: Raise the Tpl of async IO callback to TPL_NOTIFY
Hao Wu [Tue, 22 Dec 2015 13:58:09 +0000 (13:58 +0000)]
MdePkg UefiScsiLib: Raise the Tpl of async IO callback to TPL_NOTIFY

Raise the Tpl of async SCSI I/O callback function to TPL_NOTIFY to match
the behavior in ScsiDiskDxe driver.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Hao Wu <hao.a.wu@intel.com>
Reviewed-by: Feng Tian <feng.tian@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19453 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoMdeModulePkg ScsiDiskDxe: Raise the Tpl of async IO callback to TPL_NOTIFY
Hao Wu [Tue, 22 Dec 2015 13:57:42 +0000 (13:57 +0000)]
MdeModulePkg ScsiDiskDxe: Raise the Tpl of async IO callback to TPL_NOTIFY

When reading data from non-blockingly from a CD-ROM logic partition, the
procedure can be shown by the following call stack:
(The write process is similar)

|-------------------|
| DiskIoDxe (logic) |<---Raise Tpl to TPL_CALLBACK
|-------------------|
 |
 | Sub-task 1 (UnderRun) succeeds
 |
 |    |-----------------|     |-----------------|     |-----------------|
 +--->|  PartitionDxe   |---->| DiskIoDxe (Phy) |---->|   ScsiDiskDxe   |
 |    |-----------------|     |-----------------|     |-----------------|
 |
 | Sub-task 2 (OverRun) fails
 |
 |    |-----------------|     |-----------------|     |-----------------|
 +--->|  PartitionDxe   |---->| DiskIoDxe (Phy) |---->|   ScsiDiskDxe   |
 |    |-----------------|     |-----------------|     |-----------------|
 |                                     ^
 |                                     |
 More subtasks...              Wait indefinitely
 |
 |<---Restore Tpl
 |
 Completes

In PartitionDxe, if the 'Lba' and 'BufferSize' parameters passed to
function PartitionReadBlocksEx() are invalid, the function will issue a
blocking ReadDisk call (in function ProbeMediaStatusEx()).

In DiskIoDxe, blocking I/O request will wait for all the non-blocking I/O
requests to complete first before sending down the blocking request.

If the Tpl of the async I/O callback in ScsiDiskDxe is TPL_CALLBACK and
Sub-task 1 (UnderRun) succeeds but Sub-task 2 (OverRun) fails with an
invalid parameter, DiskIoDxe will wait indefinitely for the event created
by ScsiDiskDxe of Sub-task 1 to signal.

Hence, this commit will raise the Tpl of async IO callback in ScsiDiskDxe
to TPL_NOTIFY so that the indefinite wait in DiskIoDxe can be avoided.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Hao Wu <hao.a.wu@intel.com>
Reviewed-by: Feng Tian <feng.tian@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19452 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoMdeModulePkg ScsiDiskDxe: Add retry scheme for async SCSI I/O command
Hao Wu [Tue, 22 Dec 2015 13:57:14 +0000 (13:57 +0000)]
MdeModulePkg ScsiDiskDxe: Add retry scheme for async SCSI I/O command

Some SCSI devices will return EFI_DEVICE_ERROR or EFI_TIMEOUT when the
data length of a SCSI I/O command is too large.

This commit will repeatedly retry sending the SCSI command with a data
length half of its previous value.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Hao Wu <hao.a.wu@intel.com>
Reviewed-by: Feng Tian <feng.tian@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19451 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoMdeModulePkg ScsiDiskDxe: Fix async request retry times info lost issue
Hao Wu [Tue, 22 Dec 2015 13:56:54 +0000 (13:56 +0000)]
MdeModulePkg ScsiDiskDxe: Fix async request retry times info lost issue

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Hao Wu <hao.a.wu@intel.com>
Reviewed-by: Feng Tian <feng.tian@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19450 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoMdeModulePkg ScsiDiskDxe: Close event when SCSI command fails
Hao Wu [Tue, 22 Dec 2015 13:56:30 +0000 (13:56 +0000)]
MdeModulePkg ScsiDiskDxe: Close event when SCSI command fails

The functions ScsiRead10CommandEx(), ScsiWrite10CommandEx(),
ScsiRead16CommandEx() and ScsiWrite16CommandEx() in UefiScsiLib will not
signal the event passed from ScsiDiskDxe when error occurs.

In this case, ScsiDiskDxe should close the event passing to these APIs in
UefiScsiLib.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Hao Wu <hao.a.wu@intel.com>
Reviewed-by: Feng Tian <feng.tian@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19449 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoMdePkg UefiScsiLib: Close event when SCSI command fails
Hao Wu [Tue, 22 Dec 2015 13:55:59 +0000 (13:55 +0000)]
MdePkg UefiScsiLib: Close event when SCSI command fails

The ScsiExecuteSCSICommand() function in ScsiBusDxe driver will not signal
the event passed from UefiScsiLib when error occurs.

In this case, UefiScsiLib should close the event passing to
ScsiExecuteSCSICommand().

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Hao Wu <hao.a.wu@intel.com>
Reviewed-by: Feng Tian <feng.tian@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19448 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoMdeModulePkg ScsiBusDxe: Only signal caller event when PassThru() succeeds
Hao Wu [Tue, 22 Dec 2015 13:55:34 +0000 (13:55 +0000)]
MdeModulePkg ScsiBusDxe: Only signal caller event when PassThru() succeeds

In ScsiExecuteSCSICommand(), when SCSI devices do not support non-blocking
I/O but an event is passed from caller (UefiScsiLib), the function will
execute the SCSI I/O command in a blocking manner and signal the caller
event when the command completes.

Originally, caller event from UefiScsiLib will be signaled if the SCSI
command fails. UefiScsiLib will continue to signal its caller (BlockIO2
request from ScsiDiskDxe driver), which is not aligned with the UEFI spec
that event will not be signaled when BlockIO2 request returns with error.

This commit will signal ScsiExecuteSCSICommand()'s caller event only when
the SCSI command succeeds.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Hao Wu <hao.a.wu@intel.com>
Reviewed-by: Feng Tian <feng.tian@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19447 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoMdeModulePkg DiskIoDxe: Check for MediaPresent in DiskIo2ReadWriteDisk()
Hao Wu [Tue, 22 Dec 2015 13:55:13 +0000 (13:55 +0000)]
MdeModulePkg DiskIoDxe: Check for MediaPresent in DiskIo2ReadWriteDisk()

Add check to see if there is a media in the disk device. If not return
EFI_NO_MEDIA directly.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Hao Wu <hao.a.wu@intel.com>
Reviewed-by: Feng Tian <feng.tian@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19446 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoMdeModulePkg ScsiDiskDxe: Modify WriteBlocks(Ex)() to follow UEFI spec
Hao Wu [Tue, 22 Dec 2015 13:54:47 +0000 (13:54 +0000)]
MdeModulePkg ScsiDiskDxe: Modify WriteBlocks(Ex)() to follow UEFI spec

The functions ScsiDiskWriteBlocks(Ex) in ScsiDiskDxe/ScsiDisk.c do not
check whether the device is allow to be written originally.

This commit will add read-only check to follow the UEFI spec.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Hao Wu <hao.a.wu@intel.com>
Reviewed-by: Feng Tian <feng.tian@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19445 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoMdeModulePkg ScsiDiskDxe: Modify FlushBlocksEx() to follow UEFI spec
Hao Wu [Tue, 22 Dec 2015 13:54:16 +0000 (13:54 +0000)]
MdeModulePkg ScsiDiskDxe: Modify FlushBlocksEx() to follow UEFI spec

The function ScsiDiskFlushBlocksEx() in ScsiDiskDxe/ScsiDisk.c originally
always returns EFI_SUCCESS, which is not aligned with the UEFI spec.

This commit adds addtional checks to see if the media in the device is
changed or removed. Check for whether the device can be written is also
added. Corresponding status will be returned according to the check
result.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Hao Wu <hao.a.wu@intel.com>
Reviewed-by: Feng Tian <feng.tian@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19444 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoMdeModulePkg ScsiDiskDxe: Set block I/O media of SCSI CDROM to read-only
Hao Wu [Tue, 22 Dec 2015 13:53:26 +0000 (13:53 +0000)]
MdeModulePkg ScsiDiskDxe: Set block I/O media of SCSI CDROM to read-only

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Hao Wu <hao.a.wu@intel.com>
Reviewed-by: Feng Tian <feng.tian@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19443 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoPcAtChipsetPkg/Rtc: Fix a UEFI Win7 boot hang issue
Ruiyu Ni [Tue, 22 Dec 2015 13:52:47 +0000 (13:52 +0000)]
PcAtChipsetPkg/Rtc: Fix a UEFI Win7 boot hang issue

The patch updates the Century value in CMOS location specified
by FADT.Century to avoid UEFI Win7 hang during booting.
Per the ACPI spec if the FADT.Century is zero, it's not needed
to store the century value in CMOS. But UEFI Win7 treats the
Century storage is optional only when FADT.Century is 0x80.
While Linux strictly follows the ACPI spec and treats Century
storage is optional when FADT.Century is 0.
So if a platform wants to support both UEFI Win7 and Linux,
it needs to report FADT.Century to a traditional value which
doesn't equal to 0 or 0x80 (0x32 mostly). And RTC driver is
enhanced to save the century value to the location specified
by FADT.Century.

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

8 years agoMdeModulePkg:Clear the screen before booting the boot option
Dandan Bi [Tue, 22 Dec 2015 09:37:33 +0000 (09:37 +0000)]
MdeModulePkg:Clear the screen before booting the boot option

When do UiApp remodeling task,miss clearing the screen before booting
the selected boot option,so cause some behaviors change.Now add the code
to fix this issue.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Dandan Bi <dandan.bi@intel.com>
Reviewed-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@19441 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoMdeModulePkg:Update Boot Manager form when enter it.
Dandan Bi [Tue, 22 Dec 2015 09:16:21 +0000 (09:16 +0000)]
MdeModulePkg:Update Boot Manager form when enter it.

Currently BootManager is an independent library,used by UiApp.It only load boot
option when enter UiApp.So when add boot option through boot maintenance manager,
it will not display in boot manager. In order to fix this issue,now we update the
boot manager form every time we enter it.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Dandan Bi <dandan.bi@intel.com>
Reviewed-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@19440 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoMdeModulePkg: Add PCD description to MdeModulePkg.uni
Ruiyu Ni [Tue, 22 Dec 2015 07:13:27 +0000 (07:13 +0000)]
MdeModulePkg: Add PCD description to MdeModulePkg.uni

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

8 years agoShellPkg: Add AIP IPv6 UNDI support to Shell dh
Samer El-Haj-Mahmoud [Tue, 22 Dec 2015 02:13:18 +0000 (02:13 +0000)]
ShellPkg: Add AIP IPv6 UNDI support to Shell dh

Update Shell DH command to decode and print the value of gEfiAdapterInfoUndiIpv6SupportGuid AIP instance.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Samer El-Haj-Mahmoud <elhaj@hpe.com>
Reviewed-by: Jaben Carsey <jaben.carsey@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19437 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoNetworkPkg : Remove unused local variables to fix gcc build errors.
Samer El-Haj-Mahmoud [Tue, 22 Dec 2015 02:02:11 +0000 (02:02 +0000)]
NetworkPkg : Remove unused local variables to fix gcc build errors.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Samer El-Haj-Mahmoud <elhaj@hpe.com>
Reviewed-by: Fu Siyuan <siyuan.fu@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19436 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoMdePkg: Add HTTP 1.1 industry standard definitions.
Samer El-Haj-Mahmoud [Tue, 22 Dec 2015 01:42:26 +0000 (01:42 +0000)]
MdePkg: Add HTTP 1.1 industry standard definitions.

Add common HTTP 1.1 industry standard definitions for use in HTTP
clients/applications. List includes: HTTP methods, request/response
headers, and encodings.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Samer El-Haj-Mahmoud <elhaj@hpe.com>
Reviewed-by: Fu Siyuan <siyuan.fu@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19435 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoBaseTools: Update Scripts to support VS2015 env
Liming Gao [Tue, 22 Dec 2015 01:01:54 +0000 (01:01 +0000)]
BaseTools: Update Scripts to support VS2015 env

edk2 Edk2Setup.bat depends on those scripts to configure VS env.
Update them to support VS2015.

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

8 years agoNt32Pkg: Fix VS2015 Build Failure
Liming Gao [Tue, 22 Dec 2015 01:01:31 +0000 (01:01 +0000)]
Nt32Pkg: Fix VS2015 Build Failure

VS2015 separates vcruntime.lib and ucrt.lib from msvcrt.lib. Per MSDN notes,
If you link with the /nodefaultlib option, you will need to link several
extra libraries when you link. For example, whereas you previously might have
just linked msvcrt.lib in order to use the CRT DLL, you will now also
need to link vcruntime.lib and ucrt.lib. More detail is in
http://blogs.msdn.com/b/vcblog/archive/2015/03/03/introducing-the-universal-crt.aspx

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

8 years agoSecurityPkg: SecureBootConfigDxe: Remove useless code in VFR
Chao Zhang [Tue, 22 Dec 2015 00:43:05 +0000 (00:43 +0000)]
SecurityPkg: SecureBootConfigDxe: Remove useless code in VFR

Remove suppressif TRUE, disableif TRUE code in VFR. They are useless.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Chao Zhang <chao.b.zhang@intel.com>
Reviewed-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Tapan Shah <tapandshah@hpe.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19429 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoShellPkg: Refine the code format.
Qiu Shumin [Mon, 21 Dec 2015 05:09:23 +0000 (05:09 +0000)]
ShellPkg: Refine the code format.

1. Add function header comment.
2. Non-Boolean comparisons should explicitly use a compare operator.

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

8 years agoNetworkPkg:Fix a bug the 2nd httpboot fail issue.
Zhang Lubo [Mon, 21 Dec 2015 01:36:08 +0000 (01:36 +0000)]
NetworkPkg:Fix a bug the 2nd httpboot fail issue.

Httpboot over Ipv4 or Ipv6 stack,for both Identity and chunked transfer
mode,when the last data has been parsed by HttpLib, the
HttpInstance->NextMsg pointer should point a correct location.Now after
the first successful httpboot for ipv4 or ipv6,the
HttpInstance->NextMsgpoint the character after the last byte, it may
be a bad buffer if we don't receive another HttpHeader, so if call a
2nd httpboot, the wrong NextMsg pointer will cause the httpboot fail,
so we need to check this case in HttpBodyParserCallback function in
the first http boot process.

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

8 years agoMdeModulePkg: PeiCore fix Xcode -Wempty-body warning
Andrew Fish [Fri, 18 Dec 2015 10:22:18 +0000 (10:22 +0000)]
MdeModulePkg: PeiCore fix Xcode -Wempty-body warning

The single line for(); construct is followed by code that is indented.
This triggers the -Wempty-body warning. Fix indentation.

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

8 years agoMdeModulePkg: Variable add missing VA_COPY
Andrew Fish [Fri, 18 Dec 2015 10:11:25 +0000 (10:11 +0000)]
MdeModulePkg: Variable add missing VA_COPY

Xcode fails to compile:
error: array type 'VA_LIST' (aka '__builtin_va_list') is not assignable

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

8 years agoNetworkPkg: Update iSCSI driver to check existing AIP instances
Ye Ting [Fri, 18 Dec 2015 06:31:31 +0000 (06:31 +0000)]
NetworkPkg: Update iSCSI driver to check existing AIP instances

According to UEFI spec, iSCSI HBA must install an AIP instance
with network boot information block. This patch updates UEFI
iSCSI driver to check whether there are AIP instances installed
by iSCSI HBA adapter and if yes, the UEFI iSCSI driver will return
EFI_ABORTED in its driver binding Start(). Also the patch
introduces a PCD PcdIScsiAIPNetworkBootPolicy for
platform owner to define particular policy when the iSCSI HBA
will survive and UEFI iSCSI will fail. The default policy is
STOP_UEFI_ISCSI_IF_AIP_SUPPORT_OFFLOAD which means that when ISCSI HBA
adapter installs an AIP and claims it supports an offload engine
for iSCSI boot, the UEFI iSCSI driver will return EFI_ABORTED.

The patch V2 adds a new value ALWAYS_USE_UEFI_ISCSI_AND_IGNORE_AIP
to PCD PcdIScsiAIPNetworkBootPolicy. This allows the platform to
avoid running into buggy IHV drivers that have issue with AIP.
It is suggested by El-Haj-Mahmoud,Samer <samer.el-haj-mahmoud@hpe.com>.

Cc: El-Haj-Mahmoud Samer <samer.el-haj-mahmoud@hpe.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ye Ting <ting.ye@intel.com>
Reviewed-by: Fu siyuan <siyuan.fu@intel.com>
Reviewed-by: Wu Jiaxin <jiaxin.wu@intel.com>
Reviewed-by: El-Haj-Mahmoud Samer <samer.el-haj-mahmoud@hpe.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19367 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoMdeModulePkg: Fix VS2012 build failure.
Qiu Shumin [Fri, 18 Dec 2015 05:59:10 +0000 (05:59 +0000)]
MdeModulePkg: Fix VS2012 build failure.

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

8 years agoUefiCpuPkg/CpuMpPei: Remove un-used AsmCliHltLoop()
Jeff Fan [Fri, 18 Dec 2015 03:26:40 +0000 (03:26 +0000)]
UefiCpuPkg/CpuMpPei: Remove un-used AsmCliHltLoop()

Contributed-under: TianoCore Contribution Agreement 1.0
Cc: Feng Tian <feng.tian@intel.com>
Cc: Michael Kinney <michael.d.kinney@intel.com>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jeff Fan <jeff.fan@intel.com>
Tested-by: Michael Kinney <michael.d.kinney@intel.com>
Reviewed-by: Michael Kinney <michael.d.kinney@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19347 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoUefiCpuPkg/CpuMpPei: Wake up APs by proper method
Jeff Fan [Fri, 18 Dec 2015 03:26:03 +0000 (03:26 +0000)]
UefiCpuPkg/CpuMpPei: Wake up APs by proper method

If ApLoopMode is ApInHltLoop, BSP will send INIT-SIPI-SIPI to wake up APs.
If ApLoopMode is ApInMwaitLoop or ApInRunLoop, BSP will write one semaphore to
wake up APs.

Contributed-under: TianoCore Contribution Agreement 1.0
Cc: Feng Tian <feng.tian@intel.com>
Cc: Michael Kinney <michael.d.kinney@intel.com>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jeff Fan <jeff.fan@intel.com>
Tested-by: Michael Kinney <michael.d.kinney@intel.com>
Reviewed-by: Michael Kinney <michael.d.kinney@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19346 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoUefiCpuPkg/CpuMpPei: Place APs in proper loop mode after AP execution
Jeff Fan [Fri, 18 Dec 2015 03:25:32 +0000 (03:25 +0000)]
UefiCpuPkg/CpuMpPei: Place APs in proper loop mode after AP execution

After AP function is executed, we will place AP in proper loop mode. Because AP
maybe waken up by SMI or other reasons. We need to read signature in monitor
buffer to check if APs is waken up by BSP. If it is not waken up by BSP, we will
continue to place them into proper loop mode.

Contributed-under: TianoCore Contribution Agreement 1.0
Cc: Feng Tian <feng.tian@intel.com>
Cc: Michael Kinney <michael.d.kinney@intel.com>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jeff Fan <jeff.fan@intel.com>
Tested-by: Michael Kinney <michael.d.kinney@intel.com>
Reviewed-by: Michael Kinney <michael.d.kinney@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19345 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoUefiCpuPkg/CpuMpPei: Prepare for monitor buffer
Jeff Fan [Fri, 18 Dec 2015 03:25:02 +0000 (03:25 +0000)]
UefiCpuPkg/CpuMpPei: Prepare for monitor buffer

Get AP loop mode to prepare for the monitor buffer required for ApInMwaitLoop
and ApInRunLoop.

Contributed-under: TianoCore Contribution Agreement 1.0
Cc: Feng Tian <feng.tian@intel.com>
Cc: Michael Kinney <michael.d.kinney@intel.com>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jeff Fan <jeff.fan@intel.com>
Tested-by: Michael Kinney <michael.d.kinney@intel.com>
Reviewed-by: Michael Kinney <michael.d.kinney@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19344 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoUefiCpuPkg/CpuMpPei: Add GetApLoopMode() to get AP loop mode
Jeff Fan [Fri, 18 Dec 2015 03:24:27 +0000 (03:24 +0000)]
UefiCpuPkg/CpuMpPei: Add GetApLoopMode() to get AP loop mode

Add GetApLoopMode() that will get PCD PcdCpuApLoopMode firstly. If it is
ApInMwaitLoop, we will check if MONITOR/MWAIT feature supported by CPUID. If
MONITOR/MWAIT feature is not supported, force AP loop mode to ApInHltLoop.

GetApLoopMode() also return the largest line size required.

Contributed-under: TianoCore Contribution Agreement 1.0
Cc: Feng Tian <feng.tian@intel.com>
Cc: Michael Kinney <michael.d.kinney@intel.com>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jeff Fan <jeff.fan@intel.com>
Signed-off-by: Michael Kinney <michael.d.kinney@intel.com>
Tested-by: Michael Kinney <michael.d.kinney@intel.com>
Reviewed-by: Michael Kinney <michael.d.kinney@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19343 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoUefiCpuPkg: Add PCD PcdCpuApTargetCstate
Jeff Fan [Fri, 18 Dec 2015 03:23:53 +0000 (03:23 +0000)]
UefiCpuPkg: Add PCD PcdCpuApTargetCstate

This new PCD is used to specify the AP C-state value by MWAIT instruction.

More deeper C-state means more longer latency time when APs exiting from MWAIT
state. Platforms need to balance the performance and power saving to find the
proper C-state for APs.

Also, some processor may not ready for the deepest C-state at the beginning.
Platform also could choose the proper chance to place AP into the deeper C-state
by set this PCD before hand-off to OS.

Contributed-under: TianoCore Contribution Agreement 1.0
Cc: Feng Tian <feng.tian@intel.com>
Cc: Michael Kinney <michael.d.kinney@intel.com>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jeff Fan <jeff.fan@intel.com>
Reviewed-by: Michael Kinney <michael.d.kinney@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19342 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoUefiCpuPkg: Add PCD PcdCpuApLoopMode
Jeff Fan [Fri, 18 Dec 2015 03:23:27 +0000 (03:23 +0000)]
UefiCpuPkg: Add PCD PcdCpuApLoopMode

This new PCD is used to specify the AP loop mode during POST phase.

The value 1 means we will place AP in the Hlt-Loop state by HLT instruction.
BSP need to send INIT-SIPI-SIPI to wake up APs.

The value 2 means we will place AP in the deepest C-state by MWAIT instruction.
BSP need to modify the monitor buffer by MONITOR instruction to wake up APs.

The value 3 means we will place AP in the Run-loop state. APs are running.
BSP need to write one semaphore to wake up APs.

Contributed-under: TianoCore Contribution Agreement 1.0
Cc: Feng Tian <feng.tian@intel.com>
Cc: Michael Kinney <michael.d.kinney@intel.com>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jeff Fan <jeff.fan@intel.com>
Tested-by: Michael Kinney <michael.d.kinney@intel.com>
Reviewed-by: Michael Kinney <michael.d.kinney@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19341 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoUefiCpuPkg/CpuMpPei: Fix pack(1) issue on x64 arch
Jeff Fan [Fri, 18 Dec 2015 03:22:56 +0000 (03:22 +0000)]
UefiCpuPkg/CpuMpPei: Fix pack(1) issue on x64 arch

Packing alignment for MP_CPU_EXCHANGE_INFO should be 1. This should be typo when
check-in CpuMpPei driver. IA32 arch MP_CPU_EXCHANGE_INFO is luckly pack(1). It
leads CpuMpPei x64 version hung.

Contributed-under: TianoCore Contribution Agreement 1.0
Reported-by: Michael Kinney <michael.d.kinney@intel.com>
Cc: Feng Tian <feng.tian@intel.com>
Cc: Michael Kinney <michael.d.kinney@intel.com>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jeff Fan <jeff.fan@intel.com>
Tested-by: Michael Kinney <michael.d.kinney@intel.com>
Reviewed-by: Michael Kinney <michael.d.kinney@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19340 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoDuetPkg: Fix GCC error to avoid the duplicated global variable in SmbiosGenDxe
Liming Gao [Fri, 18 Dec 2015 02:29:12 +0000 (02:29 +0000)]
DuetPkg: Fix GCC error to avoid the duplicated global variable in SmbiosGenDxe

Update SmbiosGenDxe to use UefiHiiServicesLib.

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

8 years agoDuetPkg: Fix GCC error to avoid the duplicated global variables in EfiLdr
Liming Gao [Fri, 18 Dec 2015 02:28:44 +0000 (02:28 +0000)]
DuetPkg: Fix GCC error to avoid the duplicated global variables in EfiLdr

Move the global variable definitions into source code instead of head filer.

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

8 years agoEdkCompatibilityPkg: Fix GCC error to avoid the duplicated global variables
Liming Gao [Fri, 18 Dec 2015 02:28:18 +0000 (02:28 +0000)]
EdkCompatibilityPkg: Fix GCC error to avoid the duplicated global variables

SmmBaseHelper uses the same name global variables to the one in
SmmMemoryAllocateLib. Update SmmBaseHelper to use SmmMemLib
SmmIsBufferOutsideSmmValid().

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

8 years agoMdeModulePkg:Fix bug that get the password width info incorrectly
Dandan Bi [Fri, 18 Dec 2015 02:14:27 +0000 (02:14 +0000)]
MdeModulePkg:Fix bug that get the password width info incorrectly

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Dandan Bi <dandan.bi@intel.com>
Reviewed-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@19336 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoNetworkPkg:Fix the issue Http boot hang when network failed.
Zhang Lubo [Fri, 18 Dec 2015 01:52:17 +0000 (01:52 +0000)]
NetworkPkg:Fix the issue Http boot hang when network failed.

For both IPv4 and IPv6, when network transfer failed, such as disconnected
cable or disable http server, HTTP boot should exit back to the menu UI
rather than hang.

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

8 years agoDxeTpmMeasureBootLib: Change global variable name to avoid name conflict.
Eric Dong [Fri, 18 Dec 2015 00:53:25 +0000 (00:53 +0000)]
DxeTpmMeasureBootLib: Change global variable name to avoid name conflict.

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

8 years agoArmVirtPkg/ArmVirtXen: add ARM support
Ard Biesheuvel [Thu, 17 Dec 2015 17:11:33 +0000 (17:11 +0000)]
ArmVirtPkg/ArmVirtXen: add ARM support

This adds ARM support to the ArmVirtXen platform. As is the case for
AARCH64, the ARM port adheres to the ARM Linux boot protocol, i.e.,
it expects the address of a DTB describing the platform to be passed
in r2, and relocates itself at runtime to the actual load time memory
offset.

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

8 years agoArmVirtPkg/ArmXenRelocatablePlatformLib: add ARM support
Ard Biesheuvel [Thu, 17 Dec 2015 17:11:25 +0000 (17:11 +0000)]
ArmVirtPkg/ArmXenRelocatablePlatformLib: add ARM support

This is a port of the AARCH64 low level init routines to ARM. This
mainly covers the platform boot code that extracts the system base
and size from the DTB, copies it and updates the FD and FV base
addresses according to the load time offset.

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

8 years agoArmVirtPkg/PrePiRelocatable: add ARM support
Ard Biesheuvel [Thu, 17 Dec 2015 17:11:16 +0000 (17:11 +0000)]
ArmVirtPkg/PrePiRelocatable: add ARM support

This adds support to the self relocating PrePi instance that is built
as a PIE ET_DYN executable. It primarily involves porting the relocation
routine to use ELF32 REL entries instead of ELF64 RELA entries which is
what AArch64 uses.

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

8 years agoArmVirtPkg/XenRelocatablePlatformLib: rewrite DTB memory node retrieval in C
Ard Biesheuvel [Thu, 17 Dec 2015 17:11:07 +0000 (17:11 +0000)]
ArmVirtPkg/XenRelocatablePlatformLib: rewrite DTB memory node retrieval in C

Parsing the DTB early on using a handcoded assembly routine is a pointless
waste of brain cycles, since the UEFI firmware always executes from RAM
under Xen. So instead, set up a temporary stack in the memory region at the
beginning of the image, and use the libfdt C library.

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

8 years agoOvfmPkg/XenHypercallLib: add missing GCC_ASM_EXPORT to XenHypercall2
Ard Biesheuvel [Thu, 17 Dec 2015 17:10:59 +0000 (17:10 +0000)]
OvfmPkg/XenHypercallLib: add missing GCC_ASM_EXPORT to XenHypercall2

GCC_ASM_EXPORT() not only exports a symbol as a function, it also emits
a .type <xxx>, %function directive, which is used by the ARM linker to
decide whether to emit interworking branches. So replace the explicit
.global with GCC_ASM_EXPORT(), or the code will not be callable from
Thumb-2 code.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Acked-by: Jordan Justen <jordan.l.justen@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19329 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoCryptoPkg: fix build support under RVCT
Ard Biesheuvel [Thu, 17 Dec 2015 17:02:06 +0000 (17:02 +0000)]
CryptoPkg: fix build support under RVCT

The RVCT compiler chokes on a couple of issues in upstream OpenSSL that
can be confirmed to be non-issues by inspection. So just ignore these
warnings entirely.

Also, move the dummy -J system include from CryptoPkg.dsc to the various
.INF files, since it will not be picked up when building the CryptoPkg
libraries from a platform .DSC

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Qin Long <qin.long@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19328 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoArmPkg/ArmSoftfloatLib: add missing entry points for RVCT
Ard Biesheuvel [Thu, 17 Dec 2015 16:29:23 +0000 (16:29 +0000)]
ArmPkg/ArmSoftfloatLib: add missing entry points for RVCT

The RVCT compiler may emit calls to the various __aeabi_c?cmp??
functions, which return their results via the CPU condition flags
C and Z. According to ARM doc IHI 0043D 'Run-time ABI for the ARM
architecture':

    The 3-way comparison functions c*cmple, c*cmpeq and c*rcmple return
    their results in the CPSR Z and C flags. C is clear only if the operands
    are ordered and the first operand is less than the second. Z is set only
    when the operands are ordered and equal.

Add implementations for the double and float variants of the above.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19327 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoAdd clarification for PcdAcpiDefault value PCD.
Yao, Jiewen [Thu, 17 Dec 2015 14:06:52 +0000 (14:06 +0000)]
Add clarification for PcdAcpiDefault value PCD.

Add clarification for PcdAcpiDefaultOemTableId, PcdAcpiDefaultOemRevision,
PcdAcpiDefaultCreatorId, PcdAcpiDefaultCreatorRevision.
According to ACPI spec, they are used as special meaning for SSDT,
so we ignore them in updating generic SSDT provided by EDKII.

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

8 years agoShellBinPkg: Ia32/X64 Shell binary update.
Qiu Shumin [Thu, 17 Dec 2015 13:34:43 +0000 (13:34 +0000)]
ShellBinPkg: Ia32/X64 Shell binary update.

The binaries of ShellBinPkg are generated with ShellPkg project 19307. 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@19320 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoBaseTools: Fix one bug in FD region for multiple workspace support
Yonghong Zhu [Thu, 17 Dec 2015 09:38:43 +0000 (09:38 +0000)]
BaseTools: Fix one bug in FD region for multiple workspace support

Update the os.path.join to mws.join for FILE/INF/CAPSULE/FV region type.

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

8 years agoMdePkg: Convert IoLibEbc.c source file to DOS format
Liming Gao [Thu, 17 Dec 2015 08:30:58 +0000 (08:30 +0000)]
MdePkg: Convert IoLibEbc.c source file to DOS format

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Liming Gao <liming.gao@intel.com>
Reviewed-by: Michael Kinney <michael.d.kinney@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19318 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoNetworkPkg: Correct gEfiUdp4ProtocolGuid usage in DnsDxe
Liming Gao [Thu, 17 Dec 2015 08:30:27 +0000 (08:30 +0000)]
NetworkPkg: Correct gEfiUdp4ProtocolGuid usage in DnsDxe

DnsDxe driver locates gEfiUdp4ProtocolGuid. Its usage should be TO_START.

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

8 years agoSourceLevelDebugPkg: Correct gEfiDebugAgentGuid usage in DxeDebugAgentLib
Liming Gao [Thu, 17 Dec 2015 08:29:58 +0000 (08:29 +0000)]
SourceLevelDebugPkg: Correct gEfiDebugAgentGuid usage in DxeDebugAgentLib

DxeDebugAgentLib instance produces gEfiDebugAgentGuid system table.
Its usage should be PRODUCES instead of SOMETIMES_PRODUCES.

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

8 years agoMdeModulePkg: Correct usage gEfiIp4Config2ProtocolGuid in Ip4Dxe
Liming Gao [Thu, 17 Dec 2015 08:29:17 +0000 (08:29 +0000)]
MdeModulePkg: Correct usage gEfiIp4Config2ProtocolGuid in Ip4Dxe

Ip4Dxe driver installs gEfiIp4Config2ProtocolGuid.
Its usage should be BY_START.

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

8 years agoSecurityPkg: Correct Pcd Usage PcdTpm2HashMask in Tcg2Pei
Liming Gao [Thu, 17 Dec 2015 08:28:37 +0000 (08:28 +0000)]
SecurityPkg: Correct Pcd Usage PcdTpm2HashMask in Tcg2Pei

Tcg2Pei sets PcdTpm2HashMask. Its usage should be both SOMETIMES_CONSUMES
and SOMETIMES_PRODUCES.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Liming Gao <liming.gao@intel.com>
Reviewed-by: Chao Zhang <chao.b.zhang@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19314 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoSecurityPkg: Correct Pcd Usage PcdTcg2HashAlgorithmBitmap
Liming Gao [Thu, 17 Dec 2015 08:28:00 +0000 (08:28 +0000)]
SecurityPkg: Correct Pcd Usage PcdTcg2HashAlgorithmBitmap

HashLibBaseCryptoRouter sets PcdTcg2HashAlgorithmBitmap. Its usage
should be both SOMETIMES_CONSUMES and SOMETIMES_PRODUCES.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Liming Gao <liming.gao@intel.com>
Reviewed-by: Chao Zhang <chao.b.zhang@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19313 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoMdeModulePkg: Update print error level for RuntimeDriver alignment check
Liming Gao [Thu, 17 Dec 2015 08:18:18 +0000 (08:18 +0000)]
MdeModulePkg: Update print error level for RuntimeDriver alignment check

In DxeCore, use warning message for Runtime driver that doesn't satisfy
section alignment requirement. This check is required when PropertiesTable
is installed. So, add error message if PropertiesTable can't be installed
successfully.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-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@19312 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoMaintainers.txt: Update maintainers for Quark*Pkg
Michael Kinney [Thu, 17 Dec 2015 07:33:33 +0000 (07:33 +0000)]
Maintainers.txt: Update maintainers for Quark*Pkg

Fix typo in email address
Consolidate QuarkPlatformPkg and QuarkSocPkg

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

8 years agoMdeModulePkg:Fix a bug HttpLib can't parse last chunked data well
Zhang Lubo [Thu, 17 Dec 2015 01:12:11 +0000 (01:12 +0000)]
MdeModulePkg:Fix a bug HttpLib can't parse last chunked data well

When HttpLib parsing the last chunked data down, the Http NextMsg pointer
in the HttpBodyParserCallback function should point to the character
after '/n' flag.

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

8 years agoMdeModulePkg/PciSioSerialDxe:bitwise operation have same width operands
Feng Tian [Thu, 17 Dec 2015 00:50:38 +0000 (00:50 +0000)]
MdeModulePkg/PciSioSerialDxe:bitwise operation have same width operands

Operands in a bitwise operation have different size. Update code to fix it.

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

8 years agoMdeModulePkg/PciSioSerialDxe:add non-null pointer dereference assertion
Feng Tian [Thu, 17 Dec 2015 00:48:16 +0000 (00:48 +0000)]
MdeModulePkg/PciSioSerialDxe:add non-null pointer dereference assertion

Add assertion to make sure there doesn't exist null pointer dereference.

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

8 years agoedk2: Remove svn:mime-type property from UTF-8 files
Jordan Justen [Wed, 16 Dec 2015 21:33:42 +0000 (21:33 +0000)]
edk2: Remove svn:mime-type property from UTF-8 files

Previously the mime-type property was usually set to UTF-16LE.

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

8 years agoQuarkPlatformPkg/PlatformSecLib: Sync Flat32.S with Flat32.asm
Michael Kinney [Wed, 16 Dec 2015 17:34:23 +0000 (17:34 +0000)]
QuarkPlatformPkg/PlatformSecLib: Sync Flat32.S with Flat32.asm

Update Flat32.S to match Flat32.asm.  A sync was missed, so
Flat32.S is calling SecStartup instead of PlatformSecLibStartup
which is causing a boot failures with GCC builds because the
caches are not initialized correctly when the call to
PlatformSecLibStartup is not performed.

Cc: Kelly Steele <kelly.steele@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Michael Kinney <michael.d.kinney@intel.com>
Reviewed-by: Kelly Steele <kelly.steele@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19306 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoQuarkPlatformPkg/SpiFvbServices: Remove duplicate global variable
Michael Kinney [Wed, 16 Dec 2015 17:31:15 +0000 (17:31 +0000)]
QuarkPlatformPkg/SpiFvbServices: Remove duplicate global variable

Remove declaration of gEfiFirmwareVolumeBlockProtocolGuid and
gEfiSmmFirmwareVolumeBlockProtocolGuid that are generating build
failures on GCC because these same variables are declared in
AutoGen.c and assigned a GUID value from DEC file.

Cc: Kelly Steele <kelly.steele@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Michael Kinney <michael.d.kinney@intel.com>
Reviewed-by: Kelly Steele <kelly.steele@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19305 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoShellPkg: Fix unhandled value in switch statement
Paulo Alcantara [Wed, 16 Dec 2015 16:48:59 +0000 (16:48 +0000)]
ShellPkg: Fix unhandled value in switch statement

This patch fixes the following compile error under GCC 5.3.1:

/home/pcacjr/work/edk2.git/ShellPkg/Application/Shell/ShellManParser.c:
In function 'IsTitleHeader':
/home/pcacjr/work/edk2.git/ShellPkg/Application/Shell/ShellManParser.c:502:5:
error: enumeration value 'Final' not handled in switch [-Werror=switch]
     switch (State) {
     ^

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Paulo Alcantara <paulo.alc.cavalcanti@hp.com>
Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Jaben Carsey <jaben.carsey@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19304 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoArmPkg: rewrite vector table population macros
Ard Biesheuvel [Wed, 16 Dec 2015 12:57:14 +0000 (12:57 +0000)]
ArmPkg: rewrite vector table population macros

Unfortunately, Clang does not support the use of symbol references in .org
directives, and bails with the following error message when it encounters
them:

  <...>:error: expected assembly-time absolute expression
  .org DebugAgentVectorTable + 0x000

So replace the .org arguments with absolute values, and move the whole
vector table into a subsection with the appropriate alignment, and
starting at .org 0x0. This gives the same protection with respect to
entries that exceed 128 bytes, in a way that Clang supports as well.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Acked-by: Mark Rutland <mark.rutland@arm.com>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19303 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoFileExplorerLib: Remove the useless code.
Eric Dong [Wed, 16 Dec 2015 11:54:50 +0000 (11:54 +0000)]
FileExplorerLib: Remove the useless code.

The caller has initial the input parameter before call this function, So this code is useless.

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

8 years agoBootManagerLib: Check the pointer to avoid use NULL pointer.
Eric Dong [Wed, 16 Dec 2015 11:48:27 +0000 (11:48 +0000)]
BootManagerLib: Check the pointer to avoid use NULL pointer.

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

8 years agoedk2: Add maintainers for Quark*Pkg
Michael Kinney [Wed, 16 Dec 2015 05:00:32 +0000 (05:00 +0000)]
edk2: Add maintainers for Quark*Pkg

Add maintaintainers for the QuarkSocPkg and QuarkPlatformPkg

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Michael Kinney <michael.d.kinney@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19300 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoMdeModulePkg BdsDxe: Change file format which the existed folder has mixed file format.
Eric Dong [Wed, 16 Dec 2015 03:23:37 +0000 (03:23 +0000)]
MdeModulePkg BdsDxe: Change file format which the existed folder has mixed file format.

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

8 years agoMdeModulePkg FileExplorerDxe: Change file format which has mixed file format.
Eric Dong [Wed, 16 Dec 2015 03:22:39 +0000 (03:22 +0000)]
MdeModulePkg FileExplorerDxe: Change file format which has mixed file format.

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

8 years agoMdeModulePkg FileExplorerLib: Change file format which has mixed file format.
Eric Dong [Wed, 16 Dec 2015 03:21:44 +0000 (03:21 +0000)]
MdeModulePkg FileExplorerLib: Change file format which has mixed file format.

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

8 years agoMdeModulePkg DxeFileExplorerProtocol: Change file format which has mixed file format.
Eric Dong [Wed, 16 Dec 2015 03:20:21 +0000 (03:20 +0000)]
MdeModulePkg DxeFileExplorerProtocol: Change file format which has mixed file format.

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

8 years agoShellPkg: Fix the 'bcfg' command ASSERT when use some invalid parameters.
Qiu Shumin [Wed, 16 Dec 2015 03:18:02 +0000 (03:18 +0000)]
ShellPkg: Fix the 'bcfg' command ASSERT when use some invalid parameters.

'bcfg boot mv xx yy' command will ASSET when xx is larger than the count of boot options.
This patch correct the order of ShellPrintHiiEx parameters to fix the bugs.

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

8 years agoMdeModulePkg/Include: Change file format which the existed folder has mixed file...
Eric Dong [Wed, 16 Dec 2015 03:17:41 +0000 (03:17 +0000)]
MdeModulePkg/Include: Change file format which the existed folder has mixed file format.

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

8 years agoShellPkg: Use %p for smbiosview SMBIOS table addresses.
Samer El-Haj-Mahmoud [Wed, 16 Dec 2015 02:58:05 +0000 (02:58 +0000)]
ShellPkg: Use %p for smbiosview SMBIOS table addresses.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Samer El-Haj-Mahmoud <elhaj@hpe.com>
Reviewed-by: Jaben Carsey <jaben.carsey@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19293 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoMdeModulePkg: Fix RegularExpressionDxe memcpy intrinsic.
Samer El-Haj-Mahmoud [Wed, 16 Dec 2015 02:46:53 +0000 (02:46 +0000)]
MdeModulePkg: Fix RegularExpressionDxe memcpy intrinsic.

Use explicit CopyMem to resolve intrinsic memcpy errors on some compilers.

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

8 years agoShellPkg: Fix a bug in smbiosview PowerSupply Characteristics.
Samer El-Haj-Mahmoud [Wed, 16 Dec 2015 02:14:05 +0000 (02:14 +0000)]
ShellPkg: Fix a bug in smbiosview PowerSupply Characteristics.

Fix bit shifting when isolating the Characteristics of Power Supply information.

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

8 years agoShellPkg: Ease the shell's MAN file Title Header syntax requirements.
Jim Dailey [Wed, 16 Dec 2015 02:01:07 +0000 (02:01 +0000)]
ShellPkg: Ease the shell's MAN file Title Header syntax requirements.

Prior to this change, the shell would not use a MAN file if the Title Header line was not strictly formatted.
For example, if the case of the command name in the file was not exactly the same as the case of the command name as typed by the user,
the MAN file would not be used.  Also, extra whitespace on the line would also cause the shell to ignore the MAN file.
This change allows "extra" white space and ignores case when looking for the command name.
It also ignores any path information for cases where the user enters a relative or absolute path to the EFI file.

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

8 years agoMdePkg: Add missing SMBIOS definitions for SATA and SAS Ports
Samer El-Haj-Mahmoud [Wed, 16 Dec 2015 00:56:20 +0000 (00:56 +0000)]
MdePkg: Add missing SMBIOS definitions for SATA and SAS Ports

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

8 years agoMdePkg: Add GIC version to ACPI 5.1/6 definitions
Samer El-Haj-Mahmoud [Wed, 16 Dec 2015 00:55:29 +0000 (00:55 +0000)]
MdePkg: Add GIC version to ACPI 5.1/6 definitions

The GicVersion field is defined in ACPI 5.1 and 6.0

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: "Samer El-Haj-Mahmoud" <elhaj@hpe.com>
Reviewed-by: "Yao, Jiewen" <jiewen.yao@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19288 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoQuarkPlatformPkg: Add new package for Galileo boards
Michael Kinney [Tue, 15 Dec 2015 19:23:57 +0000 (19:23 +0000)]
QuarkPlatformPkg: Add new package for Galileo boards

Changes for V4
==============
1) Move delete of QuarkSocPkg\QuarkNorthCluster\Binary\QuarkMicrocode
   from QuarkPlatformPkg commit to QuarkSocPkg commit
2) Fix incorrect license header in PlatformSecLibModStrs.uni

Changes for V3
==============
1) Set PcdResetOnMemoryTypeInformationChange FALSE in QuarkMin.dsc
   This is required because QuarkMin.dsc uses the emulated variable
   driver that does not preserve any non-volatile UEFI variables
   across reset.  If the condition is met where the memory type
   information variable needs to be updated, then the system will reset
   every time the UEFI Shell is run.  By setting this PCD to FALSE,
   then reset action is disabled.
2) Move one binary file to QuarkSocBinPkg
3) Change RMU.bin FILE statements to INF statement in DSC FD region
   to be compatible with PACKAGES_PATH search for QuarkSocBinPkg

Changes for V2
==============
1) Use new generic PCI serial driver PciSioSerialDxe in MdeModulePkg
2) Configure PcdPciSerialParameters for PCI serial driver for Quark
3) Use new MtrrLib API to reduce time to set MTRRs for all DRAM
4) Convert all UNI files to utf-8
5) Replace tabs with spaces and remove trailing spaces
6) Add License.txt

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Michael Kinney <michael.d.kinney@intel.com>
Acked-by: Jordan Justen <jordan.l.justen@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19287 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoQuarkSocPkg: Add new package for Quark SoC X1000
Michael Kinney [Tue, 15 Dec 2015 19:22:23 +0000 (19:22 +0000)]
QuarkSocPkg: Add new package for Quark SoC X1000

Changes for V4
==============
1) Remove Unicode character from C source file
2) Move delete of QuarkSocPkg\QuarkNorthCluster\Binary\QuarkMicrocode
   from QuarkPlatformPkg commit to QuarkSocPkg commit

Changes for V2
==============
1) Sync with new APIs in SmmCpuFeaturesLib class
2) Use new generic PCI serial driver PciSioSerialDxe in MdeModulePkg
3) Remove PCI serial driver from QuarkSocPkg
4) Apply optimizations to MtrrLib from MtrrLib in UefiCpuPkg
5) Convert all UNI files to utf-8
6) Replace tabs with spaces and remove trailing spaces
7) Add License.txt

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Michael Kinney <michael.d.kinney@intel.com>
Acked-by: Jordan Justen <jordan.l.justen@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19286 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoArmPkg/ArmV7Mmu: prefer non shareable memory on non-coherent hardware
Ard Biesheuvel [Tue, 15 Dec 2015 17:31:56 +0000 (17:31 +0000)]
ArmPkg/ArmV7Mmu: prefer non shareable memory on non-coherent hardware

Commit SVN r18778 made all mappings of normal memory (inner) shareable,
even on hardware that implements shareability as uncached accesses.
The original concerns that prompted the change, regarding coherent DMA
and virt guests migrating between CPUs, do not apply to such hardware,
so revert to the original behavior in that case.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19285 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoBaseTools ARM: add CLANG35 support
Ard Biesheuvel [Tue, 15 Dec 2015 15:02:24 +0000 (15:02 +0000)]
BaseTools ARM: add CLANG35 support

This extends the existing CLANG35 toolchain definition with support for
building for the ARM architecture. In order to be able to reuse the existing
ARM GCC definitions as much as possible, the following changes have been
made to the existing ARM GCC support:
- the -mapcs option has been removed; it is a no-op under Thumb (our default)
  and we use AAPCS (-mabi=aapcs) anyway
- the -mword-relocations option has been moved from GCC_ARM_CC_FLAGS to
  the GCC4x specific option: CLANG does not support it, and uses '-mllvm
  -marm-use-movt=0' instead.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19284 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoArmPkg/ArmSoftfloatLib: restrict -fno-tree-vrp option to GCC46 and GCC47
Ard Biesheuvel [Tue, 15 Dec 2015 15:02:16 +0000 (15:02 +0000)]
ArmPkg/ArmSoftfloatLib: restrict -fno-tree-vrp option to GCC46 and GCC47

The -fno-tree-vrp option is not required for GCC 4.8 or later, and is not
supported by CLANG. So restrict its use to GCC 4.6 and 4.7, which are the
oldest versions we support for ARM.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19283 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoArmPkg/ArmV7Lib: add CLANG alternative for FPEXC access
Ard Biesheuvel [Tue, 15 Dec 2015 15:02:07 +0000 (15:02 +0000)]
ArmPkg/ArmV7Lib: add CLANG alternative for FPEXC access

The open coded access to co-processor #10 to set FPEXC is not supported
by the CLANG assembler, but the architecturally correct VMSR instruction
is not supported by older binutils. So keep the former unless __clang__
is defined.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19282 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoArmPkg/CompilerIntrinsicsLib: add GCC version of __aeabi_memset()
Ard Biesheuvel [Tue, 15 Dec 2015 15:01:58 +0000 (15:01 +0000)]
ArmPkg/CompilerIntrinsicsLib: add GCC version of __aeabi_memset()

CLANG for ARM may emit calls to __aeabi_memset(), which is subtly different
from the default memset() [arguments 2 and 3 are reversed]

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19281 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoArmPkg: use unified asm syntax for CLANG
Ard Biesheuvel [Tue, 15 Dec 2015 15:01:42 +0000 (15:01 +0000)]
ArmPkg: use unified asm syntax for CLANG

The CLANG assembler does not support the legacy, non-unified assembler syntax,
i.e., it does not support the reordering of the condition suffixes with the
increment/decrement before/after or byte/word suffixes, and it does not
recognize the 'empty descending' (ED) suffix at all. So move to the unified
syntax, and replace 'empty descending' with 'decrement after' or 'increment
before' as appropriate.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19280 6f19259b-4bc3-4df7-8a09-765794883524