summaryrefslogtreecommitdiffstats
path: root/Vlv2DeviceRefCodePkg
diff options
context:
space:
mode:
authorLu, ShifeiX A <shifeix.a.lu@intel.com>2016-07-28 16:21:28 +0800
committerdavid wei <david.wei@intel.com>2016-07-31 11:59:54 +0800
commit2c855d3aaf36da80f8c4f0ae12d31900a628b0a9 (patch)
tree4d46beb0af3f959679b8bc9c9c7abed476ab29ae /Vlv2DeviceRefCodePkg
parentb52e697b2a68e37e973653877733484ad2f65c29 (diff)
downloadedk2-2c855d3aaf36da80f8c4f0ae12d31900a628b0a9.tar.gz
edk2-2c855d3aaf36da80f8c4f0ae12d31900a628b0a9.tar.bz2
edk2-2c855d3aaf36da80f8c4f0ae12d31900a628b0a9.zip
Vlv2DeviceRefCodePkg&Vlv2DevicePkg:Add sample WSMT table.
This is an sample WSMT table, which we only update BIT0 and BIT1 of Protections flags fields. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: lushifex <shifeix.a.lu@intel.com> Reviewed-by: David Wei <david.wei@intel.com>
Diffstat (limited to 'Vlv2DeviceRefCodePkg')
-rw-r--r--Vlv2DeviceRefCodePkg/AcpiTablesPCAT/AcpiTables.inf3
-rw-r--r--Vlv2DeviceRefCodePkg/AcpiTablesPCAT/Wsmt/Wsmt.aslc60
2 files changed, 62 insertions, 1 deletions
diff --git a/Vlv2DeviceRefCodePkg/AcpiTablesPCAT/AcpiTables.inf b/Vlv2DeviceRefCodePkg/AcpiTablesPCAT/AcpiTables.inf
index 9c006517c4..e9a7d803d7 100644
--- a/Vlv2DeviceRefCodePkg/AcpiTablesPCAT/AcpiTables.inf
+++ b/Vlv2DeviceRefCodePkg/AcpiTablesPCAT/AcpiTables.inf
@@ -5,7 +5,7 @@
# All .asi files tagged with "ToolCode="DUMMY"" in following file list are device description and are included
# by top level ASL file which will be dealed with by asl.exe application.
#
-# Copyright (c) 1999 - 2015, Intel Corporation. All rights reserved
+# Copyright (c) 1999 - 2016, Intel Corporation. All rights reserved
#
# This program and the accompanying materials are licensed and made available under
# the terms and conditions of the BSD License that accompanies this distribution.
@@ -37,6 +37,7 @@
Mcfg/Mcfg.aslc
Hpet/Hpet.aslc
Lpit/Lpit.aslc
+ Wsmt/Wsmt.aslc
[Packages]
diff --git a/Vlv2DeviceRefCodePkg/AcpiTablesPCAT/Wsmt/Wsmt.aslc b/Vlv2DeviceRefCodePkg/AcpiTablesPCAT/Wsmt/Wsmt.aslc
new file mode 100644
index 0000000000..4142201ffd
--- /dev/null
+++ b/Vlv2DeviceRefCodePkg/AcpiTablesPCAT/Wsmt/Wsmt.aslc
@@ -0,0 +1,60 @@
+/*++
+ Copyright (c) 2016, Intel Corporation. All rights reserved.<BR>
+
+ This program and the accompanying materials are licensed and made available under
+ the terms and conditions of the BSD License that accompanies this distribution.
+ The full text of the license may be found at
+ http://opensource.org/licenses/bsd-license.php.
+
+ THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
+ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
+
+
+
+Module Name:
+
+ Wsmt.c
+
+Abstract:
+
+ This file contains a structure definition for the Windows SMM Security
+ Mitigations Table (WSMT).
+
+++*/
+
+//
+// Statements that include other files
+//
+#include "AcpiTablePlatform.h"
+#include <IndustryStandard/WindowsSmmSecurityMitigationTable.h>
+
+//
+// WSMT Table definition
+//
+EFI_ACPI_WSMT_TABLE WSMT = {
+ EFI_ACPI_WINDOWS_SMM_SECURITY_MITIGATION_TABLE_SIGNATURE,
+ sizeof (EFI_ACPI_WSMT_TABLE),
+ EFI_WSMT_TABLE_REVISION,
+ //
+ // Checksum will be updated at runtime
+ //
+ 0,
+ EFI_ACPI_OEM_ID, // OEMID is a 6 bytes long field
+ EFI_ACPI_OEM_TABLE_ID, // OEM table identification(8 bytes long)
+ EFI_ACPI_OEM_REVISION, // OEM revision
+ EFI_ACPI_CREATOR_ID, // ASL compiler vendor ID
+ EFI_ACPI_CREATOR_REVISION, // ASL compiler revision number
+ 0x00000000, // Protection flag
+};
+
+VOID*
+ReferenceAcpiTable (
+ VOID
+ )
+{
+ //
+ // Reference the table being generated to prevent the optimizer from
+ // removing the data structure from the executable
+ //
+ return (VOID*)&WSMT;
+}