Skip to content

Commit 0fb124e

Browse files
author
Laszlo Ersek
committed
OvmfPkg: S3 Suspend: pull in SmmLockBox driver
"MdeModulePkg/Universal/LockBox/SmmLockBox/SmmLockBox.inf" produces gEfiSmmLockBoxCommunicationGuid, implementing LockBox services in SMRAM for the SmmLockBoxLib library (used in the following patches). gEfiSmmLockBoxCommunicationGuid EFI_SMM_ACCESS2_PROTOCOL [EmuSmmDxe] gEfiSmmSwDispatch2ProtocolGuid [unneeded / EmuSmmDxe] This is the "trusted" SMM driver that verifies and serves SMRAM change requests from "untrusted" / 3rd party DXE drivers. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com>
1 parent 5188c6c commit 0fb124e

File tree

6 files changed

+54
-0
lines changed

6 files changed

+54
-0
lines changed

OvmfPkg/OvmfPkgIa32.dsc

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -264,6 +264,14 @@
264264
DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
265265
!endif
266266

267+
[LibraryClasses.common.DXE_SMM_DRIVER]
268+
SmmServicesTableLib|MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf
269+
!ifdef $(DEBUG_ON_SERIAL_PORT)
270+
DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
271+
!else
272+
DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
273+
!endif
274+
267275
################################################################################
268276
#
269277
# Pcd Section - list of all EDK II PCD Entries defined by this Platform.
@@ -483,6 +491,7 @@
483491
OvmfPkg/EmuSmmDxe/EmuSmmDxe.inf
484492
MdeModulePkg/Core/PiSmmCore/PiSmmIpl.inf
485493
MdeModulePkg/Core/PiSmmCore/PiSmmCore.inf
494+
MdeModulePkg/Universal/LockBox/SmmLockBox/SmmLockBox.inf
486495

487496
#
488497
# ACPI Support

OvmfPkg/OvmfPkgIa32.fdf

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -318,6 +318,7 @@ INF OvmfPkg/SmbiosPlatformDxe/SmbiosPlatformDxe.inf
318318
INF OvmfPkg/EmuSmmDxe/EmuSmmDxe.inf
319319
INF MdeModulePkg/Core/PiSmmCore/PiSmmIpl.inf
320320
INF MdeModulePkg/Core/PiSmmCore/PiSmmCore.inf
321+
INF MdeModulePkg/Universal/LockBox/SmmLockBox/SmmLockBox.inf
321322

322323
INF MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf
323324
INF OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf
@@ -500,3 +501,11 @@ FILE FV_IMAGE = 9E21FD93-9C72-4c15-8C4B-E77F1DB2D792 {
500501
UI STRING="$(MODULE_NAME)" Optional
501502
VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
502503
}
504+
505+
[Rule.Common.DXE_SMM_DRIVER]
506+
FILE DRIVER = $(NAMED_GUID) {
507+
DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
508+
PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
509+
UI STRING="$(MODULE_NAME)" Optional
510+
VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
511+
}

OvmfPkg/OvmfPkgIa32X64.dsc

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -269,6 +269,14 @@
269269
DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
270270
!endif
271271

272+
[LibraryClasses.common.DXE_SMM_DRIVER]
273+
SmmServicesTableLib|MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf
274+
!ifdef $(DEBUG_ON_SERIAL_PORT)
275+
DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
276+
!else
277+
DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
278+
!endif
279+
272280
################################################################################
273281
#
274282
# Pcd Section - list of all EDK II PCD Entries defined by this Platform.
@@ -490,6 +498,7 @@
490498
OvmfPkg/EmuSmmDxe/EmuSmmDxe.inf
491499
MdeModulePkg/Core/PiSmmCore/PiSmmIpl.inf
492500
MdeModulePkg/Core/PiSmmCore/PiSmmCore.inf
501+
MdeModulePkg/Universal/LockBox/SmmLockBox/SmmLockBox.inf
493502

494503
#
495504
# ACPI Support

OvmfPkg/OvmfPkgIa32X64.fdf

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -318,6 +318,7 @@ INF OvmfPkg/SmbiosPlatformDxe/SmbiosPlatformDxe.inf
318318
INF OvmfPkg/EmuSmmDxe/EmuSmmDxe.inf
319319
INF MdeModulePkg/Core/PiSmmCore/PiSmmIpl.inf
320320
INF MdeModulePkg/Core/PiSmmCore/PiSmmCore.inf
321+
INF MdeModulePkg/Universal/LockBox/SmmLockBox/SmmLockBox.inf
321322

322323
INF MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf
323324
INF OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf
@@ -500,3 +501,11 @@ FILE FV_IMAGE = 9E21FD93-9C72-4c15-8C4B-E77F1DB2D792 {
500501
UI STRING="$(MODULE_NAME)" Optional
501502
VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
502503
}
504+
505+
[Rule.Common.DXE_SMM_DRIVER]
506+
FILE DRIVER = $(NAMED_GUID) {
507+
DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
508+
PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
509+
UI STRING="$(MODULE_NAME)" Optional
510+
VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
511+
}

OvmfPkg/OvmfPkgX64.dsc

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -269,6 +269,14 @@
269269
DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
270270
!endif
271271

272+
[LibraryClasses.common.DXE_SMM_DRIVER]
273+
SmmServicesTableLib|MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf
274+
!ifdef $(DEBUG_ON_SERIAL_PORT)
275+
DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
276+
!else
277+
DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.inf
278+
!endif
279+
272280
################################################################################
273281
#
274282
# Pcd Section - list of all EDK II PCD Entries defined by this Platform.
@@ -488,6 +496,7 @@
488496
OvmfPkg/EmuSmmDxe/EmuSmmDxe.inf
489497
MdeModulePkg/Core/PiSmmCore/PiSmmIpl.inf
490498
MdeModulePkg/Core/PiSmmCore/PiSmmCore.inf
499+
MdeModulePkg/Universal/LockBox/SmmLockBox/SmmLockBox.inf
491500

492501
#
493502
# ACPI Support

OvmfPkg/OvmfPkgX64.fdf

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -318,6 +318,7 @@ INF OvmfPkg/SmbiosPlatformDxe/SmbiosPlatformDxe.inf
318318
INF OvmfPkg/EmuSmmDxe/EmuSmmDxe.inf
319319
INF MdeModulePkg/Core/PiSmmCore/PiSmmIpl.inf
320320
INF MdeModulePkg/Core/PiSmmCore/PiSmmCore.inf
321+
INF MdeModulePkg/Universal/LockBox/SmmLockBox/SmmLockBox.inf
321322

322323
INF MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf
323324
INF OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf
@@ -500,3 +501,11 @@ FILE FV_IMAGE = 9E21FD93-9C72-4c15-8C4B-E77F1DB2D792 {
500501
UI STRING="$(MODULE_NAME)" Optional
501502
VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
502503
}
504+
505+
[Rule.Common.DXE_SMM_DRIVER]
506+
FILE DRIVER = $(NAMED_GUID) {
507+
DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
508+
PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
509+
UI STRING="$(MODULE_NAME)" Optional
510+
VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
511+
}

0 commit comments

Comments
 (0)