Commit 5188c6c
Laszlo Ersek
OvmfPkg: S3 Suspend: pull in DXE driver for EFI_SMM_COMMUNICATION_PROTOCOL
The low-level data transfer between S3 Suspend and S3 Resume happens thru
SMRAM. SMRAM is theoretically accessible to SMM drivers only; other
("untrusted") drivers can only talk to the former via
EFI_SMM_COMMUNICATION_PROTOCOL.
"MdeModulePkg/Core/PiSmmCore/PiSmmIpl.inf" implements the SMM Initial
Program Loader. It produces EFI_SMM_BASE2_PROTOCOL and
EFI_SMM_COMMUNICATION_PROTOCOL, relying on the previous patch:
EFI_SMM_COMMUNICATION_PROTOCOL [PiSmmCore]
EFI_SMM_ACCESS2_PROTOCOL [EmuSmmDxe]
EFI_SMM_CONTROL2_PROTOCOL [EmuSmmDxe]
EFI_SMM_BASE2_PROTOCOL [PiSmmCore]
EFI_SMM_ACCESS2_PROTOCOL [EmuSmmDxe]
EFI_SMM_CONTROL2_PROTOCOL [EmuSmmDxe]
The SMM IPL loads the SMM Core into SMRAM and executes it from there.
Therefore we need to add the SMM Core to the build as well.
The SMM Core introduces further DSC dependencies:
- library classes that are specific to it (SmmCorePlatformHookLib),
- library instances that are specific to it
(PiSmmCoreMemoryAllocationLib),
- the ReportStatusCodeLib dependency can be resolved by the already used
DxeReportStatusCodeLib (it serves SMM_CORE as well)
- DebugLib simply needs to be resolved (both serial and qemu debug port
implementations are BASE)
...and FDF / Rule dependencies:
- we introduce an SMM_CORE rule that imitates DXE_CORE (since the contents
is a core binary that will be executed after relocation)
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Laszlo Ersek <lersek@redhat.com>1 parent 59fc7eb commit 5188c6c
File tree
6 files changed
+63
-0
lines changed- OvmfPkg
6 files changed
+63
-0
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
254 | 254 | | |
255 | 255 | | |
256 | 256 | | |
| 257 | + | |
| 258 | + | |
| 259 | + | |
| 260 | + | |
| 261 | + | |
| 262 | + | |
| 263 | + | |
| 264 | + | |
| 265 | + | |
| 266 | + | |
257 | 267 | | |
258 | 268 | | |
259 | 269 | | |
| |||
471 | 481 | | |
472 | 482 | | |
473 | 483 | | |
| 484 | + | |
| 485 | + | |
474 | 486 | | |
475 | 487 | | |
476 | 488 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
316 | 316 | | |
317 | 317 | | |
318 | 318 | | |
| 319 | + | |
| 320 | + | |
319 | 321 | | |
320 | 322 | | |
321 | 323 | | |
| |||
491 | 493 | | |
492 | 494 | | |
493 | 495 | | |
| 496 | + | |
| 497 | + | |
| 498 | + | |
| 499 | + | |
| 500 | + | |
| 501 | + | |
| 502 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
259 | 259 | | |
260 | 260 | | |
261 | 261 | | |
| 262 | + | |
| 263 | + | |
| 264 | + | |
| 265 | + | |
| 266 | + | |
| 267 | + | |
| 268 | + | |
| 269 | + | |
| 270 | + | |
| 271 | + | |
262 | 272 | | |
263 | 273 | | |
264 | 274 | | |
| |||
478 | 488 | | |
479 | 489 | | |
480 | 490 | | |
| 491 | + | |
| 492 | + | |
481 | 493 | | |
482 | 494 | | |
483 | 495 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
316 | 316 | | |
317 | 317 | | |
318 | 318 | | |
| 319 | + | |
| 320 | + | |
319 | 321 | | |
320 | 322 | | |
321 | 323 | | |
| |||
491 | 493 | | |
492 | 494 | | |
493 | 495 | | |
| 496 | + | |
| 497 | + | |
| 498 | + | |
| 499 | + | |
| 500 | + | |
| 501 | + | |
| 502 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
259 | 259 | | |
260 | 260 | | |
261 | 261 | | |
| 262 | + | |
| 263 | + | |
| 264 | + | |
| 265 | + | |
| 266 | + | |
| 267 | + | |
| 268 | + | |
| 269 | + | |
| 270 | + | |
| 271 | + | |
262 | 272 | | |
263 | 273 | | |
264 | 274 | | |
| |||
476 | 486 | | |
477 | 487 | | |
478 | 488 | | |
| 489 | + | |
| 490 | + | |
479 | 491 | | |
480 | 492 | | |
481 | 493 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
316 | 316 | | |
317 | 317 | | |
318 | 318 | | |
| 319 | + | |
| 320 | + | |
319 | 321 | | |
320 | 322 | | |
321 | 323 | | |
| |||
491 | 493 | | |
492 | 494 | | |
493 | 495 | | |
| 496 | + | |
| 497 | + | |
| 498 | + | |
| 499 | + | |
| 500 | + | |
| 501 | + | |
| 502 | + | |
0 commit comments