Revision: 19061
http://sourceforge.net/p/edk2/code/19061
Author: lersek
Date: 2015-11-30 18:48:46 +0000 (Mon, 30 Nov 2015)
Log Message:
-----------
OvmfPkg: build PiSmmCpuDxeSmm for -D SMM_REQUIRE
At this point we can enable building PiSmmCpuDxeSmm.
CPU specific features, like SMRR detection, and functions that are used to
initialize SMM and process SMIs, are abstracted through the
SmmCpuFeaturesLib class for the PiSmmCpuDxeSmm module. Resolve it to our
own implementation under OvmfPkg -- it allows PiSmmCpuDxeSmm to work with
QEMU's and KVM's 64-bit state save map format, which follows the
definition from AMD's programmer manual.
SmmCpuPlatformHookLib provides platform specific functions that are used
to initialize SMM and process SMIs. Resolve it to the one Null instance
provided by UefiCpuPkg, which is expected to work for most platforms.
Cc: Paolo Bonzini <[email protected]>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Laszlo Ersek <[email protected]>
[[email protected]: resolve the SmmCpuFeaturesLib class to OVMF's own
instance]
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Paolo Bonzini <[email protected]>
Reviewed-by: Michael Kinney <[email protected]>
Modified Paths:
--------------
trunk/edk2/OvmfPkg/OvmfPkgIa32.dsc
trunk/edk2/OvmfPkg/OvmfPkgIa32.fdf
trunk/edk2/OvmfPkg/OvmfPkgIa32X64.dsc
trunk/edk2/OvmfPkg/OvmfPkgIa32X64.fdf
trunk/edk2/OvmfPkg/OvmfPkgX64.dsc
trunk/edk2/OvmfPkg/OvmfPkgX64.fdf
Modified: trunk/edk2/OvmfPkg/OvmfPkgIa32.dsc
===================================================================
--- trunk/edk2/OvmfPkg/OvmfPkgIa32.dsc 2015-11-30 18:46:55 UTC (rev 19060)
+++ trunk/edk2/OvmfPkg/OvmfPkgIa32.dsc 2015-11-30 18:48:46 UTC (rev 19061)
@@ -706,4 +706,9 @@
<LibraryClasses>
LockBoxLib|MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf
}
+ UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf {
+ <LibraryClasses>
+
SmmCpuPlatformHookLib|UefiCpuPkg/Library/SmmCpuPlatformHookLibNull/SmmCpuPlatformHookLibNull.inf
+ SmmCpuFeaturesLib|OvmfPkg/Library/SmmCpuFeaturesLib/SmmCpuFeaturesLib.inf
+ }
!endif
Modified: trunk/edk2/OvmfPkg/OvmfPkgIa32.fdf
===================================================================
--- trunk/edk2/OvmfPkg/OvmfPkgIa32.fdf 2015-11-30 18:46:55 UTC (rev 19060)
+++ trunk/edk2/OvmfPkg/OvmfPkgIa32.fdf 2015-11-30 18:48:46 UTC (rev 19061)
@@ -363,6 +363,7 @@
INF MdeModulePkg/Core/PiSmmCore/PiSmmCore.inf
INF UefiCpuPkg/CpuIo2Smm/CpuIo2Smm.inf
INF MdeModulePkg/Universal/LockBox/SmmLockBox/SmmLockBox.inf
+INF UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf
!endif
################################################################################
Modified: trunk/edk2/OvmfPkg/OvmfPkgIa32X64.dsc
===================================================================
--- trunk/edk2/OvmfPkg/OvmfPkgIa32X64.dsc 2015-11-30 18:46:55 UTC (rev
19060)
+++ trunk/edk2/OvmfPkg/OvmfPkgIa32X64.dsc 2015-11-30 18:48:46 UTC (rev
19061)
@@ -713,4 +713,9 @@
<LibraryClasses>
LockBoxLib|MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf
}
+ UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf {
+ <LibraryClasses>
+
SmmCpuPlatformHookLib|UefiCpuPkg/Library/SmmCpuPlatformHookLibNull/SmmCpuPlatformHookLibNull.inf
+ SmmCpuFeaturesLib|OvmfPkg/Library/SmmCpuFeaturesLib/SmmCpuFeaturesLib.inf
+ }
!endif
Modified: trunk/edk2/OvmfPkg/OvmfPkgIa32X64.fdf
===================================================================
--- trunk/edk2/OvmfPkg/OvmfPkgIa32X64.fdf 2015-11-30 18:46:55 UTC (rev
19060)
+++ trunk/edk2/OvmfPkg/OvmfPkgIa32X64.fdf 2015-11-30 18:48:46 UTC (rev
19061)
@@ -363,6 +363,7 @@
INF MdeModulePkg/Core/PiSmmCore/PiSmmCore.inf
INF UefiCpuPkg/CpuIo2Smm/CpuIo2Smm.inf
INF MdeModulePkg/Universal/LockBox/SmmLockBox/SmmLockBox.inf
+INF UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf
!endif
################################################################################
Modified: trunk/edk2/OvmfPkg/OvmfPkgX64.dsc
===================================================================
--- trunk/edk2/OvmfPkg/OvmfPkgX64.dsc 2015-11-30 18:46:55 UTC (rev 19060)
+++ trunk/edk2/OvmfPkg/OvmfPkgX64.dsc 2015-11-30 18:48:46 UTC (rev 19061)
@@ -711,4 +711,9 @@
<LibraryClasses>
LockBoxLib|MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf
}
+ UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf {
+ <LibraryClasses>
+
SmmCpuPlatformHookLib|UefiCpuPkg/Library/SmmCpuPlatformHookLibNull/SmmCpuPlatformHookLibNull.inf
+ SmmCpuFeaturesLib|OvmfPkg/Library/SmmCpuFeaturesLib/SmmCpuFeaturesLib.inf
+ }
!endif
Modified: trunk/edk2/OvmfPkg/OvmfPkgX64.fdf
===================================================================
--- trunk/edk2/OvmfPkg/OvmfPkgX64.fdf 2015-11-30 18:46:55 UTC (rev 19060)
+++ trunk/edk2/OvmfPkg/OvmfPkgX64.fdf 2015-11-30 18:48:46 UTC (rev 19061)
@@ -363,6 +363,7 @@
INF MdeModulePkg/Core/PiSmmCore/PiSmmCore.inf
INF UefiCpuPkg/CpuIo2Smm/CpuIo2Smm.inf
INF MdeModulePkg/Universal/LockBox/SmmLockBox/SmmLockBox.inf
+INF UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf
!endif
################################################################################
------------------------------------------------------------------------------
Go from Idea to Many App Stores Faster with Intel(R) XDK
Give your users amazing mobile app experiences with Intel(R) XDK.
Use one codebase in this all-in-one HTML5 development environment.
Design, debug & build mobile apps & 2D/3D high-impact games for multiple OSs.
http://pubads.g.doubleclick.net/gampad/clk?id=254741911&iu=/4140
_______________________________________________
edk2-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-commits