audk/MdePkg/Include
Kun Qin 7cda5d9e3a MdePkg: MmUnblockMemoryLib: Added definition and null instance
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3168

This interface provides an abstration layer to allow MM modules to access
requested areas that are outside of MMRAM. On MM model that blocks all
non-MMRAM accesses, areas requested through this API will be mapped or
unblocked for accessibility inside MM environment.

For MM modules that need to access regions outside of MMRAMs, the agents
that set up these regions are responsible for invoking this API in order
for these memory areas to be accessible from inside MM.

Example usages:
1. To enable runtime cache feature for variable service, Variable MM
module will need to access the allocated runtime buffer. Thus the agent
sets up these buffers, VariableSmmRuntimeDxe, will need to invoke this
API to make these regions accessible by Variable MM.
2. For TPM ACPI table to communicate to physical presence handler, the
corresponding NVS region has to be accessible from inside MM. Once the
NVS region are assigned, it needs to be unblocked thourgh this API.

Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Liming Gao <gaoliming@byosoft.com.cn>
Cc: Zhiguang Liu <zhiguang.liu@intel.com>
Cc: Hao A Wu <hao.a.wu@intel.com>
Cc: Jiewen Yao <jiewen.yao@intel.com>
Cc: Laszlo Ersek <lersek@redhat.com>

Signed-off-by: Kun Qin <kun.q@outlook.com>
Acked-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn>
Message-Id: <MWHPR06MB31028AF0D0785B93E4E7CF63F3969@MWHPR06MB3102.namprd06.prod.outlook.com>
2021-03-05 15:25:07 +00:00
..
AArch64 MdePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:13 -07:00
Arm MdePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:13 -07:00
Ebc MdePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:13 -07:00
Guid MdePkg/SystemResourceTable.h: Add vendor range values 2020-10-28 06:05:52 +00:00
Ia32 MdePkg/Include: Add CET instructions to Nasm.inc 2021-03-02 05:11:55 +00:00
IndustryStandard MdePkg: Update IndustryStandard/SmBios.h with processor status data 2021-02-08 19:35:23 +00:00
Library MdePkg: MmUnblockMemoryLib: Added definition and null instance 2021-03-05 15:25:07 +00:00
Pi MdePkg: Updates to PI 1.7 Revision numbers 2020-05-15 08:06:09 +00:00
Ppi MdePkg: Added header file for Delayed Dispatch PPI 2020-05-15 08:06:09 +00:00
Protocol MdeModulePkg/Graphics: Fix spelling mistakes 2021-01-06 05:27:29 +00:00
Register MdePkg/Cpuid.h: Change and add some macro definitions. 2021-01-26 04:14:10 +00:00
RiscV64 MdePkg: Add RISC-V RISCV64 binding 2020-05-07 03:17:15 +00:00
Uefi MdePkg/UefiSpec: separate page access bitmask from SP and CRYPTO caps 2020-10-10 04:04:50 +00:00
X64 MdePkg/Include: Add CET instructions to Nasm.inc 2021-03-02 05:11:55 +00:00
Base.h MdePkg Base.h: Delete prototype for __builtin_return_address 2020-07-28 00:28:14 +00:00
PiDxe.h MdePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:13 -07:00
PiMm.h MdePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:13 -07:00
PiPei.h MdePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:13 -07:00
PiSmm.h MdePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:13 -07:00
Uefi.h MdePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:13 -07:00