summaryrefslogtreecommitdiffstats
path: root/ShellPkg/Library/UefiShellAcpiViewCommandLib/AcpiParser.h
diff options
context:
space:
mode:
authorMarc Moisson-Franckhauser <marc.moisson-franckhauser@arm.com>2020-11-04 19:17:02 +0800
committermergify[bot] <37929162+mergify[bot]@users.noreply.github.com>2021-02-03 02:22:53 +0000
commit618e6a1f21a11eaee0a92e19c753969eb4a1b198 (patch)
treebbd30c42ec6b0a2b8a3f03f4fa30be4bc41df9e3 /ShellPkg/Library/UefiShellAcpiViewCommandLib/AcpiParser.h
parent839f649abb6d11fa3e9137ba2afdb2d1d037ba60 (diff)
downloadedk2-618e6a1f21a11eaee0a92e19c753969eb4a1b198.tar.gz
edk2-618e6a1f21a11eaee0a92e19c753969eb4a1b198.tar.bz2
edk2-618e6a1f21a11eaee0a92e19c753969eb4a1b198.zip
ShellPkg/AcpiView: HMAT Parser
Bugzilla: 3045 (https://bugzilla.tianocore.org/show_bug.cgi?id=3045) Add a new parser for the Heterogeneous Memory Attribute Table. The parser also validates some fields for this table. The HMAT table is used to describe the memory attributes such as memory side cache attributes and bandwidth and latency details related to memory proximity domains. The info in the HMAT table can be used by an operating system for optimisation. Signed-off-by: Marc Moisson-Franckhauser <marc.moisson-franckhauser@arm.com> Signed-off-by: Sami Mujawar <sami.mujawar@arm.com> Tested-by: Vijayenthiran Subramaniam <vijayenthiran.subramaniam@arm.com> Reviewed-by: Zhichao Gao <zhichao.gao@intel.com>
Diffstat (limited to 'ShellPkg/Library/UefiShellAcpiViewCommandLib/AcpiParser.h')
-rw-r--r--ShellPkg/Library/UefiShellAcpiViewCommandLib/AcpiParser.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/ShellPkg/Library/UefiShellAcpiViewCommandLib/AcpiParser.h b/ShellPkg/Library/UefiShellAcpiViewCommandLib/AcpiParser.h
index a37b62bc7e..0b7726b9d5 100644
--- a/ShellPkg/Library/UefiShellAcpiViewCommandLib/AcpiParser.h
+++ b/ShellPkg/Library/UefiShellAcpiViewCommandLib/AcpiParser.h
@@ -613,6 +613,32 @@ ParseAcpiGtdt (
);
/**
+ This function parses the ACPI HMAT table.
+ When trace is enabled this function parses the HMAT table and
+ traces the ACPI table fields.
+
+ This function parses the following HMAT structures:
+ - Memory Proximity Domain Attributes Structure (Type 0)
+ - System Locality Latency and Bandwidth Info Structure (Type 1)
+ - Memory Side Cache Info structure (Type 2)
+
+ This function also performs validation of the ACPI table fields.
+
+ @param [in] Trace If TRUE, trace the ACPI fields.
+ @param [in] Ptr Pointer to the start of the buffer.
+ @param [in] AcpiTableLength Length of the ACPI table.
+ @param [in] AcpiTableRevision Revision of the ACPI table.
+**/
+VOID
+EFIAPI
+ParseAcpiHmat (
+ IN BOOLEAN Trace,
+ IN UINT8* Ptr,
+ IN UINT32 AcpiTableLength,
+ IN UINT8 AcpiTableRevision
+ );
+
+/**
This function parses the ACPI IORT table.
When trace is enabled this function parses the IORT table and
traces the ACPI fields.