From daa1f83b55cc45cbcf512d5eeb8398521568d860 Mon Sep 17 00:00:00 2001 From: Matt DeVillier Date: Mon, 28 Oct 2019 14:13:09 -0600 Subject: [PATCH] Add/use System76 firmware-smmstore driver Add/use System76 firmware-smmstore driver, to compact the smmstore NVRAM variables. Helps prevent corruption of NVRAM variables leading to boot hang. Compiled from system76/firmware-smmstore commit 2e94590 Signed-off-by: Matt DeVillier --- CorebootPayloadPkg/CorebootPayloadPkg.fdf | 4 ++++ .../s76-smmstore/s76-smmstore.efi | Bin 0 -> 75462 bytes .../s76-smmstore/s76-smmstore.inf | 9 +++++++++ 3 files changed, 13 insertions(+) create mode 100755 CorebootPayloadPkg/s76-smmstore/s76-smmstore.efi create mode 100644 CorebootPayloadPkg/s76-smmstore/s76-smmstore.inf diff --git a/CorebootPayloadPkg/CorebootPayloadPkg.fdf b/CorebootPayloadPkg/CorebootPayloadPkg.fdf index e16126cdd4..266df66624 100644 --- a/CorebootPayloadPkg/CorebootPayloadPkg.fdf +++ b/CorebootPayloadPkg/CorebootPayloadPkg.fdf @@ -110,6 +110,10 @@ INF MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf INF MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterRuntimeDxe.inf INF MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf INF PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf +!if $(ARCH) == IA32 +!else +INF RuleOverride=BINARY USE = X64 CorebootPayloadPkg/s76-smmstore/s76-smmstore.inf +!endif INF MdeModulePkg/Universal/Variable/EmuRuntimeDxe/EmuVariableRuntimeDxe.inf INF UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf diff --git a/CorebootPayloadPkg/s76-smmstore/s76-smmstore.efi b/CorebootPayloadPkg/s76-smmstore/s76-smmstore.efi new file mode 100755 index 0000000000000000000000000000000000000000..dd54996727d848eba963c0250853a0fe3fd936b3 GIT binary patch literal 75462 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 DO$G4^ literal 0 HcmV?d00001 diff --git a/CorebootPayloadPkg/s76-smmstore/s76-smmstore.inf b/CorebootPayloadPkg/s76-smmstore/s76-smmstore.inf new file mode 100644 index 0000000000..147bf3eb72 --- /dev/null +++ b/CorebootPayloadPkg/s76-smmstore/s76-smmstore.inf @@ -0,0 +1,9 @@ +[Defines] + INF_VERSION = 0x00010005 + BASE_NAME = system76-firmware-smmstore + FILE_GUID = 764f0f8d-658b-4d32-a057-b44fb209512c + MODULE_TYPE = UEFI_DRIVER + VERSION_STRING = 1.0 + +[Binaries.X64] + PE32|s76-smmstore.efi|*