summaryrefslogtreecommitdiff
path: root/QuarkPlatformPkg
AgeCommit message (Collapse)AuthorFilesLines
2018-08-14QuarkPlatformPkg: Removing ipf which is no longer supported from edk2.chenc210-20/+20
Removing rules for Ipf sources file: * Remove the source file which path with "ipf" and also listed in [Sources.IPF] section of INF file. * Remove the source file which listed in [Components.IPF] section of DSC file and not listed in any other [Components] section. * Remove the embedded Ipf code for MDE_CPU_IPF. Removing rules for Inf file: * Remove IPF from VALID_ARCHITECTURES comments. * Remove DXE_SAL_DRIVER from LIBRARY_CLASS in [Defines] section. * Remove the INF which only listed in [Components.IPF] section in DSC. * Remove statements from [BuildOptions] that provide IPF specific flags. * Remove any IPF sepcific sections. Removing rules for Dec file: * Remove [Includes.IPF] section from Dec. Removing rules for Dsc file: * Remove IPF from SUPPORTED_ARCHITECTURES in [Defines] section of DSC. * Remove any IPF specific sections. * Remove statements from [BuildOptions] that provide IPF specific flags. Cc: Kelly Steele <kelly.steele@intel.com> Cc: Michael D Kinney <michael.d.kinney@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Chen A Chen <chen.a.chen@intel.com> Reviewed-by: Kelly Steele <kelly.steele@intel.com>
2018-08-06QuarkPlatformPkg: Remove DxeSmmPerformanceLibDandan Bi2-5/+1
DxeSmmPerformanceLib previously is used by DP tool. But in new pweformance infrastructure, we have updated Dp tool to get the performance data from firmware performance data table in ACPI. So remove the usage of DxeSmmPerformanceLib here. Cc: Michael D Kinney <michael.d.kinney@intel.com> Cc: Kelly Steele <kelly.steele@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: Liming Gao <liming.gao@intel.com>
2018-07-27QuarkPlatform/PlatformBDS: Implement PlatformBootManagerUnableToBootRuiyu Ni1-1/+18
Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com> Cc: Michael D Kinney <michael.d.kinney@intel.com> Reviewed-by: Kelly Steele <kelly.steele@intel.com>
2018-05-28QuarkPlatformPkg/PlatformFlashAccessLib: Add progress APIMichael D Kinney1-8/+70
https://bugzilla.tianocore.org/show_bug.cgi?id=801 Add PerformFlashWriteWithProgress() to the PlatformFlashAccessLib. This allows the platform to inform the user of progress when a firmware storage device is being updated with a new firmware image. Cc: Kelly Steele <kelly.steele@intel.com> Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Reviewed-by: Jiewen Yao <jiewen.yao@intel.com>
2018-05-28QuarkPlatformPkg: Add DisplayUpdateProgressLib mappingKinney, Michael D1-0/+1
https://bugzilla.tianocore.org/show_bug.cgi?id=801 Based on content from the following branch/commits: https://github.com/Microsoft/MS_UEFI/tree/share/MsCapsuleSupport Cc: Sean Brogan <sean.brogan@microsoft.com> Cc: Kelly Steele <kelly.steele@intel.com> Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Reviewed-by: Jiewen Yao <jiewen.yao@intel.com>
2018-03-16QuarkPlatformPkg: remove TrEE reference.Jiewen Yao2-2/+2
TrEE is deprecated. We need use Tcg2. Cc: Michael D Kinney <michael.d.kinney@intel.com> Cc: Kelly Steele <kelly.steele@intel.com> Cc: Chao B Zhang <chao.b.zhang@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Jiewen Yao <jiewen.yao@intel.com> Reviewed-by: Chao B Zhang <chao.b.zhang@intel.com> Reviewed-by: Kelly Steele <kelly.steele@intel.com>
2018-02-11QuarkPlatformPkg: Add SafeIntLib and BmpSupportLib to DSC filesMichael D Kinney1-0/+2
https://bugzilla.tianocore.org/show_bug.cgi?id=800 Based on content from the following branch/commits: https://github.com/Microsoft/MS_UEFI/tree/share/MsCapsuleSupport https://github.com/Microsoft/MS_UEFI/commit/33bab4031a417d7d5a7d356c15a14c2e60302b2d https://github.com/Microsoft/MS_UEFI/commit/ca516b1a61315c2d823f453e12d2135098f53d61 https://github.com/Microsoft/MS_UEFI/commit/2b9f111f2e74a4c2ef4c4e32379e111f016dbd9b Add BmpSupportLib and SafeIntLib mappings that are required by the DxeCapsuleLib when CAPSULE_ENABLE is set. Cc: Sean Brogan <sean.brogan@microsoft.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Cc: Kelly Steele <kelly.steele@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com> Reviewed-by: Bret Barkelew <Bret.Barkelew@microsoft.com>
2018-02-11QuarkPlatformPkg: Switch from EsrtDxe to EsrtFmpDxeMichael D Kinney2-4/+4
https://bugzilla.tianocore.org/show_bug.cgi?id=802 Based on content from the following branch/commits: https://github.com/Microsoft/MS_UEFI/tree/share/MsCapsuleSupport The EsrtFmpDxe module is a lightweight version of the EsrtDxe module that produces ESRT entries based only on FMP Protocol instances. Cc: Sean Brogan <sean.brogan@microsoft.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Cc: Star Zeng <star.zeng@intel.com> Cc: Eric Dong <eric.dong@intel.com> Cc: Ruiyu Ni <ruiyu.ni@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com> Reviewed-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Bret Barkelew <Bret.Barkelew@microsoft.com>
2017-12-02QuarkPlatformPkg: Use DpDynamicCommand to replace PerformancePkg/dpRuiyu Ni4-22/+31
Remove FvSimpleFileSystemDxe from Quark.dsc/fdf because it's not needed by using DpDynamicCommand driver. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com> Cc: Michael D Kinney <michael.d.kinney@intel.com> Reviewed-by: Kelly Steele <kelly.steele@intel.com>
2017-11-14QuarkPlatformPkg/PlatformBootManagerLib: Update boot mode handlingMichael D Kinney1-18/+12
https://bugzilla.tianocore.org/show_bug.cgi?id=768 Update and simplify boot mode handling logic. This includes performing minimum connects for the following boot modes: BOOT_ASSUMING_NO_CONFIGURATION_CHANGES BOOT_WITH_MINIMAL_CONFIGURATION BOOT_ON_S4_RESUME Cc: Kelly Steele <kelly.steele@intel.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com> Reviewed-by: Kelly Steele <kelly.steele@intel.com>
2017-11-14QuarkPlatformPkg/Readme.md: Fix markdown format issueMichael D Kinney1-2/+1
https://bugzilla.tianocore.org/show_bug.cgi?id=769 Remove extra carriage return that causes formatting issues. Cc: Kelly Steele <kelly.steele@intel.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com> Reviewed-by: Kelly Steele <kelly.steele@intel.com>
2017-08-10QuarkPlatformPkg/Readme.md: Bring Readme.md up to dateMichael D Kinney1-16/+18
The following commit moved the QuarkSocBinPkg from the root directory of the edk2-non-osi repository to the Silicon/Intel directory. https://github.com/tianocore/edk2-non-osi/commit/182e85d04566800fe188de4b1c30a50533dd74b7 The following updates are made to Readme.md: * PACKAGES_PATH setting for edk2-non-osi directory changes * Remove use of edk2-FatPkg repository * Remove use of edk2-BaseTools-win32 repository * Run python build tools from sources Cc: Leif Lindholm <leif.lindholm@linaro.org> Cc: Kelly Steele <kelly.steele@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com> Reviewed-by: Kelly Steele <kelly.steele@intel.com> Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
2017-08-03edk2: Move License.txt file to rootMichael D Kinney1-25/+0
https://bugzilla.tianocore.org/show_bug.cgi?id=642 Add top level License.txt file with the BSD 2-Clause License that is used by the majority of the EKD II open source project content. Merge copyright statements from the BSD 2-Clause License files in each package directory and remove the duplication License.txt file from package directories. Cc: Leif Lindholm <leif.lindholm@linaro.org> Cc: Andrew Fish <afish@apple.com> Cc: Jordan Justen <jordan.l.justen@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
2017-08-03edk2: Move TianoCore Contribution Agreement to rootMichael D Kinney1-218/+0
https://bugzilla.tianocore.org/show_bug.cgi?id=629 Move Contributions.txt that contains the TianoCore Contribution Agreement 1.0 to the root of the edk2 repository and remove the duplicate Contributions.txt files from all packages. Cc: Leif Lindholm <leif.lindholm@linaro.org> Cc: Andrew Fish <afish@apple.com> Cc: Jordan Justen <jordan.l.justen@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
2017-05-29QuarkPlatformPkg/SpiFvbServices: correct NumOfLba vararg type in EraseBlocks()Laszlo Ersek1-2/+2
According to the PI spec, Volume 3, EFI_FIRMWARE_VOLUME_BLOCK2_PROTOCOL.EraseBlocks(): > The variable argument list is a list of tuples. Each tuple describes a > range of LBAs to erase and consists of the following: > * An EFI_LBA that indicates the starting LBA > * A UINTN that indicates the number of blocks to erase (NB, in edk2, EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL is a typedef to EFI_FIRMWARE_VOLUME_BLOCK2_PROTOCOL.) In this driver, the NumOfLba local variable is defined with type UINTN, but the TYPE argument passed to VA_ARG() is UINT32. Fix the mismatch. Cc: Jordan Justen <jordan.l.justen@intel.com> Cc: Kelly Steele <kelly.steele@intel.com> Cc: Michael D Kinney <michael.d.kinney@intel.com> Reported-by: Jordan Justen <jordan.l.justen@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com>
2017-03-22QuarkPlatformPkg/PlatformBootManagerLib: use new UefiShellFileGuid definitionArd Biesheuvel2-3/+3
Move to the new definition of UefiShellFileGuid, which is defined in the ShellPkg package declaration file rather than hardcoded in this module. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com>
2017-03-10QuarkPlatformPkg: Add UefiBootManagerLib to fix Shell build failureRuiyu Ni2-5/+4
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
2017-01-11QuarkPlatformPkg/Tpm12DeviceLibAtmelI2c: Fix GCC build issuesMichael Kinney1-7/+11
https://bugzilla.tianocore.org/show_bug.cgi?id=335 Fix build issues with GCC49. There are local variables that may be used before initialized in some paths. Cc: Kelly Steele <kelly.steele@intel.com> Cc: Lee Leahy <leroy.p.leahy@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Michael Kinney <michael.d.kinney@intel.com> Reviewed-by: Lee Leahy <leroy.p.leahy@intel.com>
2017-01-11QuarkPlatformPkg/Tpm12DeviceLibAtmelI2c: Fix SubmitCommand() out sizeMichael Kinney1-0/+1
https://bugzilla.tianocore.org/show_bug.cgi?id=336 When the Tpm12SubmitCommand() detects a response packet that is the same size as a TPM_RSP_COMMAND_HDR, it returns EFI_SUCCESS without reading any additional response packet information from the TPM. In that case, the return parameter OutputParameterBlockSize is not be updated, so the size of that OutputParameterBlock returned is the value passed in which could be larger than what is actually returned from the TPM. Set the OutputParameterBlockSize to the size of the TPM_RSP_COMMAND_HDR when this specific condition is detected. Cc: Kelly Steele <kelly.steele@intel.com> Cc: Lee Leahy <leroy.p.leahy@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Michael Kinney <michael.d.kinney@intel.com> Reviewed-by: Lee Leahy <leroy.p.leahy@intel.com>
2017-01-11QuarkPlatformPkg/Tpm12DeviceLibAtmelI2c: Remove PP CheckMichael Kinney2-13/+2
https://bugzilla.tianocore.org/show_bug.cgi?id=337 The Tpm12CommandLib in the SecurityPkg was updated to check the returnCode in the response packet in the following commit: https://github.com/tianocore/edk2/commit/950a3bc788b5b101729b26aed3ff75fd2a64a570 The Tpm12DeviceLibAtmelI2C uses the Tpm12PhysicalPresence() function from the Tpm12CommandLib to verify that the I2C device is responding to TPM command packets. However, at this point the TPM device has not been started, and the TPM properly responds with an error in the returnCode field of the response packet. Before the commit above, the check worked, but the additional error checking in the commit above now returns an error and an Atmel I2C is returned as not present. The fix is to remove the call to the Tpm12PhysicalPresence() API in the Tpm12CommandLib from the Tpm12RequestUseTpm() API. The Atmel I2C TPM device is detected if a byte can be read from the slave address assigned to the Atmel I2C device. When the startup command is sent to the TPM later, the command and response packet processing will be verified, and if the I2C device is not an Atmel TPM, it will be detected at that point. Cc: Kelly Steele <kelly.steele@intel.com> Cc: Lee Leahy <leroy.p.leahy@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Michael Kinney <michael.d.kinney@intel.com> Reviewed-by: Lee Leahy <leroy.p.leahy@intel.com>
2016-11-17QuarkPlatformPkg/dsc: enable Smm paging protection.Jiewen Yao1-0/+6
Cc: Michael D Kinney <michael.d.kinney@intel.com> Cc: Kelly Steele <kelly.steele@intel.com> Cc: Jeff Fan <jeff.fan@intel.com> Cc: Feng Tian <feng.tian@intel.com> Cc: Star Zeng <star.zeng@intel.com> Cc: Laszlo Ersek <lersek@redhat.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jiewen Yao <jiewen.yao@intel.com> Tested-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com>
2016-11-10QuarkPlatformPkg/PlatformBds: Dispatch deferred images after EndOfDxeRuiyu Ni1-0/+5
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com> Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com> Cc: Kelly Steele <kelly.steele@intel.com> Reviewed-by: Sunny Wang <sunnywang@hpe.com>
2016-11-08QuarkPlatformPkg/Readme: add capsule/recovery related content.Jiewen Yao1-0/+18
Cc: Michael D Kinney <michael.d.kinney@intel.com> Cc: Kelly Steele <kelly.steele@intel.com> Cc: Feng Tian <feng.tian@intel.com> Cc: Star Zeng <star.zeng@intel.com> Cc: Liming Gao <liming.gao@intel.com> Cc: Chao Zhang <chao.b.zhang@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jiewen Yao <jiewen.yao@intel.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> Tested-by: Michael Kinney <michael.d.kinney@intel.com>
2016-11-08QuarkPlatformPkg/dsc/fdf: Add capsule/recovery support.Jiewen Yao3-15/+202
Add capsule and recovery support module in platform dsc and fdf. Cc: Michael D Kinney <michael.d.kinney@intel.com> Cc: Kelly Steele <kelly.steele@intel.com> Cc: Feng Tian <feng.tian@intel.com> Cc: Star Zeng <star.zeng@intel.com> Cc: Liming Gao <liming.gao@intel.com> Cc: Chao Zhang <chao.b.zhang@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jiewen Yao <jiewen.yao@intel.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> Tested-by: Michael Kinney <michael.d.kinney@intel.com>
2016-11-08QuarkPlatformPkg/PlatformBootManager: Add capsule/recovery handling.Jiewen Yao3-5/+152
1) Add capsule and recovery boot path handling in platform BDS. 2) Add check if the platform is using default test key for capsule. Produce PcdTestKeyUsed to indicate if there is any test key used in current BIOS, such as recovery key, or capsule update key. Then the generic UI may consume this PCD to show warning information. Cc: Michael D Kinney <michael.d.kinney@intel.com> Cc: Kelly Steele <kelly.steele@intel.com> Cc: Feng Tian <feng.tian@intel.com> Cc: Star Zeng <star.zeng@intel.com> Cc: Liming Gao <liming.gao@intel.com> Cc: Chao Zhang <chao.b.zhang@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jiewen Yao <jiewen.yao@intel.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> Tested-by: Michael Kinney <michael.d.kinney@intel.com>
2016-11-08QuarkPlatformPkg/PlatformInit: Remove recovery PPI installation.Jiewen Yao1-2/+1
The QuarkPlatform will use MdeModulePkg/RecoveryModuleLoadPei for recovery. There is no need to produce recovery PPI in platform module. Cc: Michael D Kinney <michael.d.kinney@intel.com> Cc: Kelly Steele <kelly.steele@intel.com> Cc: Feng Tian <feng.tian@intel.com> Cc: Star Zeng <star.zeng@intel.com> Cc: Liming Gao <liming.gao@intel.com> Cc: Chao Zhang <chao.b.zhang@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jiewen Yao <jiewen.yao@intel.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> Tested-by: Michael Kinney <michael.d.kinney@intel.com>
2016-11-08QuarkPlatformPkg/SystemFirmwareUpdateConfig: Add capsule config file.Jiewen Yao1-0/+63
Add SystemFirmwareUpdateConfig as capsule configuration file. Cc: Michael D Kinney <michael.d.kinney@intel.com> Cc: Kelly Steele <kelly.steele@intel.com> Cc: Feng Tian <feng.tian@intel.com> Cc: Star Zeng <star.zeng@intel.com> Cc: Liming Gao <liming.gao@intel.com> Cc: Chao Zhang <chao.b.zhang@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jiewen Yao <jiewen.yao@intel.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> Tested-by: Michael Kinney <michael.d.kinney@intel.com>
2016-11-08QuarkPlatformPkg/SystemFirmwareDescriptor: Add Descriptor for capsule.Jiewen Yao3-0/+201
Add SystemFirmwareDescriptor for capsule update. The PEIM extracts SystemFirmwareDescriptor info from FFS and reports it via PCD. Cc: Michael D Kinney <michael.d.kinney@intel.com> Cc: Kelly Steele <kelly.steele@intel.com> Cc: Feng Tian <feng.tian@intel.com> Cc: Star Zeng <star.zeng@intel.com> Cc: Liming Gao <liming.gao@intel.com> Cc: Chao Zhang <chao.b.zhang@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jiewen Yao <jiewen.yao@intel.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> Tested-by: Michael Kinney <michael.d.kinney@intel.com>
2016-11-08QuarkPlatformPkg/PlatformFlashAccessLib: Add instance for update.Jiewen Yao4-0/+781
Add PlatformFlashAccessLib for capsule update. Cc: Michael D Kinney <michael.d.kinney@intel.com> Cc: Kelly Steele <kelly.steele@intel.com> Cc: Feng Tian <feng.tian@intel.com> Cc: Star Zeng <star.zeng@intel.com> Cc: Liming Gao <liming.gao@intel.com> Cc: Chao Zhang <chao.b.zhang@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jiewen Yao <jiewen.yao@intel.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> Tested-by: Michael Kinney <michael.d.kinney@intel.com>
2016-10-25QuarkPlatformPkg: Fix typos in commentsGary Lin4-10/+10
- TURE -> TRUE - reseting -> resetting - retore -> restore - boundry -> boundary - tempory -> temporary Cc: Michael D Kinney <michael.d.kinney@intel.com> Cc: Kelly Steele <kelly.steele@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Gary Lin <glin@suse.com> Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com>
2016-10-07QuarkPlatformPkg/RecoveryOemHookLib: Remove RecoveryOemHookLibMichael Kinney4-185/+0
Remove the RecoveryOemHookLib class and instance that is no longer used by any modules. Cc: Kelly Steele <kelly.steele@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Michael Kinney <michael.d.kinney@intel.com> Reviewed-by: Kelly Steele <kelly.steele@intel.com>
2016-10-07QuarkPlatformPkg: Add ForceRecovery UEFI applicationMichael Kinney2-2/+5
https://bugzilla.tianocore.org/show_bug.cgi?id=138 Add the ForceRecovery UEFI application to the Quark.dsc file so this application can be put onto an SD card or USB drive to test the Galileo firmware recovery feature. The library mappings to the RecoveryOemHookLib are also removed becuse this library is not longer used by any modules. Cc: Kelly Steele <kelly.steele@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Michael Kinney <michael.d.kinney@intel.com> Reviewed-by: Kelly Steele <kelly.steele@intel.com>
2016-10-07QuarkPlatformPkg/PlatformHelperLib: Remove PlatformDebugPortGetChar8()Michael Kinney2-42/+1
Remove the library function PlatformDebugPortGetChar8() from the PlatformHelperLib that is no longer used by any modules. Cc: Kelly Steele <kelly.steele@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Michael Kinney <michael.d.kinney@intel.com> Reviewed-by: Kelly Steele <kelly.steele@intel.com>
2016-10-07QuarkPlatformPkg/PlatformInit: Fix recovery detection issuesMichael Kinney6-186/+98
https://bugzilla.tianocore.org/show_bug.cgi?id=137 https://bugzilla.tianocore.org/show_bug.cgi?id=139 There are four supported methods to generate a boot mode of BOOT_IN_RECOVERY_MODE on the Galileo platforms: * Detect a corrupt FV * Detect a forced recovery from the ForceRecovery UEFI application that sets a bit in a sticky R/W register * The RESET button for the Arduino shield is held while the system is powered up * The RESET button for the Arduino shield is held while the system is rebooted using the REBOOT button. The logic in the PlatformInit module is cleaned up and updated to support all three of the recovery detection methods. The clean ups include: * Remove extra debug messages * Remove user input from serial port In addition, once one of the recovery methods is detected and a boot mode of BOOT_IN_RECOVERY_MODE is set, the Galileo platforms would get an error attempting to use the USB host controller to detect and read a recovery image from a USB drive. The issue is the IMR protection registers are programmed to prevent DMA to memory owned by the PEI Core. The IMR register programming is updated to allow DMA to memory that is allocated by the recovery modules using the PEI AllocatePages() service. Cc: Kelly Steele <kelly.steele@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Michael Kinney <michael.d.kinney@intel.com> Reviewed-by: Kelly Steele <kelly.steele@intel.com>
2016-10-07QuarkPlatformPkg/ForceRecovery: Add UEFI application to force recoveryMichael Kinney2-0/+92
https://bugzilla.tianocore.org/show_bug.cgi?id=138 This UEFI Application sets a sticky bit that persists across reset to force a boot mode of BOOT_IN_RECOVERY_MODE. It then performs a warm reset using the UEFI Runtime Service ResetSystem(). Cc: Kelly Steele <kelly.steele@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Michael Kinney <michael.d.kinney@intel.com> Reviewed-by: Kelly Steele <kelly.steele@intel.com>
2016-09-21QuarkPlatformPkg/PlatformSecLib: Fix stack pointer issue in Flat32.SJeff Fan1-2/+2
ESP should be set to top of eSRAM range that aligns with Flat32.asm. Because CPU BIST data will be located at top of STACK, this issue leads Platform Sec Lib cannot get the correct CPU BIST information. This fix is to address below issue: https://tianocore.acgmultimedia.com/show_bug.cgi?id=123 Cc: Steven Shi <Steven.shi@intel.com> Cc: Michael Kinney <michael.d.kinney@intel.com> Cc: Kelly Steele <kelly.steele@intel.com> Cc: Feng Tian <feng.tian@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com>
2016-09-05QuarkPlatformPkg: Declare PciSegmentLib in platform dscStar Zeng2-0/+2
PiDxeS3BootScriptLib will be updated to consume PciSegmentLib instead of PciLib to support multiple PCI segment. That means platforms need to add PciSegmentLib declaration in platform dsc if the PciSegmentLib was not declared in platform dsc before. For platforms only have one segment, MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf is recommended to be used and declared in platform dsc for PiDxeS3BootScriptLib to have equivalent functionality with before. Cc: Jiewen Yao <jiewen.yao@intel.com> Cc: Michael D Kinney <michael.d.kinney@intel.com> Cc: Amy Chan <amy.chan@intel.com> Cc: Kelly Steele <kelly.steele@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Jiewen Yao <jiewen.yao@intel.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com>
2016-08-17QuarkPlatformPkg: Add MpInitLib reference in DSC files.Jeff Fan2-1/+5
This update is for CpuDxe consuming MP Initialize library. v5: 1. Update Quark DSC files to add PeiMpInitLib. Cc: Michael Kinney <michael.d.kinney@intel.com> Cc: Feng Tian <feng.tian@intel.com> Cc: Kelly Steele <kelly.steele@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jeff Fan <jeff.fan@intel.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> Tested-by: Michael Kinney <michael.d.kinney@intel.com>
2016-06-30QuarkPlatformPkg: fix ASSERT_EFI_ERROR() typosLaszlo Ersek4-4/+4
A number of code locations use ASSERT_EFI_ERROR (BooleanExpression) instead of ASSERT (BooleanExpression) Fix them. Cc: Michael D Kinney <michael.d.kinney@intel.com> Cc: Kelly Steele <kelly.steele@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Giri P Mudusuru <giri.p.mudusuru@intel.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com>
2016-05-13QuarkPlatformPkg: Fix variable set but not used build errorsLee Leahy3-23/+4
Fix variable set but not used errors detected by GCC 4.8. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Lee Leahy <leroy.p.leahy@intel.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com>
2016-05-13QuarkPlatformPkg: Fix build errorsLee Leahy7-31/+8
Fix build errors detected with GCC 4.8.4: local variable set but not used! Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Lee Leahy <leroy.p.leahy@intel.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com>
2016-05-05CorebootPayloadPkg/PlatformHelperLib: Remove unreferenced functionLeahy, Leroy P2-178/+1
Remove the PlatformFlashEraseWrite function which is not used within CorebootPayloadPkg. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Lee Leahy <leroy.p.leahy@intel.com> Reviewed-by: Prince Agyeman <prince.agyeman@intel.com>
2016-01-31QuarkPlatformPkg/Readme.md: Move images to tianocore wikiMichael Kinney1-8/+8
Move image files associated with Readme.md from tianocore website to tianocore wiki. Cc: Kelly Steele <kelly.steele@intel.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Michael Kinney <michael.d.kinney@intel.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19779 6f19259b-4bc3-4df7-8a09-765794883524
2016-01-29QuarkPlatformPkg: Add modules required for TCG MOR featureMichael Kinney2-0/+15
Add the TcgSmm and TcgMor modules that are required to manage UEFI variable that conveys TCG MOR request to memory init module in PEI phase. Cc: Kelly Steele <kelly.steele@intel.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Michael Kinney <michael.d.kinney@intel.com> Reviewed-by: Kelly Steele <kelly.steele@intel.com> Reviewed-by: Jiewen Yao <jiewen.yao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19777 6f19259b-4bc3-4df7-8a09-765794883524
2016-01-29QuarkPlatformPkg/PlatformInit: Clear memory based on TCG MOR requestMichael Kinney2-2/+90
If TCG Memory Overwrite Request is set, then clear all memory available for use by an OS. An OS may optionally use embedded SRAM in Quark SoC X1000, so the embedded SRAM should is cleared too. TCG MOR requests are communicated through a UEFI variable. This module reads UEFI variable to check state of MOR request. Cc: Kelly Steele <kelly.steele@intel.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Michael Kinney <michael.d.kinney@intel.com> Reviewed-by: Kelly Steele <kelly.steele@intel.com> Reviewed-by: Jiewen Yao <jiewen.yao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19776 6f19259b-4bc3-4df7-8a09-765794883524
2016-01-29QuarkPlatformPkg: Add Readme.md for QuarkPlatformPkgMichael Kinney1-0/+666
Add a Readme.md for the QuarkPlatformPkg that describes how to clone, build, boot, debug, and enable/disable features for the Intel(R) Galileo Development Board and the Intel(R) Galileo Gen 2 Development Board. Cc: Kelly Steele <kelly.steele@intel.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Michael Kinney <michael.d.kinney@intel.com> Reviewed-by: Kelly Steele <kelly.steele@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19764 6f19259b-4bc3-4df7-8a09-765794883524
2016-01-21QuarkPlatformPkg: Add MEASURED_BOOT_ENABLE featureMichael Kinney2-15/+80
Add MEASURED_BOOT_ENABLE flag Add TPM_12_HARDWARE flag Add TrEEConfigPei to detect TPM 1.2 hardware device Use Tpm12DeviceLib instance for Atmel I2C TPM Use Tpm12DeviceLib instance for Infineon I2C TPM Add TcgPei and TcgDxe modules for TPM 1.2 support Clean up TpmMeasurementLib mappings Cc: Kelly Steele <kelly.steele@intel.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Michael Kinney <michael.d.kinney@intel.com> Reviewed-by: Kelly Steele <kelly.steele@intel.com> Reviewed-by: Jiewen Yao <jiewen.yao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19732 6f19259b-4bc3-4df7-8a09-765794883524
2016-01-21QuarkPlatformPkg: Add Tpm12DeviceLib instance for Infineon I2C TPMMichael Kinney3-0/+683
Add Tpm12DeviceLib instance for Infineon I2C TPM Cc: Kelly Steele <kelly.steele@intel.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Michael Kinney <michael.d.kinney@intel.com> Reviewed-by: Kelly Steele <kelly.steele@intel.com> Reviewed-by: Jiewen Yao <jiewen.yao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19731 6f19259b-4bc3-4df7-8a09-765794883524
2016-01-21QuarkPlatformPkg: Add Tpm12DeviceLib instance for Atmel I2C TPMMichael Kinney3-0/+485
Add new Tpm12DeviceLib instance for an Atmel I2C TPM Cc: Kelly Steele <kelly.steele@intel.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Michael Kinney <michael.d.kinney@intel.com> Reviewed-by: Kelly Steele <kelly.steele@intel.com> Reviewed-by: Jiewen Yao <jiewen.yao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19730 6f19259b-4bc3-4df7-8a09-765794883524
2016-01-21QuarkPlatformPkg/Quark.dsc: Update for rename of UI librariesMichael Kinney1-4/+4
Rename the Ui libraries,so need to update the QuarkPlatformPkg.dsc file. Cc: Kelly Steele <kelly.steele@intel.com> Cc: Dandan Bi <dandan.bi@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Michael Kinney <michael.d.kinney@intel.com> Reviewed-by: Kelly Steele <kelly.steele@intel.com> Reviewed-by: Dandan Bi <dandan.bi@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19720 6f19259b-4bc3-4df7-8a09-765794883524