Permalink
Commits on Jan 24, 2017
  1. BaseTools: add scripts to generate EBC call signatures

    pbatard committed Dec 30, 2016
    * EBC binaries meant to be compatible with the ARM EBC VM
      require the insertion of call signatures at the locations
      where the BREAK 5 offsets are stored.
    * This patch adds 2 new Python applications, as well as the
      required modifications for build_rule and tools_def templates:
      - GenEbcSignature is a script that parses a preprocessed C
        source, along with a binary object file, as generated by the
        intel EBC compiler, to create the signature data, which it
        stores into a .sig file.
      - PatchEbcSignature is a script that processes the .sig files
        as well as the .map data and the .efi binary, to insert the
        signatures at the required locations.
    * Note that the insertion of signatures into EBC binaries has
      absolutely no impact for EBC execution on non ARM platforms,
      as it applies to data parts that are ignored on these VMs.
    * Also note the GenEbcSignature is designed to be very basic
      with regards to the detection of call signatures that have
      straight 64-bit parameters, as it is meant to be used as a
      stopgap solution until the intel EBC compiler (which does
      has easy access to the data required to do so, and is best
      placed for such processing) is updated to generate .sig files
      on its own.
    
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Pete Batard <pete@akeo.ie>
  2. MdeModulePkg/EbcDxe: add call signatures for ARM native->EBC support

    pbatard committed Dec 19, 2016
    * This patch fixes the call from native into EBC ARM calling convention
      issue by introducing support for call signatures when invoking BREAK 5.
    * These call signatures are provided as the high 32 bit word of the
      64-bit longword to which R7 points during BREAK 5 invocation (the lowest
      32-bit being left untouched, as the "offset from self").
    * Within this word the upper 16-bits should be set to an EBC_CALL_SIGNATURE
      marker and the lower 16 bits to the signature itself, with each bit
      indicating if the corresponding argument is 64-bit (1) or not (0).
    * The compiler toolchain is expected to automatically fill these signatures
      when producing binaries.
    * None of the changes introduced by this patch have any bearing on the
      behaviour of existing EBC VMs or EBC applications, except for ARM.
      Especially, existing EBC code that is missing signatures still works
      exactly as it did on the updated versions of IA32, X64 and AARCH64 VMs,
      and EBC code that includes signatures also works just the same on non
      signature-aware VMs.
      The presence or absence of signature has only an impact on ARM platforms.
    * However, because this feature requires a minor specs change and because
      an EBC application that provides call signatures may want to detect if
      the VM is signature aware, we also bump the global VM version to 1.1.
    
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Pete Batard <pete@akeo.ie>
  3. MdeModulePkg/EbcDxe: add a stack tracker for ARM EBC->native support

    pbatard committed Dec 19, 2016
    * This patch fixes the CALLEX to native vs ARM calling convention issue by
      tracking whether each potential call argument is a natural or a 64-bit
      value.
    * This is accomplished by monitoring stack pointer operations, including
      arithmetic or single stack buffer reallocation, through a separate stack
      tracker. The stack tracker is then used, at calltime to determine 64-bit
      arguments that need to be aligned.
    * While currently ARM specific, the stack tracking is added in a generic
      manner, so that any future platform that requires a similar mechanism may
      do so with minimal changes.
    
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Pete Batard <pete@akeo.ie>
  4. MdeModulePkg/EbcDxe: add ARM support

    ardbiesheuvel authored and pbatard committed Dec 18, 2016
    * This is a port of the AARCH64 implementation of the EBC runtime to ARM.
    * Note that, on its own, this patch only allows running self contained EBC
      applications, such as ones that don't issue calls into the native
      platform, or that aren't being called from native.
    * Support for EBC -> native and native -> EBC calls will be added in
      subsequent patches.
    * Because EFI32 may not be defined for ARM compilation, this patch also
      alters the EBC Debugger to use MDE_CPU_### macros for address display.
    
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Signed-off-by: Pete Batard <pete@akeo.ie>
  5. MdeModulePkg/EbcDxe: allow VmReadIndex##() to return a decoded index

    pbatard committed Dec 18, 2016
    * The VmReadIndex## function now take an optional pointer to an index
      pair structure which, when not NULL, is filled with the decoded const
      and natural values.
    * This feature is needed by the ARM EBC VM.
    * For now, the new parameters is set to NULL, so as not to change
      existing behaviour with current EBC VM platforms.
    
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Pete Batard <pete@akeo.ie>
  6. ShellPkg SmbiosView: Add decoding of SMBIOS spec 3.1.1

    lzeng14 committed Jan 22, 2017
    REF: https://bugzilla.tianocore.org/show_bug.cgi?id=349
    
    Cc: Ruiyu Ni <ruiyu.ni@intel.com>
    Cc: Jaben Carsey <jaben.carsey@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Star Zeng <star.zeng@intel.com>
    Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com>
    Reviewed-by: Jaben Carsey <jaben.carsey@intel.com>
  7. MdeModulePkg: Update PcdSmbiosDocRev to 0x1 for SMBIOS spec 3.1.1

    lzeng14 committed Jan 22, 2017
    REF: https://bugzilla.tianocore.org/show_bug.cgi?id=349
    
    Cc: Feng Tian <feng.tian@intel.com>
    Cc: Liming Gao <liming.gao@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Star Zeng <star.zeng@intel.com>
    Reviewed-by: Feng Tian <feng.tian@intel.com>
  8. MdePkg: Add definitions for SMBIOS spec 3.1.1

    lzeng14 committed Jan 22, 2017
    REF: https://bugzilla.tianocore.org/show_bug.cgi?id=349
    
    This patch is to add definitions for below items.
    Processor Information (Type 4):
    - add socket SP3r2
    - add AMD Zen Processor Family
    Management Controller Host Interface (Type 42):
    - include Host Interface Type and Protocol Identifier enumerations
    
    Cc: Liming Gao <liming.gao@intel.com>
    Cc: Michael Kinney <michael.d.kinney@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Star Zeng <star.zeng@intel.com>
    Reviewed-by: Liming Gao <liming.gao@intel.com>
  9. OvmfPkg/QemuVideoDxe: Frame buffer config size may change in new mode

    niruiyu committed Jan 23, 2017
    https://bugzilla.tianocore.org/show_bug.cgi?id=339
    
    The patch removes the assumption in QemuVideoDxe driver that it
    wrongly assumes the frame buffer configure size is the same in
    different video modes.
    The assumption is true in old FrameBufferBltLib but is false in
    new implementation.
    
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
    Cc: Jordan Justen <jordan.l.justen@intel.com>
    Reviewed-by: Laszlo Ersek <lersek@redhat.com>
  10. MdeModulePkg/FrameBufferBltLib: Use dynamic allocated line buffer

    niruiyu committed Jan 11, 2017
    https://bugzilla.tianocore.org/show_bug.cgi?id=339
    
    The patch uses dynamic allocated line buffer to reduce memory usage
    of frame buffer configure. (Original implementation uses 0x4000
    bytes for line buffer.)
    
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
    Reviewed-by: Feng Tian <feng.tian@intel.com>
  11. MdeModulePkg/FrameBufferBltLib: Refine ConfigurePixelBitMaskFormat

    niruiyu committed Jan 11, 2017
    https://bugzilla.tianocore.org/show_bug.cgi?id=339
    The patch refines ConfigurePixelBitMaskFormat() to prepare the
    enhancement in next commit: Enhance this library to use dynamic
    allocated line buffer to reduce memory usage of frame buffer
    configure.
    
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
    Reviewed-by: Feng Tian <feng.tian@intel.com>
  12. MdePkg : UefiTcgPlatform.h: Define Startup Locality Event & Indicator

    zhangchaointel committed Jan 22, 2017
    Add Startup Locality Event definition according to PC Client PFP 00.21
    http://www.trustedcomputinggroup.org/wp-content/uploads/PC-ClientSpecific_Platform_Profile_for_TPM_2p0_Systems_v21.pdf
    Add Locality Indicator definition according to PC Client PTP 00.43
    https://www.trustedcomputinggroup.org/wp-content/uploads/PC-Client-Specific-Platform-TPM-Profile-for-TPM-2-0-v43-150126.pdf
    
    Cc: Star Zeng <star.zeng@intel.com>
    Cc: Yao Jiewen <jiewen.yao@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Chao Zhang <chao.b.zhang@intel.com>
    Reviewed-by: Yao Jiewen <jiewen.yao@intel.com>
  13. SecurityPkg: Tcg2Dxe: Log Startup Locality Event

    zhangchaointel committed Jan 22, 2017
    Log Startup Locality Event according to TCG PC Client PFP 00.21.
    Event should be placed before any extend to PCR[0]
    http://www.trustedcomputinggroup.org/wp-content/uploads/PC-ClientSpecific_Platform_Profile_for_TPM_2p0_Systems_v21.pdf
    
    Cc: Star Zeng <star.zeng@intel.com>
    Cc: Yao Jiewen <jiewen.yao@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Chao Zhang <chao.b.zhang@intel.com>
    Reviewed-by: Yao Jiewen <jiewen.yao@intel.com>
Commits on Jan 23, 2017
  1. BaseTools: Convert incomplete expression with dangling while()

    Nikolai SAOUKH authored and yzhu52 committed Jan 22, 2017
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Nikolai SAOUKH  <nms@otdel-1.org>
    Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com>
    Reviewed-by: Liming Gao <liming.gao@intel.com>
  2. BaseTools: Extend the Macro used in the FDF !include statement

    yzhu52 committed Jan 22, 2017
    Current it only support the system environment variables in the !include
    statement, $(WORKSPACE), $(PACKAGES_PATH), $(EFI_SOURCE), $(EDK_SOURCE),
    $(ECP_SOURCE), this patch extend the usage to support the Global macros
    and the macro which defined before the statement.
    
    Cc: Liming Gao <liming.gao@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com>
    Reviewed-by: Liming Gao <liming.gao@intel.com>
  3. NetworkPkg: Fix protocol handler service in HttpDxe.

    Zhang, Lubo authored and jiaxinwu committed Jan 22, 2017
    When we create a HTTP driver service binding private
    instance, there may be different DriverBindingHandle
    for Ipv4 or Ipv6, so it is essential to distinguish
    the HttpService image which will be used in open
    protocol or close protocol.
    
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Zhang Lubo <lubo.zhang@intel.com>
    Cc: Sriram Subramanian <sriram-s@hpe.com>
    Cc: Ye Ting <ting.ye@intel.com>
    Cc: Fu Siyuan <siyuan.fu@intel.com>
    Cc: Wu Jiaxin <jiaxin.wu@intel.com>
    Reviewed-by: Sriram Subramanian <sriram-s@hpe.com>
    Reviewed-by: Wu Jiaxin <jiaxin.wu@intel.com>
    Reviewed-by: Fu Siyuan <siyuan.fu@intel.com>
  4. NetworkPkg: Remove superfluous return statement.

    huth authored and jiaxinwu committed Jan 19, 2017
    If the code eventually returns "Status" anyway, it does not make
    sense to explicitely return "Status" in case of an error, too.
    
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Thomas Huth <thuth@redhat.com>
    Reviewed-by: Wu Jiaxin <jiaxin.wu@intel.com>
  5. OvmfPkg: Allow HTTP connections if HTTP Boot enabled

    jiaxinwu committed Jan 19, 2017
    v2
    * Move the setting above the "!ifndef $(USE_OLD_SHELL)" part.
    * Un-indent the setting to column zero.
    (Comments from Laszlo)
    
    Overwrite the value of PcdAllowHttpConnections to allow HTTP
    connections if HTTP Boot enabled (-D HTTP_BOOT_ENABLE).
    
    Cc: Laszlo Ersek <lersek@redhat.com>
    Cc: Justen Jordan L <jordan.l.justen@intel.com>
    Cc: Ye Ting <ting.ye@intel.com>
    Cc: Fu Siyuan <siyuan.fu@intel.com>
    Cc: Kinney Michael D <michael.d.kinney@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Wu Jiaxin <jiaxin.wu@intel.com>
    Reviewed-by: Ye Ting <ting.ye@intel.com>
    Reviewed-by: Fu Siyuan <siyuan.fu@intel.com>
    Reviewed-by: Gary Lin <glin@suse.com>
    Tested-by: Gary Lin <glin@suse.com>
  6. Nt32Pkg.dsc: Add flag to control HTTP connections

    jiaxinwu committed Jan 6, 2017
    v3:
    * Correct the commits grammar
    
    v2:
    * Rename the flag.
    
    This flag is to overwrite the value of PcdAllowHttpConnections,
    then the platform can make a decision whether to allow HTTP
    connections or not.
    
    Cc: Ye Ting <ting.ye@intel.com>
    Cc: Fu Siyuan <siyuan.fu@intel.com>
    Cc: Ruiyu Ni <ruiyu.ni@intel.com>
    Cc: Laszlo Ersek <lersek@redhat.com>
    Cc: Kinney Michael D <michael.d.kinney@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Wu Jiaxin <jiaxin.wu@intel.com>
    Reviewed-by: Ye Ting <ting.ye@intel.com>
    Reviewed-by: Fu Siyuan <siyuan.fu@intel.com>
    Reviewed-by: Gary Lin <glin@suse.com>
  7. NetworkPkg: Add PCD to enable the HTTP connections switch

    jiaxinwu committed Jan 6, 2017
    v3:
    * Correct the commits grammar
    
    v2:
    * Rename the PCD to PcdAllowHttpConnections.
    * Refine the PCD descriptions.
    
    If the value of PcdAllowHttpConnections is TRUE, HTTP connections are
    allowed. Both the "https://" and "http://" URI schemes are permitted.
    Otherwise, HTTP connections are denied. Only the "https://" URI scheme
    is permitted.
    
    Cc: Ye Ting <ting.ye@intel.com>
    Cc: Fu Siyuan <siyuan.fu@intel.com>
    Cc: Laszlo Ersek <lersek@redhat.com>
    Cc: Kinney Michael D <michael.d.kinney@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Wu Jiaxin <jiaxin.wu@intel.com>
    Reviewed-by: Ye Ting <ting.ye@intel.com>
    Reviewed-by: Fu Siyuan <siyuan.fu@intel.com>
    Reviewed-by: Gary Lin <glin@suse.com>
    Tested-by: Gary Lin <glin@suse.com>
Commits on Jan 22, 2017
  1. Nt32Pkg FDF: Move StatusCode Handler run earlier in DXE phase

    lgao4 committed Jan 20, 2017
    Add StatusCode Handler into APRIORI DXE so that they can run early, then
    more DEBUG message can print.
    
    Cc: Ruiyu Ni <ruiyu.ni@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Liming Gao <liming.gao@intel.com>
    Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com>
  2. MdeModulePkg: Variable: Update PCR[7] measure for new TCG spec

    zhangchaointel committed Jan 18, 2017
    Measure DBT into PCR[7] when it is updated between initial measure and
    ExitBootService. Measure "SecureBoot" change after PK update.
    Spec version : TCG PC Client PFP 00.37. http://www.trustedcomputinggroup.org/wp-content/uploads/PC-ClientSpecific_Platform_Profile_for_TPM_2p0_Systems_v21.pdf
    
    Cc: Star Zeng <star.zeng@intel.com>
    Cc: Yao Jiewen <jiewen.yao@intel.com>
    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: Yao Jiewen <jiewen.yao@intel.com>
  3. SecurityPkg: Tcg2Dxe: Measure DBT into PCR[7]

    zhangchaointel committed Jan 18, 2017
    Measure DBT into PCR[7] in initial measurement phase according
    to TCG PC Client PFP 00.37. http://www.trustedcomputinggroup.org/wp-content/uploads/PC-ClientSpecific_Platform_Profile_for_TPM_2p0_Systems_v21.pdf
    
    Cc: Star Zeng <star.zeng@intel.com>
    Cc: Yao Jiewen <jiewen.yao@intel.com>
    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: Yao Jiewen <jiewen.yao@intel.com>
  4. SecurityPkg: DxeImageVerificationLib: Update PCR[7] measure logic

    zhangchaointel committed Jan 18, 2017
    Update PCR[7] measure logic according to TCG PC Client PFP 00.37.
    Only entries in DB that is used for image authentication need to be
    measured.
    http://www.trustedcomputinggroup.org/wp-content/uploads/PC-ClientSpecific_Platform_Profile_for_TPM_2p0_Systems_v21.pdf
    
    Cc: Star Zeng <star.zeng@intel.com>
    Cc: Yao Jiewen <jiewen.yao@intel.com>
    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: Yao Jiewen <jiewen.yao@intel.com>
  5. ShellPkg SmbiosView: Add decoding of SMBIOS spec 3.1.0

    lzeng14 committed Jan 12, 2017
    REF: https://bugzilla.tianocore.org/show_bug.cgi?id=340
    
    The decoding of TPM Device (Type 43) has been added at
    e9f0be0.
    
    Cc: Ruiyu Ni <ruiyu.ni@intel.com>
    Cc: Jaben Carsey <jaben.carsey@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Star Zeng <star.zeng@intel.com>
    Reviewed-by: Jaben Carsey <jaben.carsey@intel.com>
  6. MdeModulePkg: Update PcdSmbiosVersion to 0x0301 for SMBIOS spec 3.1.0

    lzeng14 committed Jan 17, 2017
    REF: https://bugzilla.tianocore.org/show_bug.cgi?id=340
    
    Cc: Feng Tian <feng.tian@intel.com>
    Cc: Liming Gao <liming.gao@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Star Zeng <star.zeng@intel.com>
    Reviewed-by: Feng Tian <feng.tian@intel.com>
  7. MdePkg: Add definitions for SMBIOS spec 3.1.0

    lzeng14 committed Jan 12, 2017
    REF: https://bugzilla.tianocore.org/show_bug.cgi?id=340
    
    TPM Device (Type 43) definition has been added at
    713e4b0.
    
    This patch is to add definitions for below items.
    • BIOS Information (Type 0):
    – Add new entry for extended BIOS ROM size
    • System Enclosure or Chassis (Type 3):
    – Add new chassis types: IoT Gateway and Embedded PC
    – Add new chassis types: Mini PC and Stick PC
    • Processor Information (Type 4):
    – Add Intel Core m3 m5 m7 processors
    – Add processor socket AM4
    – Add processor socket LGA1151
    – Add processor socket BGA1356, BGA1440, BGA1515
    – Add AMD Opteron A-Series processor
    – Add processor socket LGA3647-1
    – Add processor socket SP3 Processors
    – Add families for ARMv7 and ARMv8
    – Add family for AMD Opteron(TM) X3000 Series APU
    • Cache Information (Type 7):
    – Extend to support Cache sizes >2047 MB
    • System Slots (Type 9):
    – Add Mini PCIe support
    
    Cc: Liming Gao <liming.gao@intel.com>
    Cc: Michael Kinney <michael.d.kinney@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Star Zeng <star.zeng@intel.com>
    Reviewed-by: Liming Gao <liming.gao@intel.com>
Commits on Jan 20, 2017
  1. ArmPkg/ArmMmuLib: Revert "use a pool allocation for the root table"

    ardbiesheuvel committed Jan 20, 2017
    This reverts commit d32702d.
    
    Using a pool allocation for the root translation table seemed like
    a good idea at the time, but as it turns out, such allocations are
    handled in a way that makes them unsuitable for this purpose: they
    are backed by HOBs that don't remain in the same place during the
    various PI phase changes, which means the address programmed into
    the TTBR register is no longer valid, and may refer to memory that
    is reported as available to the OS.
    
    So switch back to using a page based allocation.
    
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Acked-by: Laszlo Ersek <lersek@redhat.com>
    Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
  2. ArmPkg/ArmLib: remove indirection layer from timer register accessors

    ardbiesheuvel committed Jan 20, 2017
    The generic timer support libraries call the actual system register
    accessor function via a single pair of functions ArmArchTimerReadReg()
    and ArmArchTimerWriteReg(), which take an enum argument to identify
    the register, and return output values by pointer reference.
    
    Since these functions are never called with a non-immediate argument,
    we can simply replace each invocation with the underlying system register
    accessor instead. This is mostly functionally equivalent, with the
    exception of the bounds check for the enum (which is pointless given the
    fact that we never pass a variable), the check for the presence of the
    architected timer (which only makes sense for ARMv7, but is highly unlikely
    to vary between platforms that are similar enough to run the same firmware
    image), and a check for enum values that refer to the HYP view of the timer,
    which we never referred to anywhere in the code in the first place.
    
    So get rid of the middle man, and update the ArmGenericTimerPhyCounterLib
    and ArmGenericTimerVirtCounterLib implementations to call the system
    register accessors directly.
    
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
    Tested-by: Ryan Harkin <ryan.harkin@linaro.org>
  3. ArmPlatformPkg/NorFlashDxe: Change Flash memory attributes before writes

    achingupta authored and ardbiesheuvel committed Jan 20, 2017
    In NorFlashFvbInitialize() if a valid Firmware Volume header is not found at the
    start of NOR Flash, the Flash memory is written before it has been remapped with
    EFI_MEMORY_UC attributes to allow write commands. Since the flash memory was
    previously mapped with Normal and possibly cacheable memory attributes, the
    Flash commands might never reach the device.
    
    This patch fixes this issue by remapping the Flash memory region with correct
    memory attributes before writing to it.
    
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Achin Gupta <achin.gupta@arm.com>
    Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
  4. ArmPlatformPkg: Use EfiEventGroupSignal from UefiLib

    lzeng14 committed Jan 17, 2017
    Use EfiEventGroupSignal from UefiLib and remove
    EmptyCallbackFunction.
    
    REF: https://bugzilla.tianocore.org/show_bug.cgi?id=298
    
    Cc: Leif Lindholm <leif.lindholm@linaro.org>
    Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Cc: Liming Gao <liming.gao@intel.com>
    Cc: Michael Kinney <michael.d.kinney@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Star Zeng <star.zeng@intel.com>
    Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
  5. CorebootPayloadPkg: Use EfiEventGroupSignal from UefiLib

    lzeng14 committed Jan 17, 2017
    Use EfiEventGroupSignal from UefiLib and remove
    InternalBdsEmptyCallbackFuntion.
    
    REF: https://bugzilla.tianocore.org/show_bug.cgi?id=298
    
    Cc: Maurice Ma <maurice.ma@intel.com>
    Cc: Prince Agyeman <prince.agyeman@intel.com>
    Cc: Liming Gao <liming.gao@intel.com>
    Cc: Michael Kinney <michael.d.kinney@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Star Zeng <star.zeng@intel.com>
    Reviewed-by: Maurice Ma <maurice.ma@intel.com>
  6. IntelFrameworkModulePkg: Use EfiEventEmptyFunction from UefiLib

    lzeng14 committed Jan 17, 2017
    Use EfiEventEmptyFunction from UefiLib and remove the duplication
    of event empty function.
    
    REF: https://bugzilla.tianocore.org/show_bug.cgi?id=298
    
    Cc: Jeff Fan <jeff.fan@intel.com>
    Cc: Ruiyu Ni <ruiyu.ni@intel.com>
    Cc: Liming Gao <liming.gao@intel.com>
    Cc: Michael Kinney <michael.d.kinney@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Star Zeng <star.zeng@intel.com>
    Reviewed-by: Jeff Fan <jeff.fan@intel.com>
  7. MdeModulePkg: Use EfiEventEmptyFunction from UefiLib

    lzeng14 committed Jan 17, 2017
    Use EfiEventEmptyFunction from UefiLib and remove the duplication
    of event empty function.
    
    REF: https://bugzilla.tianocore.org/show_bug.cgi?id=298
    
    Cc: Feng Tian <feng.tian@intel.com>
    Cc: Ruiyu Ni <ruiyu.ni@intel.com>
    Cc: Liming Gao <liming.gao@intel.com>
    Cc: Michael Kinney <michael.d.kinney@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Star Zeng <star.zeng@intel.com>
    Reviewed-by: Feng Tian <feng.tian@intel.com>
  8. IntelFrameworkPkg UefiLib: Make the event empty function public

    lzeng14 committed Jan 17, 2017
    REF: https://bugzilla.tianocore.org/show_bug.cgi?id=298
    
    Then this event empty function can be used to remove
    the duplication in drivers and other libraries.
    
    Cc: Liming Gao <liming.gao@intel.com>
    Cc: Michael D Kinney <michael.d.kinney@intel.com>
    Cc: Jeff Fan <jeff.fan@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Star Zeng <star.zeng@intel.com>
    Reviewed-by: Jeff Fan <jeff.fan@intel.com>