8 years agoNew EDK Shell binary(r63).
niruiyu [Fri, 17 May 2013 07:36:14 +0000 (07:36 +0000)]
New EDK Shell binary(r63).

Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14374 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoPop up error message when user tries to enroll an invalid certificate file into KEK...
sfu5 [Fri, 17 May 2013 07:03:49 +0000 (07:03 +0000)]
Pop up error message when user tries to enroll an invalid certificate file into KEK/DB/DBX.
Signed-off-by: Fu Siyuan <siyuan.fu@intel.com>
Reviewed-by: Ye Ting <ting.ye@intel.com>
Reviewed-by: Yao Jiewen <jiewen.yao@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14373 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoAdd EDKII_VARIABLE_LOCK_PROTOCOL and the implementation in MdeModulePkg variable...
niruiyu [Fri, 17 May 2013 03:49:35 +0000 (03:49 +0000)]
Add EDKII_VARIABLE_LOCK_PROTOCOL and the implementation in MdeModulePkg variable drivers.
Add code in BdsDxe driver to call the protocol to mark the read-only variables defined in the UEFI Spec.

Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
Reviewed-by: Guo Dong <guo.dong@intel.com>
Reviewed-by: Star Zeng <star.zeng@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14372 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoUpdate the logic about get initial value for one storage.
ydong10 [Thu, 16 May 2013 08:41:39 +0000 (08:41 +0000)]
Update the logic about get initial value for one storage.

Signed-off-by: Eric Dong <eric.dong@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14370 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoSeparate memory allocation for FPDT S3 performance table and boot performance table...
lzeng14 [Thu, 16 May 2013 07:35:30 +0000 (07:35 +0000)]
Separate memory allocation for FPDT S3 performance table and boot performance table, save S3 performance table pointer to LockBox in FirmwarePerformanceDxe. Then FirmwarePerformancePei can use the pointer in LockBox.

Signed-off-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14369 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoShellPkg\Library\UefiShellCEntryLib\UefiShellCEntryLib.c:
darylm503 [Wed, 15 May 2013 20:39:04 +0000 (20:39 +0000)]
Return actual error codes instead of EFI_UNSUPPORTED for all errors.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: daryl.mcdaniel@intel.com
Reviewed-by: jaben.carsey@intel.com
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14368 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoOvmfPkg: QemuBootOrder: recognize Ethernet OFW device paths
jljusten [Wed, 15 May 2013 18:21:08 +0000 (18:21 +0000)]
OvmfPkg: QemuBootOrder: recognize Ethernet OFW device paths

Tested with the e1000, ne2k_pci, pcnet, rtl8139, and virtio iPXE UEFI
oprom drivers distributed with qemu-1.5.0-rc1. Also tested with Intel's
e1000 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>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14367 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoOvmfPkg: enable the generic network stack by default
jljusten [Wed, 15 May 2013 18:20:39 +0000 (18:20 +0000)]
OvmfPkg: enable the generic network stack by default

DHCP, PXE, and StdLib socket apps are enabled in OVMF by the sum of:
(a) a UEFI NIC driver,
(b) the generic network stack.

The only choice for (a) used to be the proprietary Intel E1000 driver,
which is cumbersome to obtain and enable.

The iPXE UEFI NIC drivers packaged with qemu-1.5 cover (a) for each NIC
type supported by qemu, and are easy to obtain & configure, even for
earlier qemu versions. Therefore enable (b) per default as well.

This doesn't take up much space; the binaries (b) adds to the firmware
don't seem to need -D FD_SIZE_2MB.

Intel's e1000 driver remains an option, requested by the -D E1000_ENABLE
build flag.

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://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14366 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoEmbeddedPkg/SerialPortExtLib.h: Changed SerialPortSetAttributes() prototype to return...
oliviermartin [Wed, 15 May 2013 08:44:59 +0000 (08:44 +0000)]
EmbeddedPkg/SerialPortExtLib.h: Changed SerialPortSetAttributes() prototype to return the set value(s)

To be compliant with the UEFI specification it is required to update SERIAL_IO_MODE with the values set.
This prototype change allows to get the value used inside SerialPortSetAttributes().

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Olivier Martin <Olivier.martin@arm.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14365 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoOvmfPkg: describe debug messages in the README file
jljusten [Wed, 15 May 2013 08:09:29 +0000 (08:09 +0000)]
OvmfPkg: describe debug messages in the README file

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://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14364 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoOvmfPkg: adapt VirtioFlush()'s leading comment to the coding style
jljusten [Wed, 15 May 2013 06:23:22 +0000 (06:23 +0000)]
OvmfPkg: adapt VirtioFlush()'s leading comment to the coding style

Contributed-under: TianoCore Contribution Agreement 1.0

Signed-off-by: Laszlo Ersek <lersek@redhat.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14362 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoOvmfPkg: adapt VirtioAppendDesc()'s leading comment to the coding style
jljusten [Wed, 15 May 2013 06:22:50 +0000 (06:22 +0000)]
OvmfPkg: adapt VirtioAppendDesc()'s leading comment to the coding style

Contributed-under: TianoCore Contribution Agreement 1.0

Signed-off-by: Laszlo Ersek <lersek@redhat.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14361 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoOvmfPkg: adapt VirtioPrepare()'s leading comment to the coding style
jljusten [Wed, 15 May 2013 06:22:15 +0000 (06:22 +0000)]
OvmfPkg: adapt VirtioPrepare()'s leading comment to the coding style

Contributed-under: TianoCore Contribution Agreement 1.0

Signed-off-by: Laszlo Ersek <lersek@redhat.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14360 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoEmulatorPkg: Add SerialPortExtLib library class mapping
jljusten [Wed, 15 May 2013 05:18:49 +0000 (05:18 +0000)]
EmulatorPkg: Add SerialPortExtLib library class mapping

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Olivier Martin <olivier.martin@arm.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14359 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoStdLib/LibC/Locale/multibyte_Utf8.c: Fix obscure corner cases in wide to multibyte...
darylm503 [Wed, 15 May 2013 01:59:11 +0000 (01:59 +0000)]
StdLib/LibC/Locale/multibyte_Utf8.c: Fix obscure corner cases in wide to multibyte and multibyte to wide character conversions.  The majority of problems center around the interpretation of the Length or Limit parameter when the Destination parameter is NULL.

DecodeOneStateful: Properly handle combinations of Src, Dest, or Len being NULL or 0.

EncodeUtf8: Do not zero-terminate the result string in this worker function.

mbsrtowcs: Remove test for **src == '\0', as per ISO/IEC 9899:199409.  Allows "".

wcsrtombs:  The C Language standard, ISO/IEC 9899:199409, states that the wcsrtombs() function will stop before encountering the terminating NUL character only if Dest is NOT NULL.  This implies that if Dest is NULL, the Limit parameter will be ignored.  In order to avoid system hangs, if Dest is NULL a Limit value of ASCII_STRING_MAX is automatically used.  Also fixed a typo in the function header comment.

With these changes, StdLib now passes all of the C Language Standards Compliance Tests for ISO/IEC 9899:199409 (C95).

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: daryl.mcdaniel@intel.com
Reviewed-by: erik.c.bjorge@intel.com
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14358 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoEmulatorPkg/(Pei|Dxe)EmuSerialPortLib: Remove the SerialPortExtLib functions from...
oliviermartin [Tue, 14 May 2013 23:50:33 +0000 (23:50 +0000)]
EmulatorPkg/(Pei|Dxe)EmuSerialPortLib: Remove the SerialPortExtLib functions from SerialPortLib

SerialPortSetControl, SerialPortGetControl and SerialPortSetAttributes are functions
of the SerialPortExtLib library interface. They should not be implemented by the
SerialPortLib library.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Olivier Martin <Olivier.martin@arm.com>
Reviewed-by: Andrew Fish <afish@apple.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14357 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoOvmfPkg: VirtioLib: populate the Available Ring correctly
jljusten [Tue, 14 May 2013 15:57:55 +0000 (15:57 +0000)]
OvmfPkg: VirtioLib: populate the Available Ring correctly

The descriptor table (also known as "queue") consists of descriptors. (The
corresponding type in the code is VRING_DESC.)

An individual descriptor describes a contiguous buffer, to be transferred
uni-directionally between host and guest.

Several descriptors in the descriptor table can be linked into a
descriptor chain, specifying a bi-directional scatter-gather transfer
between host and guest. Such a descriptor chain is also known as "virtio

(The descriptor table can host sereval descriptor chains (in-flight virtio
requests) in parallel, but the OVMF driver supports at most one chain, at
any point in time.)

The first descriptor in any descriptor chain is called "head descriptor".
In order to submit a number of parallel requests (= a set of independent
descriptor chains) from the guest to the host, the guest must put *only*
the head descriptor of each separate chain onto the Available Ring.

VirtioLib currently places the head of its one descriptor chain onto the
Available Ring repeatedly, once for each single (head *or* dependent)
descriptor in said descriptor chain. If the descriptor chain comprises N
descriptors, this error amounts to submitting the same entire chain N
times in parallel.

  Available Ring    Descriptor table
    Ptr to head ----> Desc#0     (head of chain)
    Ptr to head --/   Desc#1     (next in same chain)
    ...          /    ...
    Ptr to head /     Desc#(N-1) (last in same chain)

Anatomy of a single virtio-blk READ request (a descriptor chain with three

  virtio-blk request header, prepared by guest:
    VirtioAppendDesc PhysAddr=3FBC6050 Size=16 Flags=1 Head=1232 Next=1232

  payload to be filled in by host:
    VirtioAppendDesc PhysAddr=3B934C00 Size=32768 Flags=3 Head=1232 Next=1233

  host status, to be filled in by host:
    VirtioAppendDesc PhysAddr=3FBC604F Size=1 Flags=2 Head=1232 Next=1234

Processing on the host side -- the descriptor chain is processed three
times in parallel (its head is available to virtqueue_pop() thrice); the
same chain is submitted/collected separately to/from AIO three times:

  virtio_queue_notify vdev VDEV vq VQ#0

  virtqueue_pop vq VQ#0 elem EL#0 in_num 2 out_num 1
  bdrv_aio_readv bs BDRV sector_num 585792 nb_sectors 64 opaque REQ#0

  virtqueue_pop vq VQ#0 elem EL#1 in_num 2 out_num 1
  bdrv_aio_readv bs BDRV sector_num 585792 nb_sectors 64 opaque REQ#1

  virtqueue_pop vq VQ#0 elem EL#2 in_num 2 out_num 1
  bdrv_aio_readv bs BDRV sector_num 585792 nb_sectors 64 opaque REQ#2

  virtio_blk_rw_complete req REQ#0 ret 0
  virtio_blk_req_complete req REQ#0 status 0

  virtio_blk_rw_complete req REQ#1 ret 0
  virtio_blk_req_complete req REQ#1 status 0

  virtio_blk_rw_complete req REQ#2 ret 0
  virtio_blk_req_complete req REQ#2 status 0

On my Thinkpad T510 laptop with RHEL-6 as host, this probably leads to
simultaneous DMA transfers targeting the same RAM area. Even though the
source of each transfer is identical, the data is corrupted in the
destination buffer -- the CRC32 calculated over the buffer varies, even
though the origin of the transfers is the same, never rewritten LBA.

  SynchronousRequest Lba=585792 BufSiz=32768 ReqIsWrite=0 Crc32=BF68A44D

The problem is invisible on my HP Z400 workstation.

Fix the request submission by:
- building the only one descriptor chain supported by VirtioLib always at
  the beginning of the descriptor table,
- ensuring the head descriptor of this chain is put on the Available Ring
  only once,
- requesting the virtio spec's language to be cleaned up

  Available Ring    Descriptor table
    Ptr to head ----> Desc#0     (head of chain)
                      Desc#1     (next in same chain)
                      Desc#(N-1) (last in same chain)

  VirtioAppendDesc PhysAddr=3FBC6040 Size=16 Flags=1 Head=0 Next=0
  VirtioAppendDesc PhysAddr=3B934C00 Size=32768 Flags=3 Head=0 Next=1
  VirtioAppendDesc PhysAddr=3FBC603F Size=1 Flags=2 Head=0 Next=2

    virtio_queue_notify vdev VDEV vq VQ#0

    virtqueue_pop vq VQ#0 elem EL#0 in_num 2 out_num 1
    bdrv_aio_readv bs BDRV sector_num 585792 nb_sectors 64 opaque REQ#0

    virtio_blk_rw_complete req REQ#0 ret 0
    virtio_blk_req_complete req REQ#0 status 0

  SynchronousRequest Lba=585792 BufSiz=32768 ReqIsWrite=0 Crc32=1EEB2B07

(The Crc32 was double-checked with edk2's and Linux's guest IDE 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>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14356 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoAdd Copyright notices and comments for Red Hat contributor.
sfu5 [Tue, 14 May 2013 06:25:39 +0000 (06:25 +0000)]
Add Copyright notices and comments for Red Hat contributor.
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Fu Siyuan <siyuan.fu@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14355 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoFix bug in PXE driver: memory may be freed before use.
sfu5 [Tue, 14 May 2013 03:01:51 +0000 (03:01 +0000)]
Fix bug in PXE driver: memory may be freed before use.
Signed-off-by: Fu Siyuan <siyuan.fu@intel.com>
Reviewed-by: Ye Ting <ting.ye@intel.com>
Reviewed-by: Ouyang Qian <qian.ouyang@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14354 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoShellPkg: remove unused enum
jcarsey [Mon, 13 May 2013 17:22:30 +0000 (17:22 +0000)]
ShellPkg: remove unused enum

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://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14353 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoUpdate Code to pass EBC compiler.
lgao4 [Mon, 13 May 2013 02:36:09 +0000 (02:36 +0000)]
Update Code to pass EBC compiler.
Signed-off-by: Liming Gao <liming.gao@intel.com>
Reviewed-by: Star Zeng <star.zeng@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14352 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoArmPkg/BdsLinuxFdt.c: Fix creation of 'cpu' and 'psci' device tree nodes.
oliviermartin [Sun, 12 May 2013 23:56:35 +0000 (23:56 +0000)]
ArmPkg/BdsLinuxFdt.c: Fix creation of 'cpu' and 'psci' device tree nodes.

* Fix name of 'device_type' and 'migrate' properties.
* Fix 'reg' property. It is supposed to contain the CPU MPIDR of the
  CPU being described.
* Fix byte ordering of data in 'psci' node.
* Fix some problems regarding the size of data. In a number of places
  it was assumed data would be 32-bits wide.

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

8 years agoArmPkg/BdsLinuxFdt.c: Introduce cpu_to_fdtn() function.
oliviermartin [Sun, 12 May 2013 23:55:22 +0000 (23:55 +0000)]
ArmPkg/BdsLinuxFdt.c: Introduce cpu_to_fdtn() function.

Introduce cpu_to_fdtn() function which will call the appropriate 32-bit
or 64-bit version based on the size of a native integer.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Olivier Martin <olivier.martin@arm.com
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14350 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoArmPkg/BdsLinuxFdt.c: Split PrepareFdt() into several functions.
oliviermartin [Sun, 12 May 2013 23:54:16 +0000 (23:54 +0000)]
ArmPkg/BdsLinuxFdt.c: Split PrepareFdt() into several functions.

PrepareFdt() function was getting pretty fat and big functions are more
complex to understand and find the information one is looking for.

This patch extracts some code from PrepareFdt() function and put it
in some new functions.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Olivier Martin <olivier.martin@arm.com
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14349 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoArmPlatformPkg/ArmVExpressPkg: Switch from ATAG to FDT for VExpress RTSM
oliviermartin [Sun, 12 May 2013 23:46:47 +0000 (23:46 +0000)]
ArmPlatformPkg/ArmVExpressPkg: Switch from ATAG to FDT for VExpress RTSM

The FDT name are the one from Linaro release.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Olivier Martin <olivier.martin@arm.com
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14348 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoArmPlatform/ArmPlatformLib: Introduced ArmPlatformPeiBootAction()
oliviermartin [Fri, 10 May 2013 12:49:10 +0000 (12:49 +0000)]
ArmPlatform/ArmPlatformLib: Introduced ArmPlatformPeiBootAction()

This function allows platform to do any specific actions prior to
the start the PEI phase.
For instance, this function could be used by some platforms to initialize clocks that
are required at the early stage of the PEI phase.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Olivier Martin <olivier.martin@arm.com>
Acked-by: Ryan Harkin <ryan.harkin@linaro.org>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14347 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoARM Packages: Replaced the macro GetCorePositionFromMpId() by the ArmPlatformGetCoreP...
oliviermartin [Fri, 10 May 2013 12:46:11 +0000 (12:46 +0000)]
ARM Packages: Replaced the macro GetCorePositionFromMpId() by the ArmPlatformGetCorePosition()

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Olivier Martin <olivier.martin@arm.com>
Acked-by: Ryan Harkin <ryan.harkin@linaro.org>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14346 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoArmPlatformPkg/ArmPlatformLib: Added ArmPlatformGetPrimaryCoreMpId()
oliviermartin [Fri, 10 May 2013 12:44:30 +0000 (12:44 +0000)]
ArmPlatformPkg/ArmPlatformLib: Added ArmPlatformGetPrimaryCoreMpId()

ArmPlatformGetPrimaryCoreMpId returns the MPID of the primary core.
The primary core might not be known at build time (eg: the platform allows
the boot CPU to be changed through board config).

This function is used during the secondary core stack initialization to know
the position of the secondary core in the SoC.
A secondary core that is at the position N, with N greater than the primary
core position, will be at the position N-1 in the list of secondary stacks
(the primary core has its own separate bigger stack).

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Olivier Martin <olivier.martin@arm.com>
Acked-by: Ryan Harkin <ryan.harkin@linaro.org>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14345 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoArmPlatformPkg/ArmPlatformLib: Added support for ArmPlatformIsPrimaryCore()
oliviermartin [Fri, 10 May 2013 12:41:27 +0000 (12:41 +0000)]
ArmPlatformPkg/ArmPlatformLib: Added support for ArmPlatformIsPrimaryCore()

Checking if a core if the primary/boot core used to be done with the macro
Some platforms exposes configuration registers to change the primary core.
Replacing the macro IS_PRIMARY_CORE() by ArmPlatformIsPrimaryCore() allows
some flexibility in the way to check the primary core.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Olivier Martin <olivier.martin@arm.com>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
Acked-by: Ryan Harkin <ryan.harkin@linaro.org>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14344 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoArmPlatformPkg/ArmPlatformLib.h: Removed non-required header file
oliviermartin [Fri, 10 May 2013 12:34:36 +0000 (12:34 +0000)]
ArmPlatformPkg/ArmPlatformLib.h: Removed non-required header file

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14343 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoArmPlatformPkg/Sec: Replaced non-required 'blx' by 'bl'
oliviermartin [Fri, 10 May 2013 12:33:26 +0000 (12:33 +0000)]
ArmPlatformPkg/Sec: Replaced non-required 'blx' by 'bl'

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14342 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoMdeMdeModulePkg/Xhci: Clear BIOS_OWN semaphore before halting XHCI controller
erictian [Fri, 10 May 2013 05:23:39 +0000 (05:23 +0000)]
MdeMdeModulePkg/Xhci: Clear BIOS_OWN semaphore before halting XHCI controller

Signed-off-by: Feng Tian <feng.tian@intel.com>
Reviewed-by: Steven Shi <steven.shi@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14339 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoMdeMdeModulePkg/UsbBusDxe: Break device enumeration process if the device descriptor...
erictian [Fri, 10 May 2013 05:19:30 +0000 (05:19 +0000)]
MdeMdeModulePkg/UsbBusDxe: Break device enumeration process if the device descriptor includes 0 configuration.

Signed-off-by: Feng Tian <feng.tian@intel.com>
Reviewed-by: Mike Wu <mike.wu@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14338 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoShellPkg: Update behavior for GetTime() errors.
jcarsey [Thu, 9 May 2013 16:18:58 +0000 (16:18 +0000)]
ShellPkg: Update behavior for GetTime() errors.

Please find the attached patch that fixes the ShellPkg when gRT->GetTime() returns an error (eg: early UEFI platform bringup with a RTC controller that is not supported).
On some platforms, gRT->GetTime() might not return EFI_SUCCESS. The Shell must check the return status before to assume the returned time is valid.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Olivier Martin <Olivier.Martin@arm.com>
Reviewed-by: Jaben Carsey <Jaben.Carsey@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14337 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoShellPkg: Return an error when it happens
jcarsey [Thu, 9 May 2013 16:16:21 +0000 (16:16 +0000)]
ShellPkg: Return an error when it happens

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://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14336 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoCheck if video device exists before trying to install Video OpROM.
li-elvin [Thu, 9 May 2013 08:47:09 +0000 (08:47 +0000)]
Check if video device exists before trying to install Video OpROM.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14335 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoSkip PXE prompt/menu/discover if PXE_DISCOVERY_CONTROL tag bit 3 set.
sfu5 [Thu, 9 May 2013 05:28:27 +0000 (05:28 +0000)]
Skip PXE prompt/menu/discover if PXE_DISCOVERY_CONTROL tag bit 3 set.
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Ye Ting <ting.ye@intel.com>
Reviewed-by: Fu Siyuan <siyuan.fu@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14332 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoUpdated connecting HOST version information from 1.3 to 1.3.1.
vanjeff [Wed, 8 May 2013 08:29:11 +0000 (08:29 +0000)]
Updated connecting HOST version information from 1.3 to 1.3.1.

Signed-off-by: Jeff Fan <jeff.fan@intel.com>
Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14328 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoShellPkg: Fixed build error 'variable set but not used'
jcarsey [Tue, 7 May 2013 17:57:58 +0000 (17:57 +0000)]
ShellPkg: Fixed build error 'variable set but not used'

GCC toolchain cannot build ShellPkg.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Harry Liebel <Harry.Liebel@arm.com>
Signed-off-by: Olivier Martin <Olivier.Martin@arm.com>
Reviewed-by: Jaben Carsey <Jaben.Carsey@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14326 6f19259b-4bc3-4df7-8a09-765794883524

8 years ago1. Fix TOCTOU issue in VariableSmm, FtwSmm, FpdtSmm, SmmCorePerformance SMM handler...
lzeng14 [Tue, 7 May 2013 05:38:32 +0000 (05:38 +0000)]
1. Fix TOCTOU issue in VariableSmm, FtwSmm, FpdtSmm, SmmCorePerformance SMM handler. For VariableSmm, pre-allocate a mVariableBufferPayload buffer with mVariableBufferPayloadSize(match with mVariableBufferPayloadSize in VariableSmmRuntimeDxe) to hold communicate buffer payload to avoid TOCTOU issue.
2. Add check to ensure CommBufferPayloadSize not exceed mVariableBufferPayloadSize or is enough to hold function structure in VariableSmm and FtwSmm.
3. Align FtwGetLastWrite() in FaultTolerantWriteSmmDxe.c to FtwGetLastWrite() in FaultTolerantWrite.c.

Signed-off-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14325 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoRead/Write memory space including MMIO range with the width requested from HOST.
vanjeff [Mon, 6 May 2013 07:36:32 +0000 (07:36 +0000)]
Read/Write memory space including MMIO range with the width requested from HOST.

Signed-off-by: Jeff Fan <jeff.fan@intel.com>
Reviewed-by: Kinney, Michael D <michael.d.kinney@intel.com>
Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14324 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoFix memory overflow & VariableSize check issue for SetVariable append write.
czhang46 [Thu, 2 May 2013 01:42:39 +0000 (01:42 +0000)]
Fix memory overflow & VariableSize check issue for SetVariable append write.

Signed-off-by: Chao Zhang <chao.b.zhang@intel.com>
Reviewed-by  : Fu Siyuan  <siyuan.fu@intel.com>
Reviewed-by  : Dong Guo   <guo.dong@intel.com>

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14323 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoFix the bug which incorrectly programs the 64bit base address register in the PCI...
niruiyu [Sat, 27 Apr 2013 02:03:58 +0000 (02:03 +0000)]
Fix the bug which incorrectly programs the 64bit base address register in the PCI to PCI bridge.

Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
Reviewed-by: Elvin Li <elvin.li@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14318 6f19259b-4bc3-4df7-8a09-765794883524

8 years ago1. Use the check IsAddressValid() to prevent SMM communication buffer overflow in...
lzeng14 [Thu, 25 Apr 2013 10:49:45 +0000 (10:49 +0000)]
1. Use the check IsAddressValid() to prevent SMM communication buffer overflow in SmmVariable, FtwSmm, FpdtSmm, SmmCorePerformance and SmmBaseHelper, and add check to prevent InfoSize overflows in SmmVariableHandler.
2. Refine the debug message.
3. Add check to make sure the input VariableName is A Null-terminated string.
4. Use local variable to hold StrSize (VariableName) to avoid duplicated StrSize calculation.

Signed-off-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com>
Reviewed-by: Chao Zhang <chao.b.zhang@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14317 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoCheck for NULL pointer before free it.
sfu5 [Thu, 25 Apr 2013 01:38:06 +0000 (01:38 +0000)]
Check for NULL pointer before free it.
Signed-off-by: Fu Siyuan <siyuan.fu@intel.com>
Reviewed-by: Ye Ting <ting.ye@intel.com>
Reviewed-by: Dong Guo <guo.dong@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14316 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoUpdate dual network stack drivers to produce multiple Driver Binding Protocol.
sfu5 [Thu, 25 Apr 2013 01:33:43 +0000 (01:33 +0000)]
Update dual network stack drivers to produce multiple Driver Binding Protocol.
Signed-off-by: Fu Siyuan <siyuan.fu@intel.com>
Reviewed-by: Ye Ting <ting.ye@intel.com>
Reviewed-by: Ouyang Qian <qian.ouyang@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14315 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoFix ping command issue in IP4 driver.
sfu5 [Thu, 25 Apr 2013 01:25:49 +0000 (01:25 +0000)]
Fix ping command issue in IP4 driver.
Signed-off-by: Fu Siyuan <siyuan.fu@intel.com>
Reviewed-by: Ye Ting <ting.ye@intel.com>
Reviewed-by: Ouyang Qian <qian.ouyang@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14314 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoGet ParentDevicePath by using attribute EFI_OPEN_PROTOCOL_GET_PROTOCOL instead of...
sfu5 [Thu, 25 Apr 2013 01:18:58 +0000 (01:18 +0000)]
Get ParentDevicePath by using attribute EFI_OPEN_PROTOCOL_GET_PROTOCOL instead of BY_CHILD.
Signed-off-by: Fu Siyuan <siyuan.fu@intel.com>
Reviewed-by: Ye Ting <ting.ye@intel.com>
Reviewed-by: Ouyang Qian <qian.ouyang@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14313 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoMallicious code may use SmmFaultTolerantWriteHandler() to update some flash area...
lzeng14 [Wed, 24 Apr 2013 09:33:48 +0000 (09:33 +0000)]
Mallicious code may use SmmFaultTolerantWriteHandler() to update some flash area directly, like Variable region, so return EFI_ACCESS_DENIED after End Of Dxe in SmmFaultTolerantWriteHandler().
And add code to prevent InfoSize overflow.

Signed-off-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14312 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoRemove the blank line between InitializeLangVariable() and it's function header.
lzeng14 [Tue, 23 Apr 2013 12:48:07 +0000 (12:48 +0000)]
Remove the blank line between InitializeLangVariable() and it's function header.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14311 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoRemove unused [Guids] section from PXE inf file.
sfu5 [Tue, 23 Apr 2013 05:50:55 +0000 (05:50 +0000)]
Remove unused [Guids] section from PXE inf file.
Signed-off-by: Fu Siyuan <siyuan.fu@intel.com>
Reviewed-by: Ye Ting <ting.ye@intel.com>
Reviewed-by: Ouyang Qian <qian.ouyang@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14310 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoThe openssl API RSA_public_decrypt() and RSA_private_encrypt() are deprecated, use...
sfu5 [Tue, 23 Apr 2013 01:52:17 +0000 (01:52 +0000)]
The openssl API RSA_public_decrypt() and RSA_private_encrypt() are deprecated, use RSA_sign(), RSA_verify() instead.
Signed-off-by: Long Qin < qin.long@intel.com >
Reviewed-by: Ye Ting <ting.ye@intel.com>
Reviewed-by: Dong Guo <guo.dong@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14309 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoFix GCC build failure caused by R14307.
lzeng14 [Tue, 23 Apr 2013 01:42:35 +0000 (01:42 +0000)]
Fix GCC build failure caused by R14307.

Signed-off-by: Signed-off-by: Isakov S.L. <isakov-sl@bk.ru>
Reviewed-by: Star Zeng <star.zeng@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14308 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoEnhance InitializeLanguage() to set PcdUefiVariableDefaultPlatformLang to PlatformLan...
lzeng14 [Mon, 22 Apr 2013 09:51:19 +0000 (09:51 +0000)]
Enhance InitializeLanguage() to set PcdUefiVariableDefaultPlatformLang to PlatformLang variable if the value of PlatformLang variable has been set an unsupported value(not one of PlatformLangCodes variable), and assert when default (Platform)Lang PCD value is not set to one of (Platform)LangCodes PCD value.

Signed-off-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14307 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoAdd security check.
vanjeff [Mon, 22 Apr 2013 08:58:27 +0000 (08:58 +0000)]
Add security check.

Signed-off-by: Jeff Fan <jeff.fan@intel.com>
Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14306 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoFix potential overflow for SetVariable interface
czhang46 [Mon, 22 Apr 2013 08:52:58 +0000 (08:52 +0000)]
Fix potential overflow for SetVariable interface

Signed-off-by: Chao Zhang <chao.b.zhang@intel.com>
Reviewed-by  : Guo Dong   <dong.guo@intel.com>
Reviewed-by  : Siyuan Fu  <siyuan.fu@intel.com>

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14305 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoCheck-in missing part at r14302.
vanjeff [Sat, 20 Apr 2013 04:25:58 +0000 (04:25 +0000)]
Check-in missing part at r14302.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14303 6f19259b-4bc3-4df7-8a09-765794883524

8 years ago1. Add CPU arch type in Mailbox, debug agent will not access HOB if CPU arch changed.
vanjeff [Sat, 20 Apr 2013 03:34:16 +0000 (03:34 +0000)]
1. Add CPU arch type in Mailbox, debug agent will not access HOB if CPU arch changed.
2. Updated DxeDebugAgentLib instance to copy DebugPortHandler buffer into allocated ACPIMemoryNVS besides the mailbox.
3. Remove deprecated SendingPacket from mailbox.

Signed-off-by: Jeff Fan <jeff.fan@intel.com>
Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14302 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoAdd transit bit check for detecting partial response in iSCSI stack.
tye1 [Fri, 19 Apr 2013 06:39:30 +0000 (06:39 +0000)]
Add transit bit check for detecting partial response in iSCSI stack.

Signed-off-by: Ye Ting <ting.ye@intel.com>
Reviewed-by: Fu Siyuan <siyuan.fu@intel.com>
Reviewed-by: Tian Feng <feng.tian@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14296 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoAdd transit bit check for detecting partial response in iSCSI stack.
tye1 [Fri, 19 Apr 2013 06:19:40 +0000 (06:19 +0000)]
Add transit bit check for detecting partial response in iSCSI stack.

Signed-off-by: Ye Ting <ting.ye@intel.com>
Reviewed-by: Fu Siyuan <siyuan.fu@intel.com>
Reviewed-by: Tian Feng <feng.tian@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14294 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoFix a potential SMM memory dump issue. If pass communication buffer with DataBuffer...
czhang46 [Fri, 19 Apr 2013 01:35:02 +0000 (01:35 +0000)]
Fix a potential SMM memory dump issue. If pass communication buffer with DataBuffer to SMM SetVariable which is big enough to cover SMM range. Then GetVariable can dump SMM memory contents. Add more range check for SetVariable

Signed-off-by: Chao Zhang <chao.b.zhang@intel.com>
Reviewed-by  : Dong Guo   <guo.dong@intel.com>
Reviewed-by  : Jiewen Yao <jiewen.yao@intel.com>

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14292 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoShellPkg: explicitly prevent dereferencing pointer
jcarsey [Thu, 18 Apr 2013 16:05:59 +0000 (16:05 +0000)]
ShellPkg: explicitly prevent dereferencing pointer

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://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14291 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoEnhance DebugCommunicationLibUsb to reset the debug port when the PORT_ENABLE bit...
niruiyu [Thu, 18 Apr 2013 05:56:04 +0000 (05:56 +0000)]
Enhance DebugCommunicationLibUsb to reset the debug port when the PORT_ENABLE bit is not set.

Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
Reviewed-by: Feng Tian <feng.tian@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14289 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoAllocate ACPImemoryNVS type memory to save mailbox and debug port handle buffer since...
vanjeff [Thu, 18 Apr 2013 05:08:50 +0000 (05:08 +0000)]
Allocate ACPImemoryNVS type memory to save mailbox and debug port handle buffer since original allocated pool memory may be marked as free by DXE Core.

Signed-off-by: Jeff Fan <jeff.fan@intel.com>
Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14285 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoMdeModulePkg/AtaBus: AtaBusDxe module would ignore ATA Pass Thru Protocol instances...
erictian [Thu, 18 Apr 2013 02:08:51 +0000 (02:08 +0000)]
MdeModulePkg/AtaBus: AtaBusDxe module would ignore ATA Pass Thru Protocol instances that do not have the LOGICAL attribute set

Signed-off-by: Michael Kinney <michael.d.kinney@intel.com>
Reviewed-by: Feng Tian <feng.tian@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14284 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoUpdate code not to block application/driver load when event log is full.
gdong1 [Thu, 18 Apr 2013 01:47:34 +0000 (01:47 +0000)]
Update code not to block application/driver load when event log is full.

Signed-off-by: Dong Guo <guo.dong@intel.com>
Reviewed-by: Fu Siyuan <siyuan.fu@intel.com>
Reviewed-by: Yao Jiewen <jiewen.yao@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14283 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoRevert change 14281, should not check in here.
ydong10 [Wed, 17 Apr 2013 01:35:45 +0000 (01:35 +0000)]
Revert change 14281, should not check in here.

Signed-off-by: Eric Dong
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14282 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoSplit browser with browser core and display engine.
ydong10 [Wed, 17 Apr 2013 01:32:33 +0000 (01:32 +0000)]
Split browser with browser core and display engine.
First Version, goal:
  1.Display Engine has the framework.
  2.Browser core ready.(PasswordCheck, ValidateQuestionV not ready)

Signed-off-by: Eric Dong
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14281 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoUpdate the browser logic, make the storage as browser level instead of form set level.
ydong10 [Tue, 16 Apr 2013 10:53:22 +0000 (10:53 +0000)]
Update the browser logic, make the storage as browser level instead of form set level.

Signed-off-by: Eric Dong <eric.dong@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14280 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoMdeMdeModulePkg/BootScriptExecutorDxe: Replaces absolute addressing that requires...
erictian [Tue, 16 Apr 2013 02:45:36 +0000 (02:45 +0000)]
MdeMdeModulePkg/BootScriptExecutorDxe: Replaces absolute addressing that requires a relocation entry with PC relative addressing that does not require a relocation entry. This patch is required to make this file assemble and link with Xcode

Signed-off-by: Andrew Fish <afish@apple.com>
Reviewed-by: Feng Tian <feng.tian@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14279 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoFix SMM Variable driver stack GetVariable return INVALID_PARAMETER when DataSize...
czhang46 [Mon, 15 Apr 2013 01:56:31 +0000 (01:56 +0000)]
Fix SMM Variable driver stack GetVariable return INVALID_PARAMETER when DataSize is bigger than SMM communication buffer.

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://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14276 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoArmPkg/BdsLib: Added support for FDT alignment through PcdArmLinuxFdtAlignment
oliviermartin [Sun, 14 Apr 2013 09:36:41 +0000 (09:36 +0000)]
ArmPkg/BdsLib: Added support for FDT alignment through PcdArmLinuxFdtAlignment

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

8 years agoArmPkg: Delete PCD value PcdArmLinuxKernelFixedOffset.
oliviermartin [Sun, 14 Apr 2013 09:35:44 +0000 (09:35 +0000)]
ArmPkg: Delete PCD value PcdArmLinuxKernelFixedOffset.

PcdArmLinuxKernelFixedOffset is supposed to indicate the offset from
the beginning of the system memory at which the kernel will be loaded.

However, this PCD value is not used at all. Instead the kernel is loaded
just below a certain limit indicated by PCD value PcdArmLinuxKernelMaxOffset.

This patch deletes PCD value PcdArmLinuxKernelFixedOffset to avoid any

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

8 years agoArmPkg/BdsLib: Fix uInitrd detection
oliviermartin [Sun, 14 Apr 2013 09:34:48 +0000 (09:34 +0000)]
ArmPkg/BdsLib: Fix uInitrd detection

This patch corrects a problem detecting uInitrd signature when booting
with FDT.

BdsBootLinuxFdt was attempting to read the signature from InitrdImage which
is zero at this point in the code.  The code now reads the signature from

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ryan Harkin <ryan.harkin@linaro.org>
Reviewed-by: Olivier Martin <olivier.martin@arm.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14272 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoArmPkg/BdsLib: Do not create additional 'cpu' nodes if the 'cpus' node already exist
oliviermartin [Sun, 14 Apr 2013 09:33:35 +0000 (09:33 +0000)]
ArmPkg/BdsLib: Do not create additional 'cpu' nodes if the 'cpus' node already exist

UEFI must not add additional 'cpu' nodes if the 'cpus' node was already present.

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

8 years agoArmPlatformPkg: Remove an unused function.
oliviermartin [Sun, 14 Apr 2013 09:32:45 +0000 (09:32 +0000)]
ArmPlatformPkg: Remove an unused function.

ArmPlatformGetAdditionalSystemMemory() function wasn't used anywhere in UEFI.
This patch deletes it.

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

8 years agoRemove unused L2 controller PCD from platform files.
oliviermartin [Sun, 14 Apr 2013 09:31:47 +0000 (09:31 +0000)]
Remove unused L2 controller PCD from platform files.

Only the Cortex A9 based platforms have an external L2 controller.

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

8 years agoArmPkg/BdsLib: Replace ARM magic value by a proper defined value.
oliviermartin [Sun, 14 Apr 2013 09:30:46 +0000 (09:30 +0000)]
ArmPkg/BdsLib: Replace ARM magic value by a proper defined value.

"ARMH" is the Four-Letter unique identifier used by ARM in the context
of the fast SMC identification interface.

This patch properly defines this value in a header file instead
of using the numeric value directly in the code.

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

8 years agoEmbeddedPkg: Remove an unused binary.
oliviermartin [Sun, 14 Apr 2013 09:29:11 +0000 (09:29 +0000)]
EmbeddedPkg: Remove an unused binary.

Remove an unused binary, which was probably introduced by error in
UEFI source tree.

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

8 years agoArmPlatformPkg/Bds: Missing CRC32 update
oliviermartin [Sun, 14 Apr 2013 09:28:11 +0000 (09:28 +0000)]
ArmPlatformPkg/Bds: Missing CRC32 update

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

8 years agoArmPkg/PL390Gic: Do not try to clear spurious interrupts.
oliviermartin [Sun, 14 Apr 2013 09:27:33 +0000 (09:27 +0000)]
ArmPkg/PL390Gic: Do not try to clear spurious interrupts.

If we have a pending spurious interrupt we should not try to clear it,
just ignore.

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

8 years agoEmbeddedPkg/MmcDxe: Make the driver more compliant with the UEFI specification
oliviermartin [Sun, 14 Apr 2013 09:26:28 +0000 (09:26 +0000)]
EmbeddedPkg/MmcDxe: Make the driver more compliant with the UEFI specification

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

8 years agoArmPlatformPkg/NorFlashDxe: Make the driver more compliant with the UEFI specification
oliviermartin [Sun, 14 Apr 2013 09:25:34 +0000 (09:25 +0000)]
ArmPlatformPkg/NorFlashDxe: Make the driver more compliant with the UEFI specification

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

8 years agoArmPkg/SemihostFs: Make the driver more compliant with the UEFI specification
oliviermartin [Sun, 14 Apr 2013 09:24:44 +0000 (09:24 +0000)]
ArmPkg/SemihostFs: Make the driver more compliant with the UEFI specification

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

8 years agoArmPlatformPkg/PL011Uart: Added support for default BaudRate
oliviermartin [Sun, 14 Apr 2013 09:23:30 +0000 (09:23 +0000)]
ArmPlatformPkg/PL011Uart: Added support for default BaudRate

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

8 years agoAdd OpROM code type check to ensure OpROM is PCAT legacy OpROM when an OpROM is passe...
li-elvin [Fri, 12 Apr 2013 07:34:27 +0000 (07:34 +0000)]
Add OpROM code type check to ensure OpROM is PCAT legacy OpROM when an OpROM is passed to InstallPciRom.

Signed-off-by: Li Elvin <elvin.li@intel.com>
Reviewed-by: Ni Ruiyu <ruiyu.ni@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14260 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoFix build failure by adding UINT16 type cast.
niruiyu [Fri, 12 Apr 2013 07:16:42 +0000 (07:16 +0000)]
Fix build failure by adding UINT16 type cast.

Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14259 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoUpdate SMM variable DXE driver GetNextVariable interface to comply with UEFI spec
czhang46 [Fri, 12 Apr 2013 05:59:11 +0000 (05:59 +0000)]
Update SMM variable DXE driver GetNextVariable interface to comply with UEFI spec
VariableNameSize is the returned buffer size. GetNextVariable should behavior correct if it is bigger than SMM communication buffer or less than string size of VariableName.

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>
Reviewed-by  : Zeng Star  <star.zeng@intel.com>

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14258 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoUpdate secure boot UI driver to handle “reset to default” hot key.
sfu5 [Fri, 12 Apr 2013 01:44:54 +0000 (01:44 +0000)]
Update secure boot UI driver to handle “reset to default” hot key.
Signed-off-by: Fu Siyuan <siyuan.fu@intel.com>
Reviewed-by: Ye Ting <ting.ye@intel.com>
Reviewed-by: Yao Jiewen <jiewen.yao@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14257 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoFix several bugs in the implementation of converting SAS/SASEX device path node from...
niruiyu [Thu, 11 Apr 2013 01:39:39 +0000 (01:39 +0000)]
Fix several bugs in the implementation of converting SAS/SASEX device path node from/to text.

Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14256 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoIf DataSize or VariableNameSize is near MAX_ADDRESS, this can cause the computed...
lzeng14 [Mon, 8 Apr 2013 06:56:08 +0000 (06:56 +0000)]
If DataSize or VariableNameSize is near MAX_ADDRESS, this can cause the computed PayLoadSize to overflow to a small value and pass the check in InitCommunicateBuffer(). To protect against this vulnerability, check DataSize and VariableNameSize to make sure PayloadSize doesn't overflow.

Signed-off-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14252 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoMdeMdeModulePkg/UsbBusDxe: Fixed a possible memory leak bug introduced at r14226
erictian [Sun, 7 Apr 2013 08:43:28 +0000 (08:43 +0000)]
MdeMdeModulePkg/UsbBusDxe: Fixed a possible memory leak bug introduced at r14226
The r14226 check-in indeed has memory leak in allocated "Child" pointer. UsbBusDriverBindingStop() may dereference this pointer and may bring exception on invalid memory access

Signed-off-by: Feng Tian <feng.tian@intel.com>
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14251 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoOvmfPkg: remove OvmfVideo.rom references
jljusten [Wed, 3 Apr 2013 18:20:57 +0000 (18:20 +0000)]
OvmfPkg: remove OvmfVideo.rom references

The README is rather extended than trimmed, so that users grepping for the
file name have a pointer.

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://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14243 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoNew EDK Shell binary(r62).
niruiyu [Wed, 3 Apr 2013 09:39:19 +0000 (09:39 +0000)]
New EDK Shell binary(r62).

Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14242 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoGet the language string before use it to avoid reuse freed buffer.
ydong10 [Wed, 3 Apr 2013 07:18:39 +0000 (07:18 +0000)]
Get the language string before use it to avoid reuse freed buffer.

Signed-off-by: Eric Dong <eric.dong@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14241 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoAdd the missing file to the inf.
ydong10 [Tue, 2 Apr 2013 08:34:45 +0000 (08:34 +0000)]
Add the missing file to the inf.

Signed-off-by: Eric Dong
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14240 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoRefine code to follow coding style.
ydong10 [Tue, 2 Apr 2013 08:28:40 +0000 (08:28 +0000)]
Refine code to follow coding style.

Signed-off-by: Eric Dong
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14239 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoFill SMBIOS BCD revision field.
li-elvin [Tue, 2 Apr 2013 07:44:11 +0000 (07:44 +0000)]
Fill SMBIOS BCD revision field.

Signed-off-by: Li Elvin <elvin.li@intel.com>
Reviewed-by: Star Zeng <star.zeng@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14238 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoDon't assume HiiDatabase has been present at the entrypoint and don't assume HiiDatab...
lzeng14 [Tue, 2 Apr 2013 03:23:54 +0000 (03:23 +0000)]
Don't assume HiiDatabase has been present at the entrypoint and don't assume HiiDatabase and HiiFont are on the same handle according to the UEFI spec.

Signed-off-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Elvin Li <elvin.li@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14236 6f19259b-4bc3-4df7-8a09-765794883524

8 years agoMdeMdeModulePkg/Usb: two tunings for better device identification behind hub
erictian [Fri, 29 Mar 2013 09:32:55 +0000 (09:32 +0000)]
MdeMdeModulePkg/Usb: two tunings for better device identification behind hub
1.enlarge the recovery time from 10ms to 20ms after port reset to make set address request success for better device compatibility.
2.another enhancement is to use RESET_C bit rather than RESET bit to judge if hub reset port operation is done.

Signed-off-by: Feng Tian <feng.tian@intel.com>
Reviewed-by: Elvin Li <elvin.li@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14227 6f19259b-4bc3-4df7-8a09-765794883524