Permalink
Commits on Oct 28, 2017
  1. Revert "ArmVirtPkg: restrict mapping attributes of normal memory to E…

    Googulator committed Oct 28, 2017
    …FI_MEMORY_WB"
    
    This reverts commit f2509d6.
  2. Revert "ArmVirtPkg: remove QemuVideoDxe from ArmVirtQemu and ArmVirtQ…

    Googulator committed Oct 28, 2017
    …emuKernel"
    
    This reverts commit cefbbb3.
  3. Revert "OvmfPkg/QemuVideoDxe: remove AARCH64/ARM support"

    Googulator committed Oct 28, 2017
    This reverts commit bfb0ee0.
Commits on Oct 27, 2017
  1. MdeModulePkg/AtaAtapiPassThru: disable only BM-DMA at ExitBootServices()

    lersek committed Oct 26, 2017
    Clearing I/O port decoding in the PCI command register at
    ExitBootServices() breaks IDE boot in Windows, on QEMU's "pc" (i440fx)
    machine type. (AHCI boot on "q35" is unaffected.) Windows seems repeatedly
    stuck, apparently waiting for a timeout of sorts.
    
    This is arguably a Windows bug; a native OS driver should not expect the
    firmware to leave the PCI command register in any particular state.
    
    Strictly speaking, we only need to disable BM-DMA at ExitBootServices(),
    in order to abort pending transfers to/from RAM, which is soon to be owned
    by the OS. BM-DMA is also the only bit that's explicitly named by the UEFI
    Driver Writers' Guide, for clearing at ExitBootServices().
    
    I've verified that clearing only BM-DMA fixes the issue (boot time) on
    i440fx, and does not regress q35/AHCI.
    
    Cc: Aleksei Kovura <alex3kov@zoho.com>
    Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Cc: Dann Frazier <dannf@ubuntu.com>
    Cc: Eric Dong <eric.dong@intel.com>
    Cc: Star Zeng <star.zeng@intel.com>
    Reported-by: Aleksei Kovura <alex3kov@zoho.com>
    Reported-by: Dann Frazier <dannf@ubuntu.com>
    Reported-by: https://launchpad.net/~cjkrupp
    Bisected-by: Dann Frazier <dannf@ubuntu.com>
    Bisected-by: https://launchpad.net/~cjkrupp
    Suggested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Suggested-by: Star Zeng <star.zeng@intel.com>
    Ref: https://bugs.launchpad.net/ubuntu/+source/edk2/+bug/1725560
    Fixes: 6fb8ddd
    Contributed-under: TianoCore Contribution Agreement 1.1
    Signed-off-by: Laszlo Ersek <lersek@redhat.com>
    Tested-by: dann frazier <dann.frazier@canonical.com>
    Reviewed-by: Star Zeng <star.zeng@intel.com>
    Tested-by: Aleksei Kovura <alex3kov@zoho.com>
  2. Drivers/SataSiI3132Dxe: Allow 64-bit DMA transfer

    daniileg authored and ardbiesheuvel committed Oct 27, 2017
    Set a PCI IO attribute allowing 64-bit DMA transfer.
    
    Contributed-under: TianoCore Contribution Agreement 1.1
    Signed-off-by: Daniil Egranov <daniil.egranov@arm.com>
    Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
  3. Drivers/SataSiI3132Dxe: Fixed PCI IO read and write operations

    daniileg authored and ardbiesheuvel committed Oct 27, 2017
    The ATA pass through read should use PCI IO bus master write operation
    and ATA pass through write should use PCI IO bus master read operation
    as the read and write operations are executed from the bus master's
    point of view.
    
    Contributed-under: TianoCore Contribution Agreement 1.1
    Signed-off-by: Daniil Egranov <daniil.egranov@arm.com>
    Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
  4. BaseTools/tools_def: suppress GCC predefined macros in DTB compilation

    ardbiesheuvel committed Oct 26, 2017
    The standard GCC preprocessor we use to preprocess device tree source
    files has a whole bunch of macros predefined, among which
    
      #define __linux 1
      #define __linux__ 1
      #define __gnu_linux__ 1
      #define linux 1
    
    This causes a property like 'linux,code' to be converted into '1,code'
    which is obviously wrong. So let's get rid of all the predefined macros
    by passing -undef to the preprocessor command line.
    
    Contributed-under: TianoCore Contribution Agreement 1.1
    Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Acked-by: Laszlo Ersek <lersek@redhat.com>
    Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
  5. BaseTools/tools_def AARCH64 ARM: disable PIE linking

    ardbiesheuvel committed Oct 25, 2017
    Some prebuilt GCC toolchains targeting aarch64 (e.g., the Debian Stretch
    one) will default to building PIE executables. This has been observed to
    corrupt ACPI tables built from .aslc sources, so disable PIE linking
    altogether when using the GCC toolchain to build for AARCH64 or ARM.
    
    Contributed-under: TianoCore Contribution Agreement 1.1
    Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Reviewed-by: Liming Gao <liming.gao@intel.com>
  6. NetworkPkg/IScsiDxe: Clear the old IFR TargetIp to avoid sharing it w…

    jiaxinwu committed Oct 24, 2017
    …ith other attempts.
    
    Cc: Karunakar P <karunakarp@amiindia.co.in>
    Cc: Ye Ting <ting.ye@intel.com>
    Cc: Fu Siyuan <siyuan.fu@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Wu Jiaxin <jiaxin.wu@intel.com>
    Tested-by: Karunakar P <karunakarp@amiindia.co.in>
    Reviewed-by: Fu Siyuan <siyuan.fu@intel.com>
  7. UefiCpuPkg/MpInitLib: Keep compatible with former AP counting solution.

    ydong10 committed Oct 26, 2017
    For some special platforms (such as Ovmf), it is possible
    that, some APs start up *and finish* before the remaining
    APs start up *at all*. In this case, the enhance
    solution by changes 0594ec4 not works as expected.
    
    This change remove check CpuMpData->CpuCount logic to let old
    solution still workable if platform owner still set a long
    time for PcdCpuApInitTimeOutInMicroSeconds. It's platform
    owner's response to decide which solution to use.
    
    Cc: Ruiyu Ni <ruiyu.ni@intel.com>
    Cc: Laszlo Ersek <lersek@redhat.com>
    Cc: Jeff Fan <vanjeff_919@hotmail.com>
    Contributed-under: TianoCore Contribution Agreement 1.1
    Signed-off-by: Eric Dong <eric.dong@intel.com>
    Reviewed-by: Laszlo Ersek <lersek@redhat.com>
    Reviewed-by: Jeff Fan <vanjeff_919@hotmail.com>
  8. UefiCpuPkg/CpuFeatures: Export HOB if CPU initialized in PEI

    ydong10 committed Oct 26, 2017
    In current implementation, CPU initialized can be done in PEI
    or DXE phase. PEI uses CpuFeaturesPei and Dxe uses CpuFeaturesDxe.
    If CPU initialized in PEI phase, CpuFeaturesDxe driver will
    not be used. This driver will install gEdkiiCpuFeaturesInitDoneGuid
    protocol after it initializes the CPU.
    
    Some drivers depend on this protocol to dispatch themselves. If
    CpuFeaturesDxe not been used, these drivers will not be dispatched.
    
    This patch fix the above issue. If Cpu initialized in PEI
    phase, it also report a guid HOB for CpuFeaturesDxe.
    CpuFeaturesDxe will check this HOB first. If it found this
    HOB, it just install gEdkiiCpuFeaturesInitDoneGuid protocol,
    else it will also do the CPU initialization.
    
    Cc: Ruiyu Ni <ruiyu.ni@intel.com>
    Cc: Laszlo Ersek <lersek@redhat.com>
    Contributed-under: TianoCore Contribution Agreement 1.1
    Signed-off-by: Eric Dong <eric.dong@intel.com>
    Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com>
    Reviewed-by: Laszlo Ersek <lersek@redhat.com>
Commits on Oct 26, 2017
  1. Maintainers.txt: add Laszlo Ersek as UefiCpuPkg reviewer

    lersek committed Oct 24, 2017
    UefiCpuPkg hosts a number of modules (SMM infrastructure,
    MP-initialization) that may behave differently enough between
    virtualization guests and physical boards that they merit regression
    testing and review specifically from a virtualization perspective.
    
    Add Laszlo as a UefiCpuPkg reviewer (not maintainer) so that he be CC'd on
    all UefiCpuPkg patches.
    
    > R: Package Reviewer: Cc address for patches and questions. Reviewers
    >    help maintainers review code, but don't have push access.
    
    Cc: Andrew Fish <afish@apple.com>
    Cc: Eric Dong <eric.dong@intel.com>
    Cc: Jeff Fan <vanjeff_919@hotmail.com>
    Cc: Leif Lindholm <leif.lindholm@linaro.org>
    Cc: Michael D Kinney <michael.d.kinney@intel.com>
    Cc: Ruiyu Ni <ruiyu.ni@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.1
    Signed-off-by: Laszlo Ersek <lersek@redhat.com>
    Reviewed-by: Eric Dong <eric.dong@intel.com>
    Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
  2. IntelSiliconPkg IntelVTdDxe: use gEfiAcpi10TableGuid for ACPI 1.0

    lzeng14 committed Oct 25, 2017
    According to definition (Acpi.h and MdePkg.dec),
    gEfiAcpiTableGuid = gEfiAcpi20TableGuid, and the code is trying
    to parse ACPI 2.0 first and then ACPI 1.0, but it uses
    gEfiAcpiTableGuid wrongly for ACPI 1.0, this patch is to fix it.
    
    Cc: Jiewen Yao <jiewen.yao@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.1
    Signed-off-by: Star Zeng <star.zeng@intel.com>
    Reviewed-by: Jiewen Yao <jiewen.yao@intel.com>
  3. MdeModulePkg/Ip4Dxe: Trigger Ip4Config2 to retrieve the default address.

    jiaxinwu committed Oct 20, 2017
    According the UEFI spec 2.7 A:
    In section 28.3.2 for the IpConfigData.UseDefaultAddress, "While set to
    TRUE, Configure() will trigger the EFI_IP4_CONFIG2_PROTOCOL to retrieve
    the default IPv4 address if it is not available yet."
    In section 28.5 for the Ip4Config2PolicyDhcp, "...All of these configurations
    are retrieved from DHCP server or other auto-configuration mechanism."
    
    This patch is to align with the above description. When the default IPv4
    address is not available and IpConfigData.UseDefaultAddress is set to TRUE,
    Ip4Config2 protocol will be called to retrieve the default address by setting
    the policy to Ip4Config2PolicyDhcp.
    
    Cc: Ye Ting <ting.ye@intel.com>
    Cc: Fu Siyuan <siyuan.fu@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Wu Jiaxin <jiaxin.wu@intel.com>
    Reviewed-by: Fu Siyuan <siyuan.fu@intel.com>
  4. NetworkPkg/TlsAuthConfigDxe: Remove the extra FreePool

    jiaxinwu committed Oct 19, 2017
    Cc: Long Qin <qin.long@intel.com>
    Cc: Ye Ting <ting.ye@intel.com>
    Cc: Fu Siyuan <siyuan.fu@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: Long Qin <qin.long@intel.com>
    Reviewed-by: Fu Siyuan <siyuan.fu@intel.com>
  5. NetworkPkg/IScsiDxe: Add IPv6 support condition check.

    jiaxinwu committed Oct 17, 2017
    Base on the request of https://bugzilla.tianocore.org/show_bug.cgi?id=710,
    we provide this patch to IPv6 condition check by leveraging AIP Protocol.
    
    Cc: Karunakar P <karunakarp@amiindia.co.in>
    Cc: Ye Ting <ting.ye@intel.com>
    Cc: Fu Siyuan <siyuan.fu@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Karunakar P <karunakarp@amiindia.co.in>
    Signed-off-by: Wu Jiaxin <jiaxin.wu@intel.com>
    Reviewed-by: Karunakar p <karunakarp@amiindia.co.in>
    Reviewed-by: Wu Jiaxin <jiaxin.wu@intel.com>
  6. NetworkPkg/HttpBootDxe: Add IPv6 support condition check.

    jiaxinwu committed Oct 17, 2017
    v2:
    * Fix the potential ASSERT issue.
    
    Base on the request of https://bugzilla.tianocore.org/show_bug.cgi?id=710,
    we provide this patch to IPv6 condition check by leveraging AIP Protocol.
    
    Cc: Karunakar P <karunakarp@amiindia.co.in>
    Cc: Ye Ting <ting.ye@intel.com>
    Cc: Fu Siyuan <siyuan.fu@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Karunakar P <karunakarp@amiindia.co.in>
    Signed-off-by: Wu Jiaxin <jiaxin.wu@intel.com>
    Reviewed-by: Karunakar p <karunakarp@amiindia.co.in>
    Reviewed-by: Wu Jiaxin <jiaxin.wu@intel.com>
  7. NetworkPkg/IScsiDxe: Display InitiatorInfo in attempt page even DHCP …

    jiaxinwu committed Oct 9, 2017
    …enabled.
    
    Cc: Karunakar P <karunakarp@amiindia.co.in>
    Cc: Ye Ting <ting.ye@intel.com>
    Cc: Fu Siyuan <siyuan.fu@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Wu Jiaxin <jiaxin.wu@intel.com>
    Reviewed-by: Karunakar p <karunakarp@amiindia.co.in>
  8. NetworkPkg/IScsiDxe: Clean the previous ConfigData when switching the…

    jiaxinwu committed Oct 18, 2017
    … IP mode.
    
    Cc: Karunakar P <karunakarp@amiindia.co.in>
    Cc: Ye Ting <ting.ye@intel.com>
    Cc: Fu Siyuan <siyuan.fu@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Wu Jiaxin <jiaxin.wu@intel.com>
    Reviewed-by: Karunakar p <karunakarp@amiindia.co.in>
  9. NetworkPkg/IScsiDxe: Fix the incorrect/needless DHCP process.

    jiaxinwu committed Oct 16, 2017
    The existing attempt should not trigger the DHCP process if it
    doesn't associates with the current NIC. That's incorrect when
    displaying the initiator info in attempt page.
    
    Cc: Karunakar P <karunakarp@amiindia.co.in>
    Cc: Ye Ting <ting.ye@intel.com>
    Cc: Fu Siyuan <siyuan.fu@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Wu Jiaxin <jiaxin.wu@intel.com>
    Reviewed-by: Karunakar p <karunakarp@amiindia.co.in>
  10. Shellpkg/editor: Fix a bug that may modifies Line[-1]

    Ruiyu Ni
    Ruiyu Ni committed Oct 25, 2017
    The original code as below intend to set the character
    before last column to CHAR_NULL.
      Line[(LastCol % (ARRAY_SIZE (Line) - 1)) - 1] = CHAR_NULL;
    
    But when LastCol % (ARRAY_SIZE (Line) - 1)) equals to 0,
    Line[-1] is modified.
    
    We should change to code as below:
      Line[(LastCol - 1) % (ARRAY_SIZE (Line) - 1)] = CHAR_NULL;
    
    Contributed-under: TianoCore Contribution Agreement 1.1
    Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
    Reviewed-by: Jaben Carsey <jaben.carsey@intel.com>
    Reviewed-by: Hao A Wu <hao.a.wu@intel.com>
Commits on Oct 25, 2017
  1. MdeModulePkg/Variable/RuntimeDxe: delete & lock MOR in the absence of…

    lersek committed Oct 10, 2017
    … SMM
    
    VariableRuntimeDxe deletes and locks the MorLock variable in
    MorLockInit(), with the argument that any protection provided by MorLock
    can be circumvented if MorLock can be overwritten by unprivileged code
    (i.e., outside of SMM).
    
    Extend the argument and the logic to the MOR variable, which is supposed
    to be protected by MorLock. Pass Attributes=0 when deleting MorLock and
    MOR both.
    
    This change was suggested by Star; it is inspired by earlier VariableSmm
    commit fda8f63 ("MdeModulePkg/Variable/RuntimeDxe: delete and lock
    OS-created MOR variable", 2017-10-03).
    
    Cc: Eric Dong <eric.dong@intel.com>
    Cc: Jiewen Yao <jiewen.yao@intel.com>
    Cc: Star Zeng <star.zeng@intel.com>
    Suggested-by: Star Zeng <star.zeng@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.1
    Signed-off-by: Laszlo Ersek <lersek@redhat.com>
    Reviewed-by: Star Zeng <star.zeng@intel.com>
  2. ShellPkg/HandleParsingLib: Remove unnecessary CatSPrint call

    Ruiyu Ni
    Ruiyu Ni committed Oct 19, 2017
    Contributed-under: TianoCore Contribution Agreement 1.1
    Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
    Reviewed-by: Jaben Carsey <jaben.carsey@intel.com>
Commits on Oct 24, 2017
  1. UefiCpuPkg/MpInitLib: Enhance waiting for AP initialization logic.

    ydong10 committed Oct 23, 2017
    Current logic always waiting for a specific value to collect all APs
    count. This logic may caused some platforms cost too much time to
    wait for time out.
    This patch add new logic to collect APs count. It adds new variable
    NumApsExecuting to detect whether all APs have finished initialization.
    Each AP let NumApsExecuting++ when begin to initialize itself and let
    NumApsExecuting-- when it finish the initialization. BSP base on whether
    NumApsExecuting == 0  to finished the collect AP process.
    
    Cc: Ruiyu Ni <ruiyu.ni@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.1
    Signed-off-by: Eric Dong <eric.dong@intel.com>
    Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com>
    Reviewed-by: Jeff Fan <vanjeff_919@hotmail.com>
  2. UefiCpuPkg/MpInitLib: Change AP Index variable name.

    ydong10 committed Oct 23, 2017
    Original AP index variable name not well express the meaning
    of the variable. Also this name is better used in later patch.
    So change the variable name for better understanding.
    
    Cc: Ruiyu Ni <ruiyu.ni@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.1
    Signed-off-by: Eric Dong <eric.dong@intel.com>
    Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com>
    Reviewed-by: Jeff Fan <vanjeff_919@hotmail.com>
  3. CryptoPkg/BaseCryptLib: remove some duplicate initializations.

    vathpela authored and qloong committed Oct 20, 2017
    clang-analyzer noticed this:
    
    Pk/CryptPkcs7Verify.c:600:5: warning: Value stored to 'OldSize' is never read
        OldSize    = BufferSize;
        ^            ~~~~~~~~~~
    Pk/CryptPkcs7Verify.c:644:5: warning: Value stored to 'OldSize' is never read
        OldSize    = BufferSize;
        ^            ~~~~~~~~~~
    2 warnings generated.
    
    These are each immediately followed by a loop that initializes them (to
    the same values) a second time, and are otherwise only referenced inside
    that loop, so there's just no point to these assignments at all.
    
    Contributed-under: TianoCore Contribution Agreement 1.1
    Signed-off-by: Peter Jones <pjones@redhat.com>
    Reviewed-by: Laszlo Ersek <lersek@redhat.com>
    Reviewed-by: Long Qin <qin.long@intel.com>
  4. TFTP : tftp fix for full volume case

    Meenakshi Aggarwal Ruiyu Ni
    Meenakshi Aggarwal authored and Ruiyu Ni committed Sep 25, 2017
    Issue :
    When storage media is full, tftp was resulting in ASSERT
    MdeModulePkg/Core/Dxe/Mem/Page.c, because number of pages
    was zero.
    
    Reason:
    While doing tftp, function call ShellWriteFile was modifying
    FileSize variable. In case of full disk it was coming out to be
    Zero.
    
    Fix:
    Storage the original filesize in local variable, and use this
    variable while freeing the pages.
    
    Contributed-under: TianoCore Contribution Agreement 1.1
    Signed-off-by: Udit Kumar <udit.kumar@nxp.com>
    Signed-off-by: Meenakshi Aggarwal <meenakshi.aggarwal@nxp.com>
    Signed-off-by: Vabhav Sharma <vabhav.sharma@nxp.com>
    Reviewed-by: Jaben Carsey <jaben.carsey@intel.com>
    Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com>
  5. IntelSiliconPkg/VtdInfoSample: Fix IGD RMRR memory.

    jyao1 committed Oct 20, 2017
    Fix a calculation problem in IGD RMRR memory.
    
    Cc: Zeng Star <zeng.star@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.1
    Signed-off-by: Jiewen Yao <jiewen.yao@intel.com>
    Reviewed-by: Zeng Star <zeng.star@intel.com>
  6. UefiCpuPkg/MtrrLib: Make comments align with function

    dandanbi authored and ydong10 committed Oct 19, 2017
    Cc: Eric Dong <eric.dong@intel.com>
    Cc: Ruiyu Ni <ruiyu.ni@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.1
    Signed-off-by: Dandan Bi <dandan.bi@intel.com>
    Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com>
  7. MdeModulePkg/DxeIplPeim: Refine coding style in function comments

    dandanbi authored and ydong10 committed Oct 19, 2017
    Make the comments align with the function.
    And add some missing function comments.
    
    Cc: Jian J Wang <jian.j.wang@intel.com>
    Cc: Eric Dong <eric.dong@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.1
    Signed-off-by: Dandan Bi <dandan.bi@intel.com>
    Reviewed-by: Jian J Wang <jian.j.wang@intel.com>
  8. IntelFrameworkModule/LegacyBios: Avoid explicit comparison for BOOLEAN

    dandanbi authored and ydong10 committed Oct 19, 2017
    Cc: Jian J Wang <jian.j.wang@intel.com>
    Cc: Liming Gao <liming.gao@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.1
    Signed-off-by: Dandan Bi <dandan.bi@intel.com>
    Reviewed-by: Jian J Wang <jian.j.wang@intel.com>
  9. IntelFrameworkModulePkg/Csm: Refine coding style in comments

    dandanbi authored and ydong10 committed Oct 19, 2017
    Make the comments follow Edk2 coding style:
    1. Make the comments starts with /** and end with **/.
    2. Make the comments descrition end with '.'
    
    Cc: Jian J Wang <jian.j.wang@intel.com>
    Cc: Liming Gao <liming.gao@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.1
    Signed-off-by: Dandan Bi <dandan.bi@intel.com>
    Reviewed-by: Jian J Wang <jian.j.wang@intel.com>
Commits on Oct 23, 2017
  1. EmbeddedPkg: add driver to set graphical/serial console preference

    ardbiesheuvel committed Oct 20, 2017
    Linux on ARM/arm64 will infer from the presence of a /chosen/stdout-path
    DT property or of a SPCR ACPI table that the primary console is the serial
    port, even if a graphical console is available as well.
    
    So let's introduce a driver that allows the user to set a preference
    between graphical and serial if both are available. If the preference
    is set to 'Graphical', and any GOP protocol instances have been installed
    by the time the ReadyToBoot event is signalled, remove the DT property
    and/or the SPCR table entirely.
    
    Contributed-under: TianoCore Contribution Agreement 1.1
    Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
  2. MdeModulePkg/PciBus: Fix bug that PCI BUS claims too much resource

    Ruiyu Ni
    Ruiyu Ni committed Oct 20, 2017
    The bug was caused by 728d749
    "MdeModulePkg/PciBus: Count multiple hotplug resource paddings".
    
    The patch firstly updated the Bridge->Alignment to the maximum
    alignment of all devices under the bridge, then aligned the
    Bridge->Length to Bridge->Alignment.
    It caused too much resources were claimed.
    
    The new patch firstly aligns Bridge->Length to Bridge->Alignment,
    then updates the Bridge->Alignment to the maximum alignment of all
    devices under the bridge.
    Because the step to update the Bridge->Alignment is to make sure
    the resource allocated to the bus under the Bridge meets all
    devices alignment. But the Bridge->Length doesn't have to align
    to the maximum alignment.
    
    Contributed-under: TianoCore Contribution Agreement 1.1
    Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
    Reviewed-by: Eric Dong <eric.dong@intel.com>
  3. UefiCpuPkg/MtrrLib: Use SetMem instead of SetMem64 to fix hang

    Ruiyu Ni
    Ruiyu Ni committed Oct 23, 2017
    ClearMasks and OrMasks are not 8-byte aligned.
    But SetMem64 requires the input address is 8-byte aligned.
    If the input is not 8-byte aligned, assertion is hit.
    Use SetMem instead.
    
    Contributed-under: TianoCore Contribution Agreement 1.1
    Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
    Reviewed-by: Eric Dong <eric.dong@intel.com>