[PATCH v3 00/28] Add new Ampere Mt. Jade platform


Nhi Pham
 

This patch series adds the support for the Mt. Jade platform based on Ampere's
Altra Family Processor.

Notes:
+ The current patch series was tested with the edk2-stable202108 tag.
+ The IASL compiler version 20201217 is required to build.
+ The edk2-non-osi source is required to build.

You can get code from
https://github.com/AmpereComputing/edk2-platforms/tree/ampere-upstream-wip-v3

Cc: Vu Nguyen <vunguyen@os.amperecomputing.com>
Cc: Nhi Pham <nhi@os.amperecomputing.com>
Cc: Thang Nguyen <thang@os.amperecomputing.com>
Cc: Chuong Tran <chuong@os.amperecomputing.com>
Cc: Phong Vo <phong@os.amperecomputing.com>
Cc: Leif Lindholm <leif@nuviainc.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Ard Biesheuvel <ardb+tianocore@kernel.org>
Cc: Nate DeSimone <nathaniel.l.desimone@intel.com>

Signed-off-by: Nhi Pham <nhi@os.amperecomputing.com>

Changes since v2:
+ Addressed all Leif's feedback.

Changes since v1:
+ Addressed all Leif's feedback in the thread
https://edk2.groups.io/g/devel/message/70356.
+ Removed the LinuxBoot image as Leif's feedback in the thread
https://edk2.groups.io/g/devel/message/68717. The image will be
pre-produced by users as the instruction in the README before compiling.
+ Other major code improvements from in-house review:
* Create new AmperePlatformPkg and AmpereSiliconPkg packages for
containing common Platform/Silicon modules.
* Remove SMProLib and PMProLib libraries which are replaced by the
MailboxInterfaceLib and SystemFirmwareInterfaceLib libraries for the
communication interface between UEFI and System Firmware.
* Clean up and fix coding styles to conform to EDK II C Coding
Standards Specification.


Nhi Pham (5):
AmperePlatformPkg: Implement FailSafe library
AmperePlatformPkg: Add FailSafe and WDT support
AmpereAltraPkg, JadePkg: Add ACPI support
JadePkg: Add ASpeed GOP driver
AmpereAltraPkg: Add configuration screen for ACPI

Quan Nguyen (3):
AmpereAltraPkg: Add BootProgress support
JadePkg: Add SMBIOS tables support
AmpereAltraPkg: Add configuration screen for RAS

Vu Nguyen (20):
Ampere: Initial support for Ampere Altra processor and Mt. Jade
platform
AmpereAltraPkg: Add MmCommunication modules
AmpereAltraPkg: Add DwI2cLib library
AmpereAltraPkg: Add DwGpioLib library
JadePkg: Implement RealTimeClockLib for PCF85063
AmpereAltraPkg: Support UEFI non-volatile variable
AmpereSiliconPkg: Add PlatformManagerUiLib library instance
AmpereAltraPkg: Add Ac01PcieLib library instance
JadePkg: Add BoardPcieLib library instance
Ampere: PCIe: Add PciHostBridgeLib library instance
Ampere: PCIe: Add PciSegmentLib library instance
JadePkg: Enable PCIe-related libraries and device drivers
Ampere: PCIe: Add PciPlatformDxe driver
AmpereAltraPkg: Add Random Number Generator Support
AmpereAltraPkg: Add DebugInfoPei module
AmpereAltraPkg: Add platform info screen
AmpereAltraPkg: Add configuration screen for memory
AmpereAltraPkg: Add configuration screen for CPU
AmpereAltraPkg: Add configuration screen for Watchdog timer
AmpereAltraPkg: Add configuration screen for Pcie Devices

.../AmperePlatformPkg/AmperePlatformPkg.dec | 31 +
.../Ampere/AmpereAltraPkg/AmpereAltraPkg.dec | 72 +
.../AmpereSiliconPkg/AmpereSiliconPkg.dec | 85 +
.../AmpereAltraPkg/AmpereAltraPkg.dsc.inc | 748 +++
Platform/Ampere/JadePkg/Jade.dsc | 205 +
Platform/Ampere/JadePkg/Jade.fdf | 365 ++
.../Drivers/FailSafeDxe/FailSafeDxe.inf | 54 +
.../Library/FailSafeLib/FailSafeLib.inf | 41 +
.../Ampere/JadePkg/AcpiTables/AcpiTables.inf | 20 +
.../AcpiPlatformDxe/AcpiPlatformDxe.inf | 78 +
.../Drivers/PciPlatformDxe/PciPlatformDxe.inf | 37 +
.../SmbiosMemInfoDxe/SmbiosMemInfoDxe.inf | 45 +
.../SmbiosPlatformDxe/SmbiosPlatformDxe.inf | 52 +
.../Library/BoardPcieLib/BoardPcieLib.inf | 59 +
.../JadePkg/Library/OemMiscLib/OemMiscLib.inf | 36 +
.../PCF85063RealTimeClockLib.inf | 44 +
.../AcpiCommonTables/AcpiCommonTables.inf | 44 +
.../Drivers/ATFHobPei/ATFHobPeim.inf | 41 +
.../Drivers/AcpiConfigDxe/AcpiConfigDxe.inf | 58 +
.../BootProgressDxe/BootProgressDxe.inf | 51 +
.../BootProgressPeim/BootProgressPeim.inf | 49 +
.../Drivers/CpuConfigDxe/CpuConfigDxe.inf | 58 +
.../Drivers/DebugInfoPei/DebugInfoPei.inf | 40 +
.../Drivers/FlashFvbDxe/FlashFvbDxe.inf | 54 +
.../Drivers/FlashPei/FlashPei.inf | 52 +
.../Drivers/MemInfoDxe/MemInfoDxe.inf | 59 +
.../Drivers/MemoryInitPeim/MemoryInitPeim.inf | 64 +
.../MmCommunicationDxe/MmCommunication.inf | 57 +
.../MmCommunicationPei/MmCommunicationPei.inf | 34 +
.../PlatformInfoDxe/PlatformInfoDxe.inf | 52 +
.../PlatformPcieDeviceConfigDxe.inf | 59 +
.../Drivers/RasConfigDxe/RasConfigDxe.inf | 56 +
.../AmpereAltraPkg/Drivers/RngDxe/RngDxe.inf | 43 +
.../WatchdogConfigDxe/WatchdogConfigDxe.inf | 50 +
.../Library/Ac01PcieLib/Ac01PcieLib.inf | 67 +
.../Library/AmpereCpuLib/AmpereCpuLib.inf | 45 +
.../AmpereCpuLib/RuntimeAmpereCpuLib.inf | 50 +
.../Library/ArmPlatformLib/ArmPlatformLib.inf | 57 +
.../Library/DwGpioLib/DwGpioLib.inf | 33 +
.../Library/DwI2cLib/DwI2cLib.inf | 38 +
.../Library/FlashLib/FlashLib.inf | 36 +
.../MailboxInterfaceLib.inf | 37 +
.../MemoryInitPeiLib/MemoryInitPeiLib.inf | 63 +
.../MmCommunicationLib/MmCommunicationLib.inf | 35 +
.../Library/NVParamLib/NVParamLib.inf | 32 +
.../PciHostBridgeLib/PciHostBridgeLib.inf | 48 +
.../PciSegmentLibPci/PciSegmentLibPci.inf | 28 +
.../Library/PlatformPeiLib/PlatformPeiLib.inf | 42 +
.../AmpereAltraPkg/Library/RngLib/RngLib.inf | 29 +
.../SystemFirmwareInterfaceLib.inf | 30 +
.../Library/TrngLib/TrngLib.inf | 29 +
.../PlatformUiLib/PlatformManagerUiLib.inf | 47 +
.../Drivers/FailSafeDxe/FailSafe.h | 20 +
.../Drivers/FailSafeDxe/Watchdog.h | 29 +
.../Include/Library/FailSafeLib.h | 62 +
.../Drivers/AcpiPlatformDxe/AcpiApei.h | 126 +
.../Drivers/AcpiPlatformDxe/AcpiNfit.h | 49 +
.../Drivers/AcpiPlatformDxe/AcpiPlatform.h | 75 +
.../JadePkg/Library/BoardPcieLib/BoardPcie.h | 45 +
.../Library/BoardPcieLib/BoardPcieScreen.h | 114 +
.../Library/BoardPcieLib/BoardPcieVfr.h | 99 +
.../PCF85063RealTimeClockLib/PCF85063.h | 91 +
.../Drivers/AcpiConfigDxe/AcpiConfigDxe.h | 62 +
.../Drivers/CpuConfigDxe/CpuConfigDxe.h | 52 +
.../CpuConfigDxe/CpuConfigNVDataStruc.h | 19 +
.../Drivers/MemInfoDxe/MemInfoScreen.h | 170 +
.../MemInfoDxe/MemInfoScreenNVDataStruct.h | 47 +
.../MmCommunicationDxe/MmCommunicate.h | 22 +
.../Drivers/PlatformInfoDxe/PlatformInfoHii.h | 22 +
.../PlatformPcieDeviceConfigDxe.h | 78 +
.../PlatformPcieDeviceConfigVfr.h | 56 +
.../PlatformPcieHelper.h | 58 +
.../Drivers/RasConfigDxe/RasConfigDxe.h | 61 +
.../RasConfigDxe/RasConfigNVDataStruct.h | 46 +
.../WatchdogConfigDxe/WatchdogConfigDxe.h | 82 +
.../WatchdogConfigNVDataStruct.h | 27 +
.../AmpereAltraPkg/Include/Ac01PcieCommon.h | 128 +
.../Include/AcpiConfigNVDataStruct.h | 28 +
.../AmpereAltraPkg/Include/AcpiHeader.h | 37 +
.../Include/Guid/AcpiConfigFormSet.h | 19 +
.../Include/Guid/CpuConfigHii.h | 19 +
.../Include/Guid/PlatformInfoHobGuid.h | 17 +
.../Guid/PlatformPcieDeviceConfigHii.h | 19 +
.../Include/Guid/WatchdogConfigHii.h | 19 +
.../Include/Library/Ac01PcieLib.h | 163 +
.../Include/Library/AmpereCpuLib.h | 276 +
.../Include/Library/BoardPcieLib.h | 92 +
.../AmpereAltraPkg/Include/Library/FlashLib.h | 42 +
.../AmpereAltraPkg/Include/Library/GpioLib.h | 76 +
.../AmpereAltraPkg/Include/Library/I2cLib.h | 100 +
.../Include/Library/MailboxInterfaceLib.h | 172 +
.../Include/Library/MmCommunicationLib.h | 19 +
.../Include/Library/NVParamLib.h | 133 +
.../Library/SystemFirmwareInterfaceLib.h | 282 +
.../AmpereAltraPkg/Include/Library/TrngLib.h | 31 +
Silicon/Ampere/AmpereAltraPkg/Include/MmLib.h | 79 +
.../AmpereAltraPkg/Include/NVParamDef.h | 525 ++
.../AmpereAltraPkg/Include/Platform/Ac01.h | 332 +
.../AmpereAltraPkg/Include/PlatformInfoHob.h | 182 +
.../Library/Ac01PcieLib/PcieCore.h | 649 ++
.../Library/Ac01PcieLib/PcieCoreCapCfg.h | 63 +
.../Library/Ac01PcieLib/PciePatchAcpi.h | 30 +
.../ArmPlatformLib/PlatformMemoryMap.h | 135 +
.../Include/Guid/PlatformManagerHii.h | 31 +
.../Library/PlatformUiLib/PlatformManager.h | 51 +
.../PlatformUiLib/PlatformManagerVfr.h | 28 +
.../Library/BoardPcieLib/BoardPcieVfr.vfr | 217 +
.../Drivers/AcpiConfigDxe/AcpiConfigVfr.vfr | 69 +
.../Drivers/CpuConfigDxe/CpuConfigVfr.vfr | 43 +
.../Drivers/MemInfoDxe/MemInfoScreenVfr.vfr | 62 +
.../PlatformInfoDxe/PlatformInfoVfr.vfr | 112 +
.../PlatformPcieDeviceConfigVfr.vfr | 50 +
.../Drivers/RasConfigDxe/RasConfigVfr.vfr | 95 +
.../WatchdogConfigDxe/WatchdogConfigVfr.vfr | 58 +
.../Drivers/FailSafeDxe/FailSafeDxe.c | 184 +
.../Drivers/FailSafeDxe/Watchdog.c | 357 ++
.../Library/FailSafeLib/FailSafeLib.c | 313 +
.../Drivers/AcpiPlatformDxe/AcpiApei.c | 468 ++
.../Drivers/AcpiPlatformDxe/AcpiDsdt.c | 601 ++
.../Drivers/AcpiPlatformDxe/AcpiMadt.c | 348 +
.../Drivers/AcpiPlatformDxe/AcpiNfit.c | 596 ++
.../Drivers/AcpiPlatformDxe/AcpiPcct.c | 413 ++
.../Drivers/AcpiPlatformDxe/AcpiPlatformDxe.c | 178 +
.../Drivers/AcpiPlatformDxe/AcpiPptt.c | 333 +
.../Drivers/AcpiPlatformDxe/AcpiSlit.c | 187 +
.../Drivers/AcpiPlatformDxe/AcpiSrat.c | 271 +
.../Drivers/PciPlatformDxe/PciPlatformDxe.c | 212 +
.../SmbiosMemInfoDxe/SmbiosMemInfoDxe.c | 705 +++
.../SmbiosPlatformDxe/SmbiosPlatformDxe.c | 1049 +++
.../JadePkg/Library/BoardPcieLib/BoardPcie.c | 436 ++
.../Library/BoardPcieLib/BoardPcieCommon.c | 329 +
.../Library/BoardPcieLib/BoardPcieScreen.c | 1244 ++++
.../JadePkg/Library/OemMiscLib/OemMiscLib.c | 323 +
.../PCF85063RealTimeClockLib/PCF85063.c | 317 +
.../PCF85063RealTimeClockLib.c | 257 +
.../Drivers/ATFHobPei/ATFHobPeim.c | 52 +
.../Drivers/AcpiConfigDxe/AcpiConfigDxe.c | 729 +++
.../BootProgressDxe/BootProgressDxe.c | 211 +
.../BootProgressPeim/BootProgressPeim.c | 210 +
.../Drivers/CpuConfigDxe/CpuConfigDxe.c | 530 ++
.../Drivers/DebugInfoPei/DebugInfoPei.c | 210 +
.../Drivers/FlashFvbDxe/FlashFvbDxe.c | 525 ++
.../Drivers/FlashPei/FlashPei.c | 273 +
.../Drivers/MemInfoDxe/MemInfoNvramLib.c | 394 ++
.../Drivers/MemInfoDxe/MemInfoScreen.c | 1325 ++++
.../Drivers/MemoryInitPeim/MemoryInitPeim.c | 151 +
.../MmCommunicationDxe/MmCommunication.c | 454 ++
.../MmCommunicationPei/MmCommunicationPei.c | 37 +
.../Drivers/PlatformInfoDxe/PlatformInfoDxe.c | 391 ++
.../PlatformPcieDeviceConfigDxe.c | 1045 +++
.../PlatformPcieHelper.c | 191 +
.../Drivers/RasConfigDxe/RasConfigDxe.c | 822 +++
.../AmpereAltraPkg/Drivers/RngDxe/RngDxe.c | 164 +
.../WatchdogConfigDxe/WatchdogConfigDxe.c | 460 ++
.../Library/Ac01PcieLib/PcieCore.c | 1659 +++++
.../Library/Ac01PcieLib/PcieCoreLib.c | 556 ++
.../Library/Ac01PcieLib/PciePatchAcpi.c | 646 ++
.../Library/AmpereCpuLib/AmpereCpuLib.c | 43 +
.../Library/AmpereCpuLib/AmpereCpuLibCommon.c | 637 ++
.../AmpereCpuLib/RuntimeAmpereCpuLib.c | 138 +
.../Library/ArmPlatformLib/ArmPlatformLib.c | 169 +
.../ArmPlatformLib/ArmPlatformLibMemory.c | 257 +
.../Library/DwGpioLib/DwGpioLib.c | 314 +
.../Library/DwI2cLib/DwI2cLib.c | 883 +++
.../Library/FlashLib/FlashLib.c | 358 ++
.../MailboxInterfaceLib/MailboxInterfaceLib.c | 281 +
.../MemoryInitPeiLib/MemoryInitPeiLib.c | 93 +
.../MmCommunicationLib/MmCommunicationLib.c | 184 +
.../Library/NVParamLib/NVParamLib.c | 202 +
.../PciHostBridgeLib/PciHostBridgeLib.c | 378 ++
.../Library/PciSegmentLibPci/PciSegmentLib.c | 1189 ++++
.../Library/PlatformPeiLib/PlatformPeiLib.c | 40 +
.../AmpereAltraPkg/Library/RngLib/RngLib.c | 141 +
.../SystemFirmwareInterfaceLib.c | 328 +
.../AmpereAltraPkg/Library/TrngLib/TrngLib.c | 63 +
.../Library/PlatformUiLib/PlatformManager.c | 354 ++
.../Ampere/AmperePlatformPkg/FvRules.fdf.inc | 176 +
Platform/Ampere/JadePkg/AcpiTables/CPU-S0.asi | 5639 +++++++++++++++++
Platform/Ampere/JadePkg/AcpiTables/CPU-S1.asi | 5639 +++++++++++++++++
Platform/Ampere/JadePkg/AcpiTables/CPU.asi | 127 +
Platform/Ampere/JadePkg/AcpiTables/Dsdt.asl | 531 ++
.../Ampere/JadePkg/AcpiTables/PCI-PDRC.asi | 217 +
.../JadePkg/AcpiTables/PCI-S0.Rca01.asi | 681 ++
Platform/Ampere/JadePkg/AcpiTables/PCI-S0.asi | 2078 ++++++
Platform/Ampere/JadePkg/AcpiTables/PCI-S1.asi | 2087 ++++++
Platform/Ampere/JadePkg/AcpiTables/PMU-S0.asi | 1303 ++++
Platform/Ampere/JadePkg/AcpiTables/PMU-S1.asi | 1303 ++++
Platform/Ampere/JadePkg/AcpiTables/PMU.asi | 10 +
Platform/Ampere/JadePkg/JadeBoardSetting.cfg | 224 +
.../Library/BoardPcieLib/BoardPcieScreen.uni | 102 +
.../AmpereAltraPkg/AcpiCommonTables/Bert.aslc | 33 +
.../AmpereAltraPkg/AcpiCommonTables/Dbg2.aslc | 87 +
.../AmpereAltraPkg/AcpiCommonTables/Einj.asl | 165 +
.../AmpereAltraPkg/AcpiCommonTables/Fadt.aslc | 87 +
.../AmpereAltraPkg/AcpiCommonTables/Gtdt.aslc | 180 +
.../AmpereAltraPkg/AcpiCommonTables/Hest.asl | 330 +
.../AmpereAltraPkg/AcpiCommonTables/Sdei.asl | 17 +
.../AmpereAltraPkg/AcpiCommonTables/Spcr.aslc | 81 +
.../AmpereAltraPkg/AcpiCommonTables/Ssdt.asl | 15 +
.../AcpiConfigDxe/AcpiConfigStrings.uni | 27 +
.../BootProgressDxe/BootProgressDxe.uni | 16 +
.../BootProgressPeim/BootProgressPeim.uni | 18 +
.../Drivers/CpuConfigDxe/CpuConfigStrings.uni | 17 +
.../Drivers/MemInfoDxe/MemInfoDxe.uni | 9 +
.../Drivers/MemInfoDxe/MemInfoDxeExtra.uni | 9 +
.../MemInfoDxe/MemInfoScreenStrings.uni | 64 +
.../PlatformInfoDxe/PlatformInfoStrings.uni | 56 +
.../PlatformPcieDeviceConfigDxe.uni | 24 +
.../Drivers/RasConfigDxe/RasConfigStrings.uni | 38 +
.../AmpereAltraPkg/Drivers/RngDxe/RngDxe.uni | 10 +
.../Drivers/RngDxe/RngDxeExtra.uni | 9 +
.../WatchdogConfigStrings.uni | 26 +
.../ArmPlatformLib/ArmPlatformHelper.S | 45 +
.../AmpereAltraPkg/Library/RngLib/RngLib.uni | 13 +
.../PlatformUiLib/PlatformManagerStrings.uni | 21 +
.../PlatformUiLib/PlatformManagerUiLib.uni | 13 +
.../PlatformUiLib/PlatformManagerVfr.Vfr | 29 +
217 files changed, 57398 insertions(+)
create mode 100644 Platform/Ampere/AmperePlatformPkg/AmperePlatformPkg.dec
create mode 100644 Silicon/Ampere/AmpereAltraPkg/AmpereAltraPkg.dec
create mode 100644 Silicon/Ampere/AmpereSiliconPkg/AmpereSiliconPkg.dec
create mode 100644 Silicon/Ampere/AmpereAltraPkg/AmpereAltraPkg.dsc.inc
create mode 100644 Platform/Ampere/JadePkg/Jade.dsc
create mode 100644 Platform/Ampere/JadePkg/Jade.fdf
create mode 100644 Platform/Ampere/AmperePlatformPkg/Drivers/FailSafeDxe/FailSafeDxe.inf
create mode 100644 Platform/Ampere/AmperePlatformPkg/Library/FailSafeLib/FailSafeLib.inf
create mode 100644 Platform/Ampere/JadePkg/AcpiTables/AcpiTables.inf
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiPlatformDxe.inf
create mode 100644 Platform/Ampere/JadePkg/Drivers/PciPlatformDxe/PciPlatformDxe.inf
create mode 100644 Platform/Ampere/JadePkg/Drivers/SmbiosMemInfoDxe/SmbiosMemInfoDxe.inf
create mode 100644 Platform/Ampere/JadePkg/Drivers/SmbiosPlatformDxe/SmbiosPlatformDxe.inf
create mode 100644 Platform/Ampere/JadePkg/Library/BoardPcieLib/BoardPcieLib.inf
create mode 100644 Platform/Ampere/JadePkg/Library/OemMiscLib/OemMiscLib.inf
create mode 100644 Platform/Ampere/JadePkg/Library/PCF85063RealTimeClockLib/PCF85063RealTimeClockLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/AcpiCommonTables/AcpiCommonTables.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/ATFHobPei/ATFHobPeim.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/AcpiConfigDxe/AcpiConfigDxe.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/BootProgress/BootProgressDxe/BootProgressDxe.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/BootProgress/BootProgressPeim/BootProgressPeim.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/CpuConfigDxe/CpuConfigDxe.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/DebugInfoPei/DebugInfoPei.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/FlashFvbDxe/FlashFvbDxe.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/FlashPei/FlashPei.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MemInfoDxe/MemInfoDxe.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MemoryInitPeim/MemoryInitPeim.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MmCommunicationDxe/MmCommunication.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MmCommunicationPei/MmCommunicationPei.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformInfoDxe/PlatformInfoDxe.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformPcieDeviceConfigDxe/PlatformPcieDeviceConfigDxe.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/RasConfigDxe/RasConfigDxe.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/RngDxe/RngDxe.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/WatchdogConfigDxe/WatchdogConfigDxe.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/Ac01PcieLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/AmpereCpuLib/AmpereCpuLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/AmpereCpuLib/RuntimeAmpereCpuLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/ArmPlatformLib/ArmPlatformLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/DwGpioLib/DwGpioLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/DwI2cLib/DwI2cLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/FlashLib/FlashLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/MailboxInterfaceLib/MailboxInterfaceLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/MemoryInitPeiLib/MemoryInitPeiLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/MmCommunicationLib/MmCommunicationLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/NVParamLib/NVParamLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/PciHostBridgeLib/PciHostBridgeLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/PciSegmentLibPci/PciSegmentLibPci.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/PlatformPeiLib/PlatformPeiLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/RngLib/RngLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/SystemFirmwareInterfaceLib/SystemFirmwareInterfaceLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/TrngLib/TrngLib.inf
create mode 100644 Silicon/Ampere/AmpereSiliconPkg/Library/PlatformUiLib/PlatformManagerUiLib.inf
create mode 100644 Platform/Ampere/AmperePlatformPkg/Drivers/FailSafeDxe/FailSafe.h
create mode 100644 Platform/Ampere/AmperePlatformPkg/Drivers/FailSafeDxe/Watchdog.h
create mode 100644 Platform/Ampere/AmperePlatformPkg/Include/Library/FailSafeLib.h
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiApei.h
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiNfit.h
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiPlatform.h
create mode 100644 Platform/Ampere/JadePkg/Library/BoardPcieLib/BoardPcie.h
create mode 100644 Platform/Ampere/JadePkg/Library/BoardPcieLib/BoardPcieScreen.h
create mode 100644 Platform/Ampere/JadePkg/Library/BoardPcieLib/BoardPcieVfr.h
create mode 100644 Platform/Ampere/JadePkg/Library/PCF85063RealTimeClockLib/PCF85063.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/AcpiConfigDxe/AcpiConfigDxe.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/CpuConfigDxe/CpuConfigDxe.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/CpuConfigDxe/CpuConfigNVDataStruc.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MemInfoDxe/MemInfoScreen.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MemInfoDxe/MemInfoScreenNVDataStruct.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MmCommunicationDxe/MmCommunicate.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformInfoDxe/PlatformInfoHii.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformPcieDeviceConfigDxe/PlatformPcieDeviceConfigDxe.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformPcieDeviceConfigDxe/PlatformPcieDeviceConfigVfr.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformPcieDeviceConfigDxe/PlatformPcieHelper.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/RasConfigDxe/RasConfigDxe.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/RasConfigDxe/RasConfigNVDataStruct.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/WatchdogConfigDxe/WatchdogConfigDxe.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/WatchdogConfigDxe/WatchdogConfigNVDataStruct.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Ac01PcieCommon.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/AcpiConfigNVDataStruct.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/AcpiHeader.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Guid/AcpiConfigFormSet.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Guid/CpuConfigHii.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Guid/PlatformInfoHobGuid.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Guid/PlatformPcieDeviceConfigHii.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Guid/WatchdogConfigHii.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Library/Ac01PcieLib.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Library/AmpereCpuLib.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Library/BoardPcieLib.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Library/FlashLib.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Library/GpioLib.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Library/I2cLib.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Library/MailboxInterfaceLib.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Library/MmCommunicationLib.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Library/NVParamLib.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Library/SystemFirmwareInterfaceLib.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Library/TrngLib.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/MmLib.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/NVParamDef.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Platform/Ac01.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/PlatformInfoHob.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/PcieCore.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/PcieCoreCapCfg.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/PciePatchAcpi.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/ArmPlatformLib/PlatformMemoryMap.h
create mode 100644 Silicon/Ampere/AmpereSiliconPkg/Include/Guid/PlatformManagerHii.h
create mode 100644 Silicon/Ampere/AmpereSiliconPkg/Library/PlatformUiLib/PlatformManager.h
create mode 100644 Silicon/Ampere/AmpereSiliconPkg/Library/PlatformUiLib/PlatformManagerVfr.h
create mode 100644 Platform/Ampere/JadePkg/Library/BoardPcieLib/BoardPcieVfr.vfr
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/AcpiConfigDxe/AcpiConfigVfr.vfr
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/CpuConfigDxe/CpuConfigVfr.vfr
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MemInfoDxe/MemInfoScreenVfr.vfr
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformInfoDxe/PlatformInfoVfr.vfr
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformPcieDeviceConfigDxe/PlatformPcieDeviceConfigVfr.vfr
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/RasConfigDxe/RasConfigVfr.vfr
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/WatchdogConfigDxe/WatchdogConfigVfr.vfr
create mode 100644 Platform/Ampere/AmperePlatformPkg/Drivers/FailSafeDxe/FailSafeDxe.c
create mode 100644 Platform/Ampere/AmperePlatformPkg/Drivers/FailSafeDxe/Watchdog.c
create mode 100644 Platform/Ampere/AmperePlatformPkg/Library/FailSafeLib/FailSafeLib.c
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiApei.c
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiDsdt.c
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiMadt.c
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiNfit.c
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiPcct.c
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiPlatformDxe.c
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiPptt.c
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiSlit.c
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiSrat.c
create mode 100644 Platform/Ampere/JadePkg/Drivers/PciPlatformDxe/PciPlatformDxe.c
create mode 100644 Platform/Ampere/JadePkg/Drivers/SmbiosMemInfoDxe/SmbiosMemInfoDxe.c
create mode 100644 Platform/Ampere/JadePkg/Drivers/SmbiosPlatformDxe/SmbiosPlatformDxe.c
create mode 100644 Platform/Ampere/JadePkg/Library/BoardPcieLib/BoardPcie.c
create mode 100644 Platform/Ampere/JadePkg/Library/BoardPcieLib/BoardPcieCommon.c
create mode 100644 Platform/Ampere/JadePkg/Library/BoardPcieLib/BoardPcieScreen.c
create mode 100644 Platform/Ampere/JadePkg/Library/OemMiscLib/OemMiscLib.c
create mode 100644 Platform/Ampere/JadePkg/Library/PCF85063RealTimeClockLib/PCF85063.c
create mode 100644 Platform/Ampere/JadePkg/Library/PCF85063RealTimeClockLib/PCF85063RealTimeClockLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/ATFHobPei/ATFHobPeim.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/AcpiConfigDxe/AcpiConfigDxe.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/BootProgress/BootProgressDxe/BootProgressDxe.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/BootProgress/BootProgressPeim/BootProgressPeim.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/CpuConfigDxe/CpuConfigDxe.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/DebugInfoPei/DebugInfoPei.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/FlashFvbDxe/FlashFvbDxe.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/FlashPei/FlashPei.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MemInfoDxe/MemInfoNvramLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MemInfoDxe/MemInfoScreen.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MemoryInitPeim/MemoryInitPeim.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MmCommunicationDxe/MmCommunication.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MmCommunicationPei/MmCommunicationPei.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformInfoDxe/PlatformInfoDxe.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformPcieDeviceConfigDxe/PlatformPcieDeviceConfigDxe.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformPcieDeviceConfigDxe/PlatformPcieHelper.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/RasConfigDxe/RasConfigDxe.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/RngDxe/RngDxe.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/WatchdogConfigDxe/WatchdogConfigDxe.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/PcieCore.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/PcieCoreLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/PciePatchAcpi.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/AmpereCpuLib/AmpereCpuLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/AmpereCpuLib/AmpereCpuLibCommon.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/AmpereCpuLib/RuntimeAmpereCpuLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/ArmPlatformLib/ArmPlatformLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/ArmPlatformLib/ArmPlatformLibMemory.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/DwGpioLib/DwGpioLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/DwI2cLib/DwI2cLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/FlashLib/FlashLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/MailboxInterfaceLib/MailboxInterfaceLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/MemoryInitPeiLib/MemoryInitPeiLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/MmCommunicationLib/MmCommunicationLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/NVParamLib/NVParamLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/PciHostBridgeLib/PciHostBridgeLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/PciSegmentLibPci/PciSegmentLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/PlatformPeiLib/PlatformPeiLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/RngLib/RngLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/SystemFirmwareInterfaceLib/SystemFirmwareInterfaceLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/TrngLib/TrngLib.c
create mode 100644 Silicon/Ampere/AmpereSiliconPkg/Library/PlatformUiLib/PlatformManager.c
create mode 100644 Platform/Ampere/AmperePlatformPkg/FvRules.fdf.inc
create mode 100644 Platform/Ampere/JadePkg/AcpiTables/CPU-S0.asi
create mode 100644 Platform/Ampere/JadePkg/AcpiTables/CPU-S1.asi
create mode 100644 Platform/Ampere/JadePkg/AcpiTables/CPU.asi
create mode 100644 Platform/Ampere/JadePkg/AcpiTables/Dsdt.asl
create mode 100644 Platform/Ampere/JadePkg/AcpiTables/PCI-PDRC.asi
create mode 100644 Platform/Ampere/JadePkg/AcpiTables/PCI-S0.Rca01.asi
create mode 100644 Platform/Ampere/JadePkg/AcpiTables/PCI-S0.asi
create mode 100644 Platform/Ampere/JadePkg/AcpiTables/PCI-S1.asi
create mode 100644 Platform/Ampere/JadePkg/AcpiTables/PMU-S0.asi
create mode 100644 Platform/Ampere/JadePkg/AcpiTables/PMU-S1.asi
create mode 100644 Platform/Ampere/JadePkg/AcpiTables/PMU.asi
create mode 100644 Platform/Ampere/JadePkg/JadeBoardSetting.cfg
create mode 100644 Platform/Ampere/JadePkg/Library/BoardPcieLib/BoardPcieScreen.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/AcpiCommonTables/Bert.aslc
create mode 100644 Silicon/Ampere/AmpereAltraPkg/AcpiCommonTables/Dbg2.aslc
create mode 100644 Silicon/Ampere/AmpereAltraPkg/AcpiCommonTables/Einj.asl
create mode 100644 Silicon/Ampere/AmpereAltraPkg/AcpiCommonTables/Fadt.aslc
create mode 100644 Silicon/Ampere/AmpereAltraPkg/AcpiCommonTables/Gtdt.aslc
create mode 100644 Silicon/Ampere/AmpereAltraPkg/AcpiCommonTables/Hest.asl
create mode 100644 Silicon/Ampere/AmpereAltraPkg/AcpiCommonTables/Sdei.asl
create mode 100644 Silicon/Ampere/AmpereAltraPkg/AcpiCommonTables/Spcr.aslc
create mode 100644 Silicon/Ampere/AmpereAltraPkg/AcpiCommonTables/Ssdt.asl
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/AcpiConfigDxe/AcpiConfigStrings.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/BootProgress/BootProgressDxe/BootProgressDxe.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/BootProgress/BootProgressPeim/BootProgressPeim.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/CpuConfigDxe/CpuConfigStrings.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MemInfoDxe/MemInfoDxe.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MemInfoDxe/MemInfoDxeExtra.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MemInfoDxe/MemInfoScreenStrings.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformInfoDxe/PlatformInfoStrings.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformPcieDeviceConfigDxe/PlatformPcieDeviceConfigDxe.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/RasConfigDxe/RasConfigStrings.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/RngDxe/RngDxe.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/RngDxe/RngDxeExtra.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/WatchdogConfigDxe/WatchdogConfigStrings.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/ArmPlatformLib/ArmPlatformHelper.S
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/RngLib/RngLib.uni
create mode 100644 Silicon/Ampere/AmpereSiliconPkg/Library/PlatformUiLib/PlatformManagerStrings.uni
create mode 100644 Silicon/Ampere/AmpereSiliconPkg/Library/PlatformUiLib/PlatformManagerUiLib.uni
create mode 100644 Silicon/Ampere/AmpereSiliconPkg/Library/PlatformUiLib/PlatformManagerVfr.Vfr

--
2.17.1


Leif Lindholm
 

Hi Nhi,

On Wed, Sep 15, 2021 at 22:54:59 +0700, Nhi Pham wrote:
This patch series adds the support for the Mt. Jade platform based on Ampere's
Altra Family Processor.

Notes:
+ The current patch series was tested with the edk2-stable202108 tag.
+ the added common functions in EmbeddedPkg AcpiLib.

+ The IASL compiler version 20201217 is required to build.
+ The edk2-non-osi source is required to build.

You can get code from
https://github.com/AmpereComputing/edk2-platforms/tree/ampere-upstream-wip-v3

Cc: Vu Nguyen <vunguyen@os.amperecomputing.com>
Cc: Nhi Pham <nhi@os.amperecomputing.com>
Cc: Thang Nguyen <thang@os.amperecomputing.com>
Cc: Chuong Tran <chuong@os.amperecomputing.com>
Cc: Phong Vo <phong@os.amperecomputing.com>
Cc: Leif Lindholm <leif@nuviainc.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Ard Biesheuvel <ardb+tianocore@kernel.org>
Cc: Nate DeSimone <nathaniel.l.desimone@intel.com>

Signed-off-by: Nhi Pham <nhi@os.amperecomputing.com>

Changes since v2:
+ Addressed all Leif's feedback.
This feedback is a bit oversimplified.
There is an entirely new Ac01PcieLib component - which I could quickly
tell because the NOOPT target fails to build for me with:

---
Building ... /work/git/edk2/MdePkg/Library/UefiScsiLib/UefiScsiLib.inf [AARCH64]
/work/git/edk2-platforms/Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/PcieCore.c: In function ‘Ac01PcieCfgIn32’:
/work/git/edk2-platforms/Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/PcieCore.c:261:42: error: variable ‘Sub’ set but not used [-Werror=unused-but-set-variable]
261 | UINT8 MfHt, Ht, Primary = 0, Sec = 0, Sub = 0;
| ^~~
/work/git/edk2-platforms/Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/PcieCore.c:261:33: error: variable ‘Sec’ set but not used [-Werror=unused-but-set-variable]
261 | UINT8 MfHt, Ht, Primary = 0, Sec = 0, Sub = 0;
| ^~~
/work/git/edk2-platforms/Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/PcieCore.c: In function ‘Ac01PcieCfgIn16’:
/work/git/edk2-platforms/Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/PcieCore.c:324:38: error: variable ‘Sub’ set but not used [-Werror=unused-but-set-variable]
324 | UINT8 MfHt, Primary = 0, Sec = 0, Sub = 0;
| ^~~
/work/git/edk2-platforms/Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/PcieCore.c:324:29: error: variable ‘Sec’ set but not used [-Werror=unused-but-set-variable]
324 | UINT8 MfHt, Primary = 0, Sec = 0, Sub = 0;
| ^~~
make: Nothing to be done for 'tbuild'.
/work/git/edk2-platforms/Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/PcieCore.c: In function ‘Ac01PcieCoreQoSLinkCheckRecovery’:
/work/git/edk2-platforms/Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/PcieCore.c:1514:16: error: variable ‘CsrAddr’ set but not used [-Werror=unused-but-set-variable]
1514 | VOID *CsrAddr;
| ^~~~~~~
---

Looking at this module in general, I think I will have a fair amount
of feedback on it. But I'll get started with patches 1-11, which at v3
should be much more straightforward.

Best Regards,

Leif


Changes since v1:
+ Addressed all Leif's feedback in the thread
https://edk2.groups.io/g/devel/message/70356.
+ Removed the LinuxBoot image as Leif's feedback in the thread
https://edk2.groups.io/g/devel/message/68717. The image will be
pre-produced by users as the instruction in the README before compiling.
+ Other major code improvements from in-house review:
* Create new AmperePlatformPkg and AmpereSiliconPkg packages for
containing common Platform/Silicon modules.
* Remove SMProLib and PMProLib libraries which are replaced by the
MailboxInterfaceLib and SystemFirmwareInterfaceLib libraries for the
communication interface between UEFI and System Firmware.
* Clean up and fix coding styles to conform to EDK II C Coding
Standards Specification.


Nhi Pham (5):
AmperePlatformPkg: Implement FailSafe library
AmperePlatformPkg: Add FailSafe and WDT support
AmpereAltraPkg, JadePkg: Add ACPI support
JadePkg: Add ASpeed GOP driver
AmpereAltraPkg: Add configuration screen for ACPI

Quan Nguyen (3):
AmpereAltraPkg: Add BootProgress support
JadePkg: Add SMBIOS tables support
AmpereAltraPkg: Add configuration screen for RAS

Vu Nguyen (20):
Ampere: Initial support for Ampere Altra processor and Mt. Jade
platform
AmpereAltraPkg: Add MmCommunication modules
AmpereAltraPkg: Add DwI2cLib library
AmpereAltraPkg: Add DwGpioLib library
JadePkg: Implement RealTimeClockLib for PCF85063
AmpereAltraPkg: Support UEFI non-volatile variable
AmpereSiliconPkg: Add PlatformManagerUiLib library instance
AmpereAltraPkg: Add Ac01PcieLib library instance
JadePkg: Add BoardPcieLib library instance
Ampere: PCIe: Add PciHostBridgeLib library instance
Ampere: PCIe: Add PciSegmentLib library instance
JadePkg: Enable PCIe-related libraries and device drivers
Ampere: PCIe: Add PciPlatformDxe driver
AmpereAltraPkg: Add Random Number Generator Support
AmpereAltraPkg: Add DebugInfoPei module
AmpereAltraPkg: Add platform info screen
AmpereAltraPkg: Add configuration screen for memory
AmpereAltraPkg: Add configuration screen for CPU
AmpereAltraPkg: Add configuration screen for Watchdog timer
AmpereAltraPkg: Add configuration screen for Pcie Devices

.../AmperePlatformPkg/AmperePlatformPkg.dec | 31 +
.../Ampere/AmpereAltraPkg/AmpereAltraPkg.dec | 72 +
.../AmpereSiliconPkg/AmpereSiliconPkg.dec | 85 +
.../AmpereAltraPkg/AmpereAltraPkg.dsc.inc | 748 +++
Platform/Ampere/JadePkg/Jade.dsc | 205 +
Platform/Ampere/JadePkg/Jade.fdf | 365 ++
.../Drivers/FailSafeDxe/FailSafeDxe.inf | 54 +
.../Library/FailSafeLib/FailSafeLib.inf | 41 +
.../Ampere/JadePkg/AcpiTables/AcpiTables.inf | 20 +
.../AcpiPlatformDxe/AcpiPlatformDxe.inf | 78 +
.../Drivers/PciPlatformDxe/PciPlatformDxe.inf | 37 +
.../SmbiosMemInfoDxe/SmbiosMemInfoDxe.inf | 45 +
.../SmbiosPlatformDxe/SmbiosPlatformDxe.inf | 52 +
.../Library/BoardPcieLib/BoardPcieLib.inf | 59 +
.../JadePkg/Library/OemMiscLib/OemMiscLib.inf | 36 +
.../PCF85063RealTimeClockLib.inf | 44 +
.../AcpiCommonTables/AcpiCommonTables.inf | 44 +
.../Drivers/ATFHobPei/ATFHobPeim.inf | 41 +
.../Drivers/AcpiConfigDxe/AcpiConfigDxe.inf | 58 +
.../BootProgressDxe/BootProgressDxe.inf | 51 +
.../BootProgressPeim/BootProgressPeim.inf | 49 +
.../Drivers/CpuConfigDxe/CpuConfigDxe.inf | 58 +
.../Drivers/DebugInfoPei/DebugInfoPei.inf | 40 +
.../Drivers/FlashFvbDxe/FlashFvbDxe.inf | 54 +
.../Drivers/FlashPei/FlashPei.inf | 52 +
.../Drivers/MemInfoDxe/MemInfoDxe.inf | 59 +
.../Drivers/MemoryInitPeim/MemoryInitPeim.inf | 64 +
.../MmCommunicationDxe/MmCommunication.inf | 57 +
.../MmCommunicationPei/MmCommunicationPei.inf | 34 +
.../PlatformInfoDxe/PlatformInfoDxe.inf | 52 +
.../PlatformPcieDeviceConfigDxe.inf | 59 +
.../Drivers/RasConfigDxe/RasConfigDxe.inf | 56 +
.../AmpereAltraPkg/Drivers/RngDxe/RngDxe.inf | 43 +
.../WatchdogConfigDxe/WatchdogConfigDxe.inf | 50 +
.../Library/Ac01PcieLib/Ac01PcieLib.inf | 67 +
.../Library/AmpereCpuLib/AmpereCpuLib.inf | 45 +
.../AmpereCpuLib/RuntimeAmpereCpuLib.inf | 50 +
.../Library/ArmPlatformLib/ArmPlatformLib.inf | 57 +
.../Library/DwGpioLib/DwGpioLib.inf | 33 +
.../Library/DwI2cLib/DwI2cLib.inf | 38 +
.../Library/FlashLib/FlashLib.inf | 36 +
.../MailboxInterfaceLib.inf | 37 +
.../MemoryInitPeiLib/MemoryInitPeiLib.inf | 63 +
.../MmCommunicationLib/MmCommunicationLib.inf | 35 +
.../Library/NVParamLib/NVParamLib.inf | 32 +
.../PciHostBridgeLib/PciHostBridgeLib.inf | 48 +
.../PciSegmentLibPci/PciSegmentLibPci.inf | 28 +
.../Library/PlatformPeiLib/PlatformPeiLib.inf | 42 +
.../AmpereAltraPkg/Library/RngLib/RngLib.inf | 29 +
.../SystemFirmwareInterfaceLib.inf | 30 +
.../Library/TrngLib/TrngLib.inf | 29 +
.../PlatformUiLib/PlatformManagerUiLib.inf | 47 +
.../Drivers/FailSafeDxe/FailSafe.h | 20 +
.../Drivers/FailSafeDxe/Watchdog.h | 29 +
.../Include/Library/FailSafeLib.h | 62 +
.../Drivers/AcpiPlatformDxe/AcpiApei.h | 126 +
.../Drivers/AcpiPlatformDxe/AcpiNfit.h | 49 +
.../Drivers/AcpiPlatformDxe/AcpiPlatform.h | 75 +
.../JadePkg/Library/BoardPcieLib/BoardPcie.h | 45 +
.../Library/BoardPcieLib/BoardPcieScreen.h | 114 +
.../Library/BoardPcieLib/BoardPcieVfr.h | 99 +
.../PCF85063RealTimeClockLib/PCF85063.h | 91 +
.../Drivers/AcpiConfigDxe/AcpiConfigDxe.h | 62 +
.../Drivers/CpuConfigDxe/CpuConfigDxe.h | 52 +
.../CpuConfigDxe/CpuConfigNVDataStruc.h | 19 +
.../Drivers/MemInfoDxe/MemInfoScreen.h | 170 +
.../MemInfoDxe/MemInfoScreenNVDataStruct.h | 47 +
.../MmCommunicationDxe/MmCommunicate.h | 22 +
.../Drivers/PlatformInfoDxe/PlatformInfoHii.h | 22 +
.../PlatformPcieDeviceConfigDxe.h | 78 +
.../PlatformPcieDeviceConfigVfr.h | 56 +
.../PlatformPcieHelper.h | 58 +
.../Drivers/RasConfigDxe/RasConfigDxe.h | 61 +
.../RasConfigDxe/RasConfigNVDataStruct.h | 46 +
.../WatchdogConfigDxe/WatchdogConfigDxe.h | 82 +
.../WatchdogConfigNVDataStruct.h | 27 +
.../AmpereAltraPkg/Include/Ac01PcieCommon.h | 128 +
.../Include/AcpiConfigNVDataStruct.h | 28 +
.../AmpereAltraPkg/Include/AcpiHeader.h | 37 +
.../Include/Guid/AcpiConfigFormSet.h | 19 +
.../Include/Guid/CpuConfigHii.h | 19 +
.../Include/Guid/PlatformInfoHobGuid.h | 17 +
.../Guid/PlatformPcieDeviceConfigHii.h | 19 +
.../Include/Guid/WatchdogConfigHii.h | 19 +
.../Include/Library/Ac01PcieLib.h | 163 +
.../Include/Library/AmpereCpuLib.h | 276 +
.../Include/Library/BoardPcieLib.h | 92 +
.../AmpereAltraPkg/Include/Library/FlashLib.h | 42 +
.../AmpereAltraPkg/Include/Library/GpioLib.h | 76 +
.../AmpereAltraPkg/Include/Library/I2cLib.h | 100 +
.../Include/Library/MailboxInterfaceLib.h | 172 +
.../Include/Library/MmCommunicationLib.h | 19 +
.../Include/Library/NVParamLib.h | 133 +
.../Library/SystemFirmwareInterfaceLib.h | 282 +
.../AmpereAltraPkg/Include/Library/TrngLib.h | 31 +
Silicon/Ampere/AmpereAltraPkg/Include/MmLib.h | 79 +
.../AmpereAltraPkg/Include/NVParamDef.h | 525 ++
.../AmpereAltraPkg/Include/Platform/Ac01.h | 332 +
.../AmpereAltraPkg/Include/PlatformInfoHob.h | 182 +
.../Library/Ac01PcieLib/PcieCore.h | 649 ++
.../Library/Ac01PcieLib/PcieCoreCapCfg.h | 63 +
.../Library/Ac01PcieLib/PciePatchAcpi.h | 30 +
.../ArmPlatformLib/PlatformMemoryMap.h | 135 +
.../Include/Guid/PlatformManagerHii.h | 31 +
.../Library/PlatformUiLib/PlatformManager.h | 51 +
.../PlatformUiLib/PlatformManagerVfr.h | 28 +
.../Library/BoardPcieLib/BoardPcieVfr.vfr | 217 +
.../Drivers/AcpiConfigDxe/AcpiConfigVfr.vfr | 69 +
.../Drivers/CpuConfigDxe/CpuConfigVfr.vfr | 43 +
.../Drivers/MemInfoDxe/MemInfoScreenVfr.vfr | 62 +
.../PlatformInfoDxe/PlatformInfoVfr.vfr | 112 +
.../PlatformPcieDeviceConfigVfr.vfr | 50 +
.../Drivers/RasConfigDxe/RasConfigVfr.vfr | 95 +
.../WatchdogConfigDxe/WatchdogConfigVfr.vfr | 58 +
.../Drivers/FailSafeDxe/FailSafeDxe.c | 184 +
.../Drivers/FailSafeDxe/Watchdog.c | 357 ++
.../Library/FailSafeLib/FailSafeLib.c | 313 +
.../Drivers/AcpiPlatformDxe/AcpiApei.c | 468 ++
.../Drivers/AcpiPlatformDxe/AcpiDsdt.c | 601 ++
.../Drivers/AcpiPlatformDxe/AcpiMadt.c | 348 +
.../Drivers/AcpiPlatformDxe/AcpiNfit.c | 596 ++
.../Drivers/AcpiPlatformDxe/AcpiPcct.c | 413 ++
.../Drivers/AcpiPlatformDxe/AcpiPlatformDxe.c | 178 +
.../Drivers/AcpiPlatformDxe/AcpiPptt.c | 333 +
.../Drivers/AcpiPlatformDxe/AcpiSlit.c | 187 +
.../Drivers/AcpiPlatformDxe/AcpiSrat.c | 271 +
.../Drivers/PciPlatformDxe/PciPlatformDxe.c | 212 +
.../SmbiosMemInfoDxe/SmbiosMemInfoDxe.c | 705 +++
.../SmbiosPlatformDxe/SmbiosPlatformDxe.c | 1049 +++
.../JadePkg/Library/BoardPcieLib/BoardPcie.c | 436 ++
.../Library/BoardPcieLib/BoardPcieCommon.c | 329 +
.../Library/BoardPcieLib/BoardPcieScreen.c | 1244 ++++
.../JadePkg/Library/OemMiscLib/OemMiscLib.c | 323 +
.../PCF85063RealTimeClockLib/PCF85063.c | 317 +
.../PCF85063RealTimeClockLib.c | 257 +
.../Drivers/ATFHobPei/ATFHobPeim.c | 52 +
.../Drivers/AcpiConfigDxe/AcpiConfigDxe.c | 729 +++
.../BootProgressDxe/BootProgressDxe.c | 211 +
.../BootProgressPeim/BootProgressPeim.c | 210 +
.../Drivers/CpuConfigDxe/CpuConfigDxe.c | 530 ++
.../Drivers/DebugInfoPei/DebugInfoPei.c | 210 +
.../Drivers/FlashFvbDxe/FlashFvbDxe.c | 525 ++
.../Drivers/FlashPei/FlashPei.c | 273 +
.../Drivers/MemInfoDxe/MemInfoNvramLib.c | 394 ++
.../Drivers/MemInfoDxe/MemInfoScreen.c | 1325 ++++
.../Drivers/MemoryInitPeim/MemoryInitPeim.c | 151 +
.../MmCommunicationDxe/MmCommunication.c | 454 ++
.../MmCommunicationPei/MmCommunicationPei.c | 37 +
.../Drivers/PlatformInfoDxe/PlatformInfoDxe.c | 391 ++
.../PlatformPcieDeviceConfigDxe.c | 1045 +++
.../PlatformPcieHelper.c | 191 +
.../Drivers/RasConfigDxe/RasConfigDxe.c | 822 +++
.../AmpereAltraPkg/Drivers/RngDxe/RngDxe.c | 164 +
.../WatchdogConfigDxe/WatchdogConfigDxe.c | 460 ++
.../Library/Ac01PcieLib/PcieCore.c | 1659 +++++
.../Library/Ac01PcieLib/PcieCoreLib.c | 556 ++
.../Library/Ac01PcieLib/PciePatchAcpi.c | 646 ++
.../Library/AmpereCpuLib/AmpereCpuLib.c | 43 +
.../Library/AmpereCpuLib/AmpereCpuLibCommon.c | 637 ++
.../AmpereCpuLib/RuntimeAmpereCpuLib.c | 138 +
.../Library/ArmPlatformLib/ArmPlatformLib.c | 169 +
.../ArmPlatformLib/ArmPlatformLibMemory.c | 257 +
.../Library/DwGpioLib/DwGpioLib.c | 314 +
.../Library/DwI2cLib/DwI2cLib.c | 883 +++
.../Library/FlashLib/FlashLib.c | 358 ++
.../MailboxInterfaceLib/MailboxInterfaceLib.c | 281 +
.../MemoryInitPeiLib/MemoryInitPeiLib.c | 93 +
.../MmCommunicationLib/MmCommunicationLib.c | 184 +
.../Library/NVParamLib/NVParamLib.c | 202 +
.../PciHostBridgeLib/PciHostBridgeLib.c | 378 ++
.../Library/PciSegmentLibPci/PciSegmentLib.c | 1189 ++++
.../Library/PlatformPeiLib/PlatformPeiLib.c | 40 +
.../AmpereAltraPkg/Library/RngLib/RngLib.c | 141 +
.../SystemFirmwareInterfaceLib.c | 328 +
.../AmpereAltraPkg/Library/TrngLib/TrngLib.c | 63 +
.../Library/PlatformUiLib/PlatformManager.c | 354 ++
.../Ampere/AmperePlatformPkg/FvRules.fdf.inc | 176 +
Platform/Ampere/JadePkg/AcpiTables/CPU-S0.asi | 5639 +++++++++++++++++
Platform/Ampere/JadePkg/AcpiTables/CPU-S1.asi | 5639 +++++++++++++++++
Platform/Ampere/JadePkg/AcpiTables/CPU.asi | 127 +
Platform/Ampere/JadePkg/AcpiTables/Dsdt.asl | 531 ++
.../Ampere/JadePkg/AcpiTables/PCI-PDRC.asi | 217 +
.../JadePkg/AcpiTables/PCI-S0.Rca01.asi | 681 ++
Platform/Ampere/JadePkg/AcpiTables/PCI-S0.asi | 2078 ++++++
Platform/Ampere/JadePkg/AcpiTables/PCI-S1.asi | 2087 ++++++
Platform/Ampere/JadePkg/AcpiTables/PMU-S0.asi | 1303 ++++
Platform/Ampere/JadePkg/AcpiTables/PMU-S1.asi | 1303 ++++
Platform/Ampere/JadePkg/AcpiTables/PMU.asi | 10 +
Platform/Ampere/JadePkg/JadeBoardSetting.cfg | 224 +
.../Library/BoardPcieLib/BoardPcieScreen.uni | 102 +
.../AmpereAltraPkg/AcpiCommonTables/Bert.aslc | 33 +
.../AmpereAltraPkg/AcpiCommonTables/Dbg2.aslc | 87 +
.../AmpereAltraPkg/AcpiCommonTables/Einj.asl | 165 +
.../AmpereAltraPkg/AcpiCommonTables/Fadt.aslc | 87 +
.../AmpereAltraPkg/AcpiCommonTables/Gtdt.aslc | 180 +
.../AmpereAltraPkg/AcpiCommonTables/Hest.asl | 330 +
.../AmpereAltraPkg/AcpiCommonTables/Sdei.asl | 17 +
.../AmpereAltraPkg/AcpiCommonTables/Spcr.aslc | 81 +
.../AmpereAltraPkg/AcpiCommonTables/Ssdt.asl | 15 +
.../AcpiConfigDxe/AcpiConfigStrings.uni | 27 +
.../BootProgressDxe/BootProgressDxe.uni | 16 +
.../BootProgressPeim/BootProgressPeim.uni | 18 +
.../Drivers/CpuConfigDxe/CpuConfigStrings.uni | 17 +
.../Drivers/MemInfoDxe/MemInfoDxe.uni | 9 +
.../Drivers/MemInfoDxe/MemInfoDxeExtra.uni | 9 +
.../MemInfoDxe/MemInfoScreenStrings.uni | 64 +
.../PlatformInfoDxe/PlatformInfoStrings.uni | 56 +
.../PlatformPcieDeviceConfigDxe.uni | 24 +
.../Drivers/RasConfigDxe/RasConfigStrings.uni | 38 +
.../AmpereAltraPkg/Drivers/RngDxe/RngDxe.uni | 10 +
.../Drivers/RngDxe/RngDxeExtra.uni | 9 +
.../WatchdogConfigStrings.uni | 26 +
.../ArmPlatformLib/ArmPlatformHelper.S | 45 +
.../AmpereAltraPkg/Library/RngLib/RngLib.uni | 13 +
.../PlatformUiLib/PlatformManagerStrings.uni | 21 +
.../PlatformUiLib/PlatformManagerUiLib.uni | 13 +
.../PlatformUiLib/PlatformManagerVfr.Vfr | 29 +
217 files changed, 57398 insertions(+)
create mode 100644 Platform/Ampere/AmperePlatformPkg/AmperePlatformPkg.dec
create mode 100644 Silicon/Ampere/AmpereAltraPkg/AmpereAltraPkg.dec
create mode 100644 Silicon/Ampere/AmpereSiliconPkg/AmpereSiliconPkg.dec
create mode 100644 Silicon/Ampere/AmpereAltraPkg/AmpereAltraPkg.dsc.inc
create mode 100644 Platform/Ampere/JadePkg/Jade.dsc
create mode 100644 Platform/Ampere/JadePkg/Jade.fdf
create mode 100644 Platform/Ampere/AmperePlatformPkg/Drivers/FailSafeDxe/FailSafeDxe.inf
create mode 100644 Platform/Ampere/AmperePlatformPkg/Library/FailSafeLib/FailSafeLib.inf
create mode 100644 Platform/Ampere/JadePkg/AcpiTables/AcpiTables.inf
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiPlatformDxe.inf
create mode 100644 Platform/Ampere/JadePkg/Drivers/PciPlatformDxe/PciPlatformDxe.inf
create mode 100644 Platform/Ampere/JadePkg/Drivers/SmbiosMemInfoDxe/SmbiosMemInfoDxe.inf
create mode 100644 Platform/Ampere/JadePkg/Drivers/SmbiosPlatformDxe/SmbiosPlatformDxe.inf
create mode 100644 Platform/Ampere/JadePkg/Library/BoardPcieLib/BoardPcieLib.inf
create mode 100644 Platform/Ampere/JadePkg/Library/OemMiscLib/OemMiscLib.inf
create mode 100644 Platform/Ampere/JadePkg/Library/PCF85063RealTimeClockLib/PCF85063RealTimeClockLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/AcpiCommonTables/AcpiCommonTables.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/ATFHobPei/ATFHobPeim.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/AcpiConfigDxe/AcpiConfigDxe.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/BootProgress/BootProgressDxe/BootProgressDxe.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/BootProgress/BootProgressPeim/BootProgressPeim.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/CpuConfigDxe/CpuConfigDxe.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/DebugInfoPei/DebugInfoPei.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/FlashFvbDxe/FlashFvbDxe.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/FlashPei/FlashPei.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MemInfoDxe/MemInfoDxe.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MemoryInitPeim/MemoryInitPeim.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MmCommunicationDxe/MmCommunication.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MmCommunicationPei/MmCommunicationPei.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformInfoDxe/PlatformInfoDxe.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformPcieDeviceConfigDxe/PlatformPcieDeviceConfigDxe.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/RasConfigDxe/RasConfigDxe.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/RngDxe/RngDxe.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/WatchdogConfigDxe/WatchdogConfigDxe.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/Ac01PcieLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/AmpereCpuLib/AmpereCpuLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/AmpereCpuLib/RuntimeAmpereCpuLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/ArmPlatformLib/ArmPlatformLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/DwGpioLib/DwGpioLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/DwI2cLib/DwI2cLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/FlashLib/FlashLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/MailboxInterfaceLib/MailboxInterfaceLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/MemoryInitPeiLib/MemoryInitPeiLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/MmCommunicationLib/MmCommunicationLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/NVParamLib/NVParamLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/PciHostBridgeLib/PciHostBridgeLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/PciSegmentLibPci/PciSegmentLibPci.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/PlatformPeiLib/PlatformPeiLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/RngLib/RngLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/SystemFirmwareInterfaceLib/SystemFirmwareInterfaceLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/TrngLib/TrngLib.inf
create mode 100644 Silicon/Ampere/AmpereSiliconPkg/Library/PlatformUiLib/PlatformManagerUiLib.inf
create mode 100644 Platform/Ampere/AmperePlatformPkg/Drivers/FailSafeDxe/FailSafe.h
create mode 100644 Platform/Ampere/AmperePlatformPkg/Drivers/FailSafeDxe/Watchdog.h
create mode 100644 Platform/Ampere/AmperePlatformPkg/Include/Library/FailSafeLib.h
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiApei.h
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiNfit.h
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiPlatform.h
create mode 100644 Platform/Ampere/JadePkg/Library/BoardPcieLib/BoardPcie.h
create mode 100644 Platform/Ampere/JadePkg/Library/BoardPcieLib/BoardPcieScreen.h
create mode 100644 Platform/Ampere/JadePkg/Library/BoardPcieLib/BoardPcieVfr.h
create mode 100644 Platform/Ampere/JadePkg/Library/PCF85063RealTimeClockLib/PCF85063.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/AcpiConfigDxe/AcpiConfigDxe.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/CpuConfigDxe/CpuConfigDxe.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/CpuConfigDxe/CpuConfigNVDataStruc.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MemInfoDxe/MemInfoScreen.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MemInfoDxe/MemInfoScreenNVDataStruct.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MmCommunicationDxe/MmCommunicate.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformInfoDxe/PlatformInfoHii.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformPcieDeviceConfigDxe/PlatformPcieDeviceConfigDxe.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformPcieDeviceConfigDxe/PlatformPcieDeviceConfigVfr.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformPcieDeviceConfigDxe/PlatformPcieHelper.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/RasConfigDxe/RasConfigDxe.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/RasConfigDxe/RasConfigNVDataStruct.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/WatchdogConfigDxe/WatchdogConfigDxe.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/WatchdogConfigDxe/WatchdogConfigNVDataStruct.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Ac01PcieCommon.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/AcpiConfigNVDataStruct.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/AcpiHeader.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Guid/AcpiConfigFormSet.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Guid/CpuConfigHii.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Guid/PlatformInfoHobGuid.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Guid/PlatformPcieDeviceConfigHii.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Guid/WatchdogConfigHii.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Library/Ac01PcieLib.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Library/AmpereCpuLib.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Library/BoardPcieLib.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Library/FlashLib.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Library/GpioLib.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Library/I2cLib.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Library/MailboxInterfaceLib.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Library/MmCommunicationLib.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Library/NVParamLib.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Library/SystemFirmwareInterfaceLib.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Library/TrngLib.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/MmLib.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/NVParamDef.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Platform/Ac01.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/PlatformInfoHob.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/PcieCore.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/PcieCoreCapCfg.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/PciePatchAcpi.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/ArmPlatformLib/PlatformMemoryMap.h
create mode 100644 Silicon/Ampere/AmpereSiliconPkg/Include/Guid/PlatformManagerHii.h
create mode 100644 Silicon/Ampere/AmpereSiliconPkg/Library/PlatformUiLib/PlatformManager.h
create mode 100644 Silicon/Ampere/AmpereSiliconPkg/Library/PlatformUiLib/PlatformManagerVfr.h
create mode 100644 Platform/Ampere/JadePkg/Library/BoardPcieLib/BoardPcieVfr.vfr
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/AcpiConfigDxe/AcpiConfigVfr.vfr
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/CpuConfigDxe/CpuConfigVfr.vfr
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MemInfoDxe/MemInfoScreenVfr.vfr
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformInfoDxe/PlatformInfoVfr.vfr
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformPcieDeviceConfigDxe/PlatformPcieDeviceConfigVfr.vfr
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/RasConfigDxe/RasConfigVfr.vfr
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/WatchdogConfigDxe/WatchdogConfigVfr.vfr
create mode 100644 Platform/Ampere/AmperePlatformPkg/Drivers/FailSafeDxe/FailSafeDxe.c
create mode 100644 Platform/Ampere/AmperePlatformPkg/Drivers/FailSafeDxe/Watchdog.c
create mode 100644 Platform/Ampere/AmperePlatformPkg/Library/FailSafeLib/FailSafeLib.c
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiApei.c
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiDsdt.c
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiMadt.c
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiNfit.c
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiPcct.c
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiPlatformDxe.c
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiPptt.c
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiSlit.c
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiSrat.c
create mode 100644 Platform/Ampere/JadePkg/Drivers/PciPlatformDxe/PciPlatformDxe.c
create mode 100644 Platform/Ampere/JadePkg/Drivers/SmbiosMemInfoDxe/SmbiosMemInfoDxe.c
create mode 100644 Platform/Ampere/JadePkg/Drivers/SmbiosPlatformDxe/SmbiosPlatformDxe.c
create mode 100644 Platform/Ampere/JadePkg/Library/BoardPcieLib/BoardPcie.c
create mode 100644 Platform/Ampere/JadePkg/Library/BoardPcieLib/BoardPcieCommon.c
create mode 100644 Platform/Ampere/JadePkg/Library/BoardPcieLib/BoardPcieScreen.c
create mode 100644 Platform/Ampere/JadePkg/Library/OemMiscLib/OemMiscLib.c
create mode 100644 Platform/Ampere/JadePkg/Library/PCF85063RealTimeClockLib/PCF85063.c
create mode 100644 Platform/Ampere/JadePkg/Library/PCF85063RealTimeClockLib/PCF85063RealTimeClockLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/ATFHobPei/ATFHobPeim.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/AcpiConfigDxe/AcpiConfigDxe.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/BootProgress/BootProgressDxe/BootProgressDxe.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/BootProgress/BootProgressPeim/BootProgressPeim.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/CpuConfigDxe/CpuConfigDxe.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/DebugInfoPei/DebugInfoPei.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/FlashFvbDxe/FlashFvbDxe.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/FlashPei/FlashPei.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MemInfoDxe/MemInfoNvramLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MemInfoDxe/MemInfoScreen.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MemoryInitPeim/MemoryInitPeim.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MmCommunicationDxe/MmCommunication.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MmCommunicationPei/MmCommunicationPei.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformInfoDxe/PlatformInfoDxe.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformPcieDeviceConfigDxe/PlatformPcieDeviceConfigDxe.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformPcieDeviceConfigDxe/PlatformPcieHelper.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/RasConfigDxe/RasConfigDxe.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/RngDxe/RngDxe.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/WatchdogConfigDxe/WatchdogConfigDxe.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/PcieCore.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/PcieCoreLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/PciePatchAcpi.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/AmpereCpuLib/AmpereCpuLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/AmpereCpuLib/AmpereCpuLibCommon.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/AmpereCpuLib/RuntimeAmpereCpuLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/ArmPlatformLib/ArmPlatformLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/ArmPlatformLib/ArmPlatformLibMemory.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/DwGpioLib/DwGpioLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/DwI2cLib/DwI2cLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/FlashLib/FlashLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/MailboxInterfaceLib/MailboxInterfaceLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/MemoryInitPeiLib/MemoryInitPeiLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/MmCommunicationLib/MmCommunicationLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/NVParamLib/NVParamLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/PciHostBridgeLib/PciHostBridgeLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/PciSegmentLibPci/PciSegmentLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/PlatformPeiLib/PlatformPeiLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/RngLib/RngLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/SystemFirmwareInterfaceLib/SystemFirmwareInterfaceLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/TrngLib/TrngLib.c
create mode 100644 Silicon/Ampere/AmpereSiliconPkg/Library/PlatformUiLib/PlatformManager.c
create mode 100644 Platform/Ampere/AmperePlatformPkg/FvRules.fdf.inc
create mode 100644 Platform/Ampere/JadePkg/AcpiTables/CPU-S0.asi
create mode 100644 Platform/Ampere/JadePkg/AcpiTables/CPU-S1.asi
create mode 100644 Platform/Ampere/JadePkg/AcpiTables/CPU.asi
create mode 100644 Platform/Ampere/JadePkg/AcpiTables/Dsdt.asl
create mode 100644 Platform/Ampere/JadePkg/AcpiTables/PCI-PDRC.asi
create mode 100644 Platform/Ampere/JadePkg/AcpiTables/PCI-S0.Rca01.asi
create mode 100644 Platform/Ampere/JadePkg/AcpiTables/PCI-S0.asi
create mode 100644 Platform/Ampere/JadePkg/AcpiTables/PCI-S1.asi
create mode 100644 Platform/Ampere/JadePkg/AcpiTables/PMU-S0.asi
create mode 100644 Platform/Ampere/JadePkg/AcpiTables/PMU-S1.asi
create mode 100644 Platform/Ampere/JadePkg/AcpiTables/PMU.asi
create mode 100644 Platform/Ampere/JadePkg/JadeBoardSetting.cfg
create mode 100644 Platform/Ampere/JadePkg/Library/BoardPcieLib/BoardPcieScreen.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/AcpiCommonTables/Bert.aslc
create mode 100644 Silicon/Ampere/AmpereAltraPkg/AcpiCommonTables/Dbg2.aslc
create mode 100644 Silicon/Ampere/AmpereAltraPkg/AcpiCommonTables/Einj.asl
create mode 100644 Silicon/Ampere/AmpereAltraPkg/AcpiCommonTables/Fadt.aslc
create mode 100644 Silicon/Ampere/AmpereAltraPkg/AcpiCommonTables/Gtdt.aslc
create mode 100644 Silicon/Ampere/AmpereAltraPkg/AcpiCommonTables/Hest.asl
create mode 100644 Silicon/Ampere/AmpereAltraPkg/AcpiCommonTables/Sdei.asl
create mode 100644 Silicon/Ampere/AmpereAltraPkg/AcpiCommonTables/Spcr.aslc
create mode 100644 Silicon/Ampere/AmpereAltraPkg/AcpiCommonTables/Ssdt.asl
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/AcpiConfigDxe/AcpiConfigStrings.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/BootProgress/BootProgressDxe/BootProgressDxe.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/BootProgress/BootProgressPeim/BootProgressPeim.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/CpuConfigDxe/CpuConfigStrings.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MemInfoDxe/MemInfoDxe.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MemInfoDxe/MemInfoDxeExtra.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MemInfoDxe/MemInfoScreenStrings.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformInfoDxe/PlatformInfoStrings.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformPcieDeviceConfigDxe/PlatformPcieDeviceConfigDxe.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/RasConfigDxe/RasConfigStrings.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/RngDxe/RngDxe.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/RngDxe/RngDxeExtra.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/WatchdogConfigDxe/WatchdogConfigStrings.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/ArmPlatformLib/ArmPlatformHelper.S
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/RngLib/RngLib.uni
create mode 100644 Silicon/Ampere/AmpereSiliconPkg/Library/PlatformUiLib/PlatformManagerStrings.uni
create mode 100644 Silicon/Ampere/AmpereSiliconPkg/Library/PlatformUiLib/PlatformManagerUiLib.uni
create mode 100644 Silicon/Ampere/AmpereSiliconPkg/Library/PlatformUiLib/PlatformManagerVfr.Vfr

--
2.17.1


Nhi Pham
 

Hi Leif,

On 16/09/2021 17:09, Leif Lindholm wrote:
Hi Nhi,

On Wed, Sep 15, 2021 at 22:54:59 +0700, Nhi Pham wrote:
This patch series adds the support for the Mt. Jade platform based on Ampere's
Altra Family Processor.

Notes:
+ The current patch series was tested with the edk2-stable202108 tag.
+ the added common functions in EmbeddedPkg AcpiLib.
Thanks! Will add in the v4.

+ The IASL compiler version 20201217 is required to build.
+ The edk2-non-osi source is required to build.

You can get code from
https://github.com/AmpereComputing/edk2-platforms/tree/ampere-upstream-wip-v3

Cc: Vu Nguyen <vunguyen@os.amperecomputing.com>
Cc: Nhi Pham <nhi@os.amperecomputing.com>
Cc: Thang Nguyen <thang@os.amperecomputing.com>
Cc: Chuong Tran <chuong@os.amperecomputing.com>
Cc: Phong Vo <phong@os.amperecomputing.com>
Cc: Leif Lindholm <leif@nuviainc.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Ard Biesheuvel <ardb+tianocore@kernel.org>
Cc: Nate DeSimone <nathaniel.l.desimone@intel.com>

Signed-off-by: Nhi Pham <nhi@os.amperecomputing.com>

Changes since v2:
+ Addressed all Leif's feedback.
This feedback is a bit oversimplified.
There is an entirely new Ac01PcieLib component - which I could quickly
tell because the NOOPT target fails to build for me with:
Oops! Thanks, I will check the NOOPT target and fix in the v4.

---
Building ... /work/git/edk2/MdePkg/Library/UefiScsiLib/UefiScsiLib.inf [AARCH64]
/work/git/edk2-platforms/Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/PcieCore.c: In function ‘Ac01PcieCfgIn32’:
/work/git/edk2-platforms/Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/PcieCore.c:261:42: error: variable ‘Sub’ set but not used [-Werror=unused-but-set-variable]
261 | UINT8 MfHt, Ht, Primary = 0, Sec = 0, Sub = 0;
| ^~~
/work/git/edk2-platforms/Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/PcieCore.c:261:33: error: variable ‘Sec’ set but not used [-Werror=unused-but-set-variable]
261 | UINT8 MfHt, Ht, Primary = 0, Sec = 0, Sub = 0;
| ^~~
/work/git/edk2-platforms/Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/PcieCore.c: In function ‘Ac01PcieCfgIn16’:
/work/git/edk2-platforms/Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/PcieCore.c:324:38: error: variable ‘Sub’ set but not used [-Werror=unused-but-set-variable]
324 | UINT8 MfHt, Primary = 0, Sec = 0, Sub = 0;
| ^~~
/work/git/edk2-platforms/Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/PcieCore.c:324:29: error: variable ‘Sec’ set but not used [-Werror=unused-but-set-variable]
324 | UINT8 MfHt, Primary = 0, Sec = 0, Sub = 0;
| ^~~
make: Nothing to be done for 'tbuild'.
/work/git/edk2-platforms/Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/PcieCore.c: In function ‘Ac01PcieCoreQoSLinkCheckRecovery’:
/work/git/edk2-platforms/Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/PcieCore.c:1514:16: error: variable ‘CsrAddr’ set but not used [-Werror=unused-but-set-variable]
1514 | VOID *CsrAddr;
| ^~~~~~~
---

Looking at this module in general, I think I will have a fair amount
of feedback on it. But I'll get started with patches 1-11, which at v3
should be much more straightforward.
Thanks a lot for your useful feedback so far.

Have great weekend!

-Nhi

Best Regards,

Leif

Changes since v1:
+ Addressed all Leif's feedback in the thread
https://edk2.groups.io/g/devel/message/70356.
+ Removed the LinuxBoot image as Leif's feedback in the thread
https://edk2.groups.io/g/devel/message/68717. The image will be
pre-produced by users as the instruction in the README before compiling.
+ Other major code improvements from in-house review:
* Create new AmperePlatformPkg and AmpereSiliconPkg packages for
containing common Platform/Silicon modules.
* Remove SMProLib and PMProLib libraries which are replaced by the
MailboxInterfaceLib and SystemFirmwareInterfaceLib libraries for the
communication interface between UEFI and System Firmware.
* Clean up and fix coding styles to conform to EDK II C Coding
Standards Specification.


Nhi Pham (5):
AmperePlatformPkg: Implement FailSafe library
AmperePlatformPkg: Add FailSafe and WDT support
AmpereAltraPkg, JadePkg: Add ACPI support
JadePkg: Add ASpeed GOP driver
AmpereAltraPkg: Add configuration screen for ACPI

Quan Nguyen (3):
AmpereAltraPkg: Add BootProgress support
JadePkg: Add SMBIOS tables support
AmpereAltraPkg: Add configuration screen for RAS

Vu Nguyen (20):
Ampere: Initial support for Ampere Altra processor and Mt. Jade
platform
AmpereAltraPkg: Add MmCommunication modules
AmpereAltraPkg: Add DwI2cLib library
AmpereAltraPkg: Add DwGpioLib library
JadePkg: Implement RealTimeClockLib for PCF85063
AmpereAltraPkg: Support UEFI non-volatile variable
AmpereSiliconPkg: Add PlatformManagerUiLib library instance
AmpereAltraPkg: Add Ac01PcieLib library instance
JadePkg: Add BoardPcieLib library instance
Ampere: PCIe: Add PciHostBridgeLib library instance
Ampere: PCIe: Add PciSegmentLib library instance
JadePkg: Enable PCIe-related libraries and device drivers
Ampere: PCIe: Add PciPlatformDxe driver
AmpereAltraPkg: Add Random Number Generator Support
AmpereAltraPkg: Add DebugInfoPei module
AmpereAltraPkg: Add platform info screen
AmpereAltraPkg: Add configuration screen for memory
AmpereAltraPkg: Add configuration screen for CPU
AmpereAltraPkg: Add configuration screen for Watchdog timer
AmpereAltraPkg: Add configuration screen for Pcie Devices

.../AmperePlatformPkg/AmperePlatformPkg.dec | 31 +
.../Ampere/AmpereAltraPkg/AmpereAltraPkg.dec | 72 +
.../AmpereSiliconPkg/AmpereSiliconPkg.dec | 85 +
.../AmpereAltraPkg/AmpereAltraPkg.dsc.inc | 748 +++
Platform/Ampere/JadePkg/Jade.dsc | 205 +
Platform/Ampere/JadePkg/Jade.fdf | 365 ++
.../Drivers/FailSafeDxe/FailSafeDxe.inf | 54 +
.../Library/FailSafeLib/FailSafeLib.inf | 41 +
.../Ampere/JadePkg/AcpiTables/AcpiTables.inf | 20 +
.../AcpiPlatformDxe/AcpiPlatformDxe.inf | 78 +
.../Drivers/PciPlatformDxe/PciPlatformDxe.inf | 37 +
.../SmbiosMemInfoDxe/SmbiosMemInfoDxe.inf | 45 +
.../SmbiosPlatformDxe/SmbiosPlatformDxe.inf | 52 +
.../Library/BoardPcieLib/BoardPcieLib.inf | 59 +
.../JadePkg/Library/OemMiscLib/OemMiscLib.inf | 36 +
.../PCF85063RealTimeClockLib.inf | 44 +
.../AcpiCommonTables/AcpiCommonTables.inf | 44 +
.../Drivers/ATFHobPei/ATFHobPeim.inf | 41 +
.../Drivers/AcpiConfigDxe/AcpiConfigDxe.inf | 58 +
.../BootProgressDxe/BootProgressDxe.inf | 51 +
.../BootProgressPeim/BootProgressPeim.inf | 49 +
.../Drivers/CpuConfigDxe/CpuConfigDxe.inf | 58 +
.../Drivers/DebugInfoPei/DebugInfoPei.inf | 40 +
.../Drivers/FlashFvbDxe/FlashFvbDxe.inf | 54 +
.../Drivers/FlashPei/FlashPei.inf | 52 +
.../Drivers/MemInfoDxe/MemInfoDxe.inf | 59 +
.../Drivers/MemoryInitPeim/MemoryInitPeim.inf | 64 +
.../MmCommunicationDxe/MmCommunication.inf | 57 +
.../MmCommunicationPei/MmCommunicationPei.inf | 34 +
.../PlatformInfoDxe/PlatformInfoDxe.inf | 52 +
.../PlatformPcieDeviceConfigDxe.inf | 59 +
.../Drivers/RasConfigDxe/RasConfigDxe.inf | 56 +
.../AmpereAltraPkg/Drivers/RngDxe/RngDxe.inf | 43 +
.../WatchdogConfigDxe/WatchdogConfigDxe.inf | 50 +
.../Library/Ac01PcieLib/Ac01PcieLib.inf | 67 +
.../Library/AmpereCpuLib/AmpereCpuLib.inf | 45 +
.../AmpereCpuLib/RuntimeAmpereCpuLib.inf | 50 +
.../Library/ArmPlatformLib/ArmPlatformLib.inf | 57 +
.../Library/DwGpioLib/DwGpioLib.inf | 33 +
.../Library/DwI2cLib/DwI2cLib.inf | 38 +
.../Library/FlashLib/FlashLib.inf | 36 +
.../MailboxInterfaceLib.inf | 37 +
.../MemoryInitPeiLib/MemoryInitPeiLib.inf | 63 +
.../MmCommunicationLib/MmCommunicationLib.inf | 35 +
.../Library/NVParamLib/NVParamLib.inf | 32 +
.../PciHostBridgeLib/PciHostBridgeLib.inf | 48 +
.../PciSegmentLibPci/PciSegmentLibPci.inf | 28 +
.../Library/PlatformPeiLib/PlatformPeiLib.inf | 42 +
.../AmpereAltraPkg/Library/RngLib/RngLib.inf | 29 +
.../SystemFirmwareInterfaceLib.inf | 30 +
.../Library/TrngLib/TrngLib.inf | 29 +
.../PlatformUiLib/PlatformManagerUiLib.inf | 47 +
.../Drivers/FailSafeDxe/FailSafe.h | 20 +
.../Drivers/FailSafeDxe/Watchdog.h | 29 +
.../Include/Library/FailSafeLib.h | 62 +
.../Drivers/AcpiPlatformDxe/AcpiApei.h | 126 +
.../Drivers/AcpiPlatformDxe/AcpiNfit.h | 49 +
.../Drivers/AcpiPlatformDxe/AcpiPlatform.h | 75 +
.../JadePkg/Library/BoardPcieLib/BoardPcie.h | 45 +
.../Library/BoardPcieLib/BoardPcieScreen.h | 114 +
.../Library/BoardPcieLib/BoardPcieVfr.h | 99 +
.../PCF85063RealTimeClockLib/PCF85063.h | 91 +
.../Drivers/AcpiConfigDxe/AcpiConfigDxe.h | 62 +
.../Drivers/CpuConfigDxe/CpuConfigDxe.h | 52 +
.../CpuConfigDxe/CpuConfigNVDataStruc.h | 19 +
.../Drivers/MemInfoDxe/MemInfoScreen.h | 170 +
.../MemInfoDxe/MemInfoScreenNVDataStruct.h | 47 +
.../MmCommunicationDxe/MmCommunicate.h | 22 +
.../Drivers/PlatformInfoDxe/PlatformInfoHii.h | 22 +
.../PlatformPcieDeviceConfigDxe.h | 78 +
.../PlatformPcieDeviceConfigVfr.h | 56 +
.../PlatformPcieHelper.h | 58 +
.../Drivers/RasConfigDxe/RasConfigDxe.h | 61 +
.../RasConfigDxe/RasConfigNVDataStruct.h | 46 +
.../WatchdogConfigDxe/WatchdogConfigDxe.h | 82 +
.../WatchdogConfigNVDataStruct.h | 27 +
.../AmpereAltraPkg/Include/Ac01PcieCommon.h | 128 +
.../Include/AcpiConfigNVDataStruct.h | 28 +
.../AmpereAltraPkg/Include/AcpiHeader.h | 37 +
.../Include/Guid/AcpiConfigFormSet.h | 19 +
.../Include/Guid/CpuConfigHii.h | 19 +
.../Include/Guid/PlatformInfoHobGuid.h | 17 +
.../Guid/PlatformPcieDeviceConfigHii.h | 19 +
.../Include/Guid/WatchdogConfigHii.h | 19 +
.../Include/Library/Ac01PcieLib.h | 163 +
.../Include/Library/AmpereCpuLib.h | 276 +
.../Include/Library/BoardPcieLib.h | 92 +
.../AmpereAltraPkg/Include/Library/FlashLib.h | 42 +
.../AmpereAltraPkg/Include/Library/GpioLib.h | 76 +
.../AmpereAltraPkg/Include/Library/I2cLib.h | 100 +
.../Include/Library/MailboxInterfaceLib.h | 172 +
.../Include/Library/MmCommunicationLib.h | 19 +
.../Include/Library/NVParamLib.h | 133 +
.../Library/SystemFirmwareInterfaceLib.h | 282 +
.../AmpereAltraPkg/Include/Library/TrngLib.h | 31 +
Silicon/Ampere/AmpereAltraPkg/Include/MmLib.h | 79 +
.../AmpereAltraPkg/Include/NVParamDef.h | 525 ++
.../AmpereAltraPkg/Include/Platform/Ac01.h | 332 +
.../AmpereAltraPkg/Include/PlatformInfoHob.h | 182 +
.../Library/Ac01PcieLib/PcieCore.h | 649 ++
.../Library/Ac01PcieLib/PcieCoreCapCfg.h | 63 +
.../Library/Ac01PcieLib/PciePatchAcpi.h | 30 +
.../ArmPlatformLib/PlatformMemoryMap.h | 135 +
.../Include/Guid/PlatformManagerHii.h | 31 +
.../Library/PlatformUiLib/PlatformManager.h | 51 +
.../PlatformUiLib/PlatformManagerVfr.h | 28 +
.../Library/BoardPcieLib/BoardPcieVfr.vfr | 217 +
.../Drivers/AcpiConfigDxe/AcpiConfigVfr.vfr | 69 +
.../Drivers/CpuConfigDxe/CpuConfigVfr.vfr | 43 +
.../Drivers/MemInfoDxe/MemInfoScreenVfr.vfr | 62 +
.../PlatformInfoDxe/PlatformInfoVfr.vfr | 112 +
.../PlatformPcieDeviceConfigVfr.vfr | 50 +
.../Drivers/RasConfigDxe/RasConfigVfr.vfr | 95 +
.../WatchdogConfigDxe/WatchdogConfigVfr.vfr | 58 +
.../Drivers/FailSafeDxe/FailSafeDxe.c | 184 +
.../Drivers/FailSafeDxe/Watchdog.c | 357 ++
.../Library/FailSafeLib/FailSafeLib.c | 313 +
.../Drivers/AcpiPlatformDxe/AcpiApei.c | 468 ++
.../Drivers/AcpiPlatformDxe/AcpiDsdt.c | 601 ++
.../Drivers/AcpiPlatformDxe/AcpiMadt.c | 348 +
.../Drivers/AcpiPlatformDxe/AcpiNfit.c | 596 ++
.../Drivers/AcpiPlatformDxe/AcpiPcct.c | 413 ++
.../Drivers/AcpiPlatformDxe/AcpiPlatformDxe.c | 178 +
.../Drivers/AcpiPlatformDxe/AcpiPptt.c | 333 +
.../Drivers/AcpiPlatformDxe/AcpiSlit.c | 187 +
.../Drivers/AcpiPlatformDxe/AcpiSrat.c | 271 +
.../Drivers/PciPlatformDxe/PciPlatformDxe.c | 212 +
.../SmbiosMemInfoDxe/SmbiosMemInfoDxe.c | 705 +++
.../SmbiosPlatformDxe/SmbiosPlatformDxe.c | 1049 +++
.../JadePkg/Library/BoardPcieLib/BoardPcie.c | 436 ++
.../Library/BoardPcieLib/BoardPcieCommon.c | 329 +
.../Library/BoardPcieLib/BoardPcieScreen.c | 1244 ++++
.../JadePkg/Library/OemMiscLib/OemMiscLib.c | 323 +
.../PCF85063RealTimeClockLib/PCF85063.c | 317 +
.../PCF85063RealTimeClockLib.c | 257 +
.../Drivers/ATFHobPei/ATFHobPeim.c | 52 +
.../Drivers/AcpiConfigDxe/AcpiConfigDxe.c | 729 +++
.../BootProgressDxe/BootProgressDxe.c | 211 +
.../BootProgressPeim/BootProgressPeim.c | 210 +
.../Drivers/CpuConfigDxe/CpuConfigDxe.c | 530 ++
.../Drivers/DebugInfoPei/DebugInfoPei.c | 210 +
.../Drivers/FlashFvbDxe/FlashFvbDxe.c | 525 ++
.../Drivers/FlashPei/FlashPei.c | 273 +
.../Drivers/MemInfoDxe/MemInfoNvramLib.c | 394 ++
.../Drivers/MemInfoDxe/MemInfoScreen.c | 1325 ++++
.../Drivers/MemoryInitPeim/MemoryInitPeim.c | 151 +
.../MmCommunicationDxe/MmCommunication.c | 454 ++
.../MmCommunicationPei/MmCommunicationPei.c | 37 +
.../Drivers/PlatformInfoDxe/PlatformInfoDxe.c | 391 ++
.../PlatformPcieDeviceConfigDxe.c | 1045 +++
.../PlatformPcieHelper.c | 191 +
.../Drivers/RasConfigDxe/RasConfigDxe.c | 822 +++
.../AmpereAltraPkg/Drivers/RngDxe/RngDxe.c | 164 +
.../WatchdogConfigDxe/WatchdogConfigDxe.c | 460 ++
.../Library/Ac01PcieLib/PcieCore.c | 1659 +++++
.../Library/Ac01PcieLib/PcieCoreLib.c | 556 ++
.../Library/Ac01PcieLib/PciePatchAcpi.c | 646 ++
.../Library/AmpereCpuLib/AmpereCpuLib.c | 43 +
.../Library/AmpereCpuLib/AmpereCpuLibCommon.c | 637 ++
.../AmpereCpuLib/RuntimeAmpereCpuLib.c | 138 +
.../Library/ArmPlatformLib/ArmPlatformLib.c | 169 +
.../ArmPlatformLib/ArmPlatformLibMemory.c | 257 +
.../Library/DwGpioLib/DwGpioLib.c | 314 +
.../Library/DwI2cLib/DwI2cLib.c | 883 +++
.../Library/FlashLib/FlashLib.c | 358 ++
.../MailboxInterfaceLib/MailboxInterfaceLib.c | 281 +
.../MemoryInitPeiLib/MemoryInitPeiLib.c | 93 +
.../MmCommunicationLib/MmCommunicationLib.c | 184 +
.../Library/NVParamLib/NVParamLib.c | 202 +
.../PciHostBridgeLib/PciHostBridgeLib.c | 378 ++
.../Library/PciSegmentLibPci/PciSegmentLib.c | 1189 ++++
.../Library/PlatformPeiLib/PlatformPeiLib.c | 40 +
.../AmpereAltraPkg/Library/RngLib/RngLib.c | 141 +
.../SystemFirmwareInterfaceLib.c | 328 +
.../AmpereAltraPkg/Library/TrngLib/TrngLib.c | 63 +
.../Library/PlatformUiLib/PlatformManager.c | 354 ++
.../Ampere/AmperePlatformPkg/FvRules.fdf.inc | 176 +
Platform/Ampere/JadePkg/AcpiTables/CPU-S0.asi | 5639 +++++++++++++++++
Platform/Ampere/JadePkg/AcpiTables/CPU-S1.asi | 5639 +++++++++++++++++
Platform/Ampere/JadePkg/AcpiTables/CPU.asi | 127 +
Platform/Ampere/JadePkg/AcpiTables/Dsdt.asl | 531 ++
.../Ampere/JadePkg/AcpiTables/PCI-PDRC.asi | 217 +
.../JadePkg/AcpiTables/PCI-S0.Rca01.asi | 681 ++
Platform/Ampere/JadePkg/AcpiTables/PCI-S0.asi | 2078 ++++++
Platform/Ampere/JadePkg/AcpiTables/PCI-S1.asi | 2087 ++++++
Platform/Ampere/JadePkg/AcpiTables/PMU-S0.asi | 1303 ++++
Platform/Ampere/JadePkg/AcpiTables/PMU-S1.asi | 1303 ++++
Platform/Ampere/JadePkg/AcpiTables/PMU.asi | 10 +
Platform/Ampere/JadePkg/JadeBoardSetting.cfg | 224 +
.../Library/BoardPcieLib/BoardPcieScreen.uni | 102 +
.../AmpereAltraPkg/AcpiCommonTables/Bert.aslc | 33 +
.../AmpereAltraPkg/AcpiCommonTables/Dbg2.aslc | 87 +
.../AmpereAltraPkg/AcpiCommonTables/Einj.asl | 165 +
.../AmpereAltraPkg/AcpiCommonTables/Fadt.aslc | 87 +
.../AmpereAltraPkg/AcpiCommonTables/Gtdt.aslc | 180 +
.../AmpereAltraPkg/AcpiCommonTables/Hest.asl | 330 +
.../AmpereAltraPkg/AcpiCommonTables/Sdei.asl | 17 +
.../AmpereAltraPkg/AcpiCommonTables/Spcr.aslc | 81 +
.../AmpereAltraPkg/AcpiCommonTables/Ssdt.asl | 15 +
.../AcpiConfigDxe/AcpiConfigStrings.uni | 27 +
.../BootProgressDxe/BootProgressDxe.uni | 16 +
.../BootProgressPeim/BootProgressPeim.uni | 18 +
.../Drivers/CpuConfigDxe/CpuConfigStrings.uni | 17 +
.../Drivers/MemInfoDxe/MemInfoDxe.uni | 9 +
.../Drivers/MemInfoDxe/MemInfoDxeExtra.uni | 9 +
.../MemInfoDxe/MemInfoScreenStrings.uni | 64 +
.../PlatformInfoDxe/PlatformInfoStrings.uni | 56 +
.../PlatformPcieDeviceConfigDxe.uni | 24 +
.../Drivers/RasConfigDxe/RasConfigStrings.uni | 38 +
.../AmpereAltraPkg/Drivers/RngDxe/RngDxe.uni | 10 +
.../Drivers/RngDxe/RngDxeExtra.uni | 9 +
.../WatchdogConfigStrings.uni | 26 +
.../ArmPlatformLib/ArmPlatformHelper.S | 45 +
.../AmpereAltraPkg/Library/RngLib/RngLib.uni | 13 +
.../PlatformUiLib/PlatformManagerStrings.uni | 21 +
.../PlatformUiLib/PlatformManagerUiLib.uni | 13 +
.../PlatformUiLib/PlatformManagerVfr.Vfr | 29 +
217 files changed, 57398 insertions(+)
create mode 100644 Platform/Ampere/AmperePlatformPkg/AmperePlatformPkg.dec
create mode 100644 Silicon/Ampere/AmpereAltraPkg/AmpereAltraPkg.dec
create mode 100644 Silicon/Ampere/AmpereSiliconPkg/AmpereSiliconPkg.dec
create mode 100644 Silicon/Ampere/AmpereAltraPkg/AmpereAltraPkg.dsc.inc
create mode 100644 Platform/Ampere/JadePkg/Jade.dsc
create mode 100644 Platform/Ampere/JadePkg/Jade.fdf
create mode 100644 Platform/Ampere/AmperePlatformPkg/Drivers/FailSafeDxe/FailSafeDxe.inf
create mode 100644 Platform/Ampere/AmperePlatformPkg/Library/FailSafeLib/FailSafeLib.inf
create mode 100644 Platform/Ampere/JadePkg/AcpiTables/AcpiTables.inf
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiPlatformDxe.inf
create mode 100644 Platform/Ampere/JadePkg/Drivers/PciPlatformDxe/PciPlatformDxe.inf
create mode 100644 Platform/Ampere/JadePkg/Drivers/SmbiosMemInfoDxe/SmbiosMemInfoDxe.inf
create mode 100644 Platform/Ampere/JadePkg/Drivers/SmbiosPlatformDxe/SmbiosPlatformDxe.inf
create mode 100644 Platform/Ampere/JadePkg/Library/BoardPcieLib/BoardPcieLib.inf
create mode 100644 Platform/Ampere/JadePkg/Library/OemMiscLib/OemMiscLib.inf
create mode 100644 Platform/Ampere/JadePkg/Library/PCF85063RealTimeClockLib/PCF85063RealTimeClockLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/AcpiCommonTables/AcpiCommonTables.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/ATFHobPei/ATFHobPeim.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/AcpiConfigDxe/AcpiConfigDxe.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/BootProgress/BootProgressDxe/BootProgressDxe.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/BootProgress/BootProgressPeim/BootProgressPeim.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/CpuConfigDxe/CpuConfigDxe.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/DebugInfoPei/DebugInfoPei.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/FlashFvbDxe/FlashFvbDxe.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/FlashPei/FlashPei.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MemInfoDxe/MemInfoDxe.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MemoryInitPeim/MemoryInitPeim.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MmCommunicationDxe/MmCommunication.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MmCommunicationPei/MmCommunicationPei.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformInfoDxe/PlatformInfoDxe.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformPcieDeviceConfigDxe/PlatformPcieDeviceConfigDxe.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/RasConfigDxe/RasConfigDxe.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/RngDxe/RngDxe.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/WatchdogConfigDxe/WatchdogConfigDxe.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/Ac01PcieLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/AmpereCpuLib/AmpereCpuLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/AmpereCpuLib/RuntimeAmpereCpuLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/ArmPlatformLib/ArmPlatformLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/DwGpioLib/DwGpioLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/DwI2cLib/DwI2cLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/FlashLib/FlashLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/MailboxInterfaceLib/MailboxInterfaceLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/MemoryInitPeiLib/MemoryInitPeiLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/MmCommunicationLib/MmCommunicationLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/NVParamLib/NVParamLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/PciHostBridgeLib/PciHostBridgeLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/PciSegmentLibPci/PciSegmentLibPci.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/PlatformPeiLib/PlatformPeiLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/RngLib/RngLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/SystemFirmwareInterfaceLib/SystemFirmwareInterfaceLib.inf
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/TrngLib/TrngLib.inf
create mode 100644 Silicon/Ampere/AmpereSiliconPkg/Library/PlatformUiLib/PlatformManagerUiLib.inf
create mode 100644 Platform/Ampere/AmperePlatformPkg/Drivers/FailSafeDxe/FailSafe.h
create mode 100644 Platform/Ampere/AmperePlatformPkg/Drivers/FailSafeDxe/Watchdog.h
create mode 100644 Platform/Ampere/AmperePlatformPkg/Include/Library/FailSafeLib.h
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiApei.h
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiNfit.h
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiPlatform.h
create mode 100644 Platform/Ampere/JadePkg/Library/BoardPcieLib/BoardPcie.h
create mode 100644 Platform/Ampere/JadePkg/Library/BoardPcieLib/BoardPcieScreen.h
create mode 100644 Platform/Ampere/JadePkg/Library/BoardPcieLib/BoardPcieVfr.h
create mode 100644 Platform/Ampere/JadePkg/Library/PCF85063RealTimeClockLib/PCF85063.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/AcpiConfigDxe/AcpiConfigDxe.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/CpuConfigDxe/CpuConfigDxe.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/CpuConfigDxe/CpuConfigNVDataStruc.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MemInfoDxe/MemInfoScreen.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MemInfoDxe/MemInfoScreenNVDataStruct.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MmCommunicationDxe/MmCommunicate.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformInfoDxe/PlatformInfoHii.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformPcieDeviceConfigDxe/PlatformPcieDeviceConfigDxe.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformPcieDeviceConfigDxe/PlatformPcieDeviceConfigVfr.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformPcieDeviceConfigDxe/PlatformPcieHelper.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/RasConfigDxe/RasConfigDxe.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/RasConfigDxe/RasConfigNVDataStruct.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/WatchdogConfigDxe/WatchdogConfigDxe.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/WatchdogConfigDxe/WatchdogConfigNVDataStruct.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Ac01PcieCommon.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/AcpiConfigNVDataStruct.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/AcpiHeader.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Guid/AcpiConfigFormSet.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Guid/CpuConfigHii.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Guid/PlatformInfoHobGuid.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Guid/PlatformPcieDeviceConfigHii.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Guid/WatchdogConfigHii.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Library/Ac01PcieLib.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Library/AmpereCpuLib.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Library/BoardPcieLib.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Library/FlashLib.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Library/GpioLib.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Library/I2cLib.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Library/MailboxInterfaceLib.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Library/MmCommunicationLib.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Library/NVParamLib.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Library/SystemFirmwareInterfaceLib.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Library/TrngLib.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/MmLib.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/NVParamDef.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/Platform/Ac01.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Include/PlatformInfoHob.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/PcieCore.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/PcieCoreCapCfg.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/PciePatchAcpi.h
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/ArmPlatformLib/PlatformMemoryMap.h
create mode 100644 Silicon/Ampere/AmpereSiliconPkg/Include/Guid/PlatformManagerHii.h
create mode 100644 Silicon/Ampere/AmpereSiliconPkg/Library/PlatformUiLib/PlatformManager.h
create mode 100644 Silicon/Ampere/AmpereSiliconPkg/Library/PlatformUiLib/PlatformManagerVfr.h
create mode 100644 Platform/Ampere/JadePkg/Library/BoardPcieLib/BoardPcieVfr.vfr
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/AcpiConfigDxe/AcpiConfigVfr.vfr
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/CpuConfigDxe/CpuConfigVfr.vfr
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MemInfoDxe/MemInfoScreenVfr.vfr
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformInfoDxe/PlatformInfoVfr.vfr
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformPcieDeviceConfigDxe/PlatformPcieDeviceConfigVfr.vfr
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/RasConfigDxe/RasConfigVfr.vfr
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/WatchdogConfigDxe/WatchdogConfigVfr.vfr
create mode 100644 Platform/Ampere/AmperePlatformPkg/Drivers/FailSafeDxe/FailSafeDxe.c
create mode 100644 Platform/Ampere/AmperePlatformPkg/Drivers/FailSafeDxe/Watchdog.c
create mode 100644 Platform/Ampere/AmperePlatformPkg/Library/FailSafeLib/FailSafeLib.c
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiApei.c
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiDsdt.c
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiMadt.c
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiNfit.c
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiPcct.c
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiPlatformDxe.c
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiPptt.c
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiSlit.c
create mode 100644 Platform/Ampere/JadePkg/Drivers/AcpiPlatformDxe/AcpiSrat.c
create mode 100644 Platform/Ampere/JadePkg/Drivers/PciPlatformDxe/PciPlatformDxe.c
create mode 100644 Platform/Ampere/JadePkg/Drivers/SmbiosMemInfoDxe/SmbiosMemInfoDxe.c
create mode 100644 Platform/Ampere/JadePkg/Drivers/SmbiosPlatformDxe/SmbiosPlatformDxe.c
create mode 100644 Platform/Ampere/JadePkg/Library/BoardPcieLib/BoardPcie.c
create mode 100644 Platform/Ampere/JadePkg/Library/BoardPcieLib/BoardPcieCommon.c
create mode 100644 Platform/Ampere/JadePkg/Library/BoardPcieLib/BoardPcieScreen.c
create mode 100644 Platform/Ampere/JadePkg/Library/OemMiscLib/OemMiscLib.c
create mode 100644 Platform/Ampere/JadePkg/Library/PCF85063RealTimeClockLib/PCF85063.c
create mode 100644 Platform/Ampere/JadePkg/Library/PCF85063RealTimeClockLib/PCF85063RealTimeClockLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/ATFHobPei/ATFHobPeim.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/AcpiConfigDxe/AcpiConfigDxe.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/BootProgress/BootProgressDxe/BootProgressDxe.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/BootProgress/BootProgressPeim/BootProgressPeim.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/CpuConfigDxe/CpuConfigDxe.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/DebugInfoPei/DebugInfoPei.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/FlashFvbDxe/FlashFvbDxe.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/FlashPei/FlashPei.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MemInfoDxe/MemInfoNvramLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MemInfoDxe/MemInfoScreen.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MemoryInitPeim/MemoryInitPeim.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MmCommunicationDxe/MmCommunication.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MmCommunicationPei/MmCommunicationPei.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformInfoDxe/PlatformInfoDxe.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformPcieDeviceConfigDxe/PlatformPcieDeviceConfigDxe.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformPcieDeviceConfigDxe/PlatformPcieHelper.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/RasConfigDxe/RasConfigDxe.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/RngDxe/RngDxe.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/WatchdogConfigDxe/WatchdogConfigDxe.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/PcieCore.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/PcieCoreLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/Ac01PcieLib/PciePatchAcpi.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/AmpereCpuLib/AmpereCpuLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/AmpereCpuLib/AmpereCpuLibCommon.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/AmpereCpuLib/RuntimeAmpereCpuLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/ArmPlatformLib/ArmPlatformLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/ArmPlatformLib/ArmPlatformLibMemory.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/DwGpioLib/DwGpioLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/DwI2cLib/DwI2cLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/FlashLib/FlashLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/MailboxInterfaceLib/MailboxInterfaceLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/MemoryInitPeiLib/MemoryInitPeiLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/MmCommunicationLib/MmCommunicationLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/NVParamLib/NVParamLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/PciHostBridgeLib/PciHostBridgeLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/PciSegmentLibPci/PciSegmentLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/PlatformPeiLib/PlatformPeiLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/RngLib/RngLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/SystemFirmwareInterfaceLib/SystemFirmwareInterfaceLib.c
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/TrngLib/TrngLib.c
create mode 100644 Silicon/Ampere/AmpereSiliconPkg/Library/PlatformUiLib/PlatformManager.c
create mode 100644 Platform/Ampere/AmperePlatformPkg/FvRules.fdf.inc
create mode 100644 Platform/Ampere/JadePkg/AcpiTables/CPU-S0.asi
create mode 100644 Platform/Ampere/JadePkg/AcpiTables/CPU-S1.asi
create mode 100644 Platform/Ampere/JadePkg/AcpiTables/CPU.asi
create mode 100644 Platform/Ampere/JadePkg/AcpiTables/Dsdt.asl
create mode 100644 Platform/Ampere/JadePkg/AcpiTables/PCI-PDRC.asi
create mode 100644 Platform/Ampere/JadePkg/AcpiTables/PCI-S0.Rca01.asi
create mode 100644 Platform/Ampere/JadePkg/AcpiTables/PCI-S0.asi
create mode 100644 Platform/Ampere/JadePkg/AcpiTables/PCI-S1.asi
create mode 100644 Platform/Ampere/JadePkg/AcpiTables/PMU-S0.asi
create mode 100644 Platform/Ampere/JadePkg/AcpiTables/PMU-S1.asi
create mode 100644 Platform/Ampere/JadePkg/AcpiTables/PMU.asi
create mode 100644 Platform/Ampere/JadePkg/JadeBoardSetting.cfg
create mode 100644 Platform/Ampere/JadePkg/Library/BoardPcieLib/BoardPcieScreen.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/AcpiCommonTables/Bert.aslc
create mode 100644 Silicon/Ampere/AmpereAltraPkg/AcpiCommonTables/Dbg2.aslc
create mode 100644 Silicon/Ampere/AmpereAltraPkg/AcpiCommonTables/Einj.asl
create mode 100644 Silicon/Ampere/AmpereAltraPkg/AcpiCommonTables/Fadt.aslc
create mode 100644 Silicon/Ampere/AmpereAltraPkg/AcpiCommonTables/Gtdt.aslc
create mode 100644 Silicon/Ampere/AmpereAltraPkg/AcpiCommonTables/Hest.asl
create mode 100644 Silicon/Ampere/AmpereAltraPkg/AcpiCommonTables/Sdei.asl
create mode 100644 Silicon/Ampere/AmpereAltraPkg/AcpiCommonTables/Spcr.aslc
create mode 100644 Silicon/Ampere/AmpereAltraPkg/AcpiCommonTables/Ssdt.asl
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/AcpiConfigDxe/AcpiConfigStrings.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/BootProgress/BootProgressDxe/BootProgressDxe.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/BootProgress/BootProgressPeim/BootProgressPeim.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/CpuConfigDxe/CpuConfigStrings.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MemInfoDxe/MemInfoDxe.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MemInfoDxe/MemInfoDxeExtra.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/MemInfoDxe/MemInfoScreenStrings.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformInfoDxe/PlatformInfoStrings.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/PlatformPcieDeviceConfigDxe/PlatformPcieDeviceConfigDxe.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/RasConfigDxe/RasConfigStrings.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/RngDxe/RngDxe.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/RngDxe/RngDxeExtra.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Drivers/WatchdogConfigDxe/WatchdogConfigStrings.uni
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/ArmPlatformLib/ArmPlatformHelper.S
create mode 100644 Silicon/Ampere/AmpereAltraPkg/Library/RngLib/RngLib.uni
create mode 100644 Silicon/Ampere/AmpereSiliconPkg/Library/PlatformUiLib/PlatformManagerStrings.uni
create mode 100644 Silicon/Ampere/AmpereSiliconPkg/Library/PlatformUiLib/PlatformManagerUiLib.uni
create mode 100644 Silicon/Ampere/AmpereSiliconPkg/Library/PlatformUiLib/PlatformManagerVfr.Vfr

--
2.17.1