]> git.proxmox.com Git - mirror_edk2.git/blobdiff - Vlv2DeviceRefCodePkg/AcpiTablesPCAT/Wsmt/Wsmt.aslc
Vlv2DeviceRefCodePkg&Vlv2DevicePkg:Add sample WSMT table.
[mirror_edk2.git] / Vlv2DeviceRefCodePkg / AcpiTablesPCAT / Wsmt / Wsmt.aslc
diff --git a/Vlv2DeviceRefCodePkg/AcpiTablesPCAT/Wsmt/Wsmt.aslc b/Vlv2DeviceRefCodePkg/AcpiTablesPCAT/Wsmt/Wsmt.aslc
new file mode 100644 (file)
index 0000000..4142201
--- /dev/null
@@ -0,0 +1,60 @@
+/*++\r
+  Copyright (c) 2016, Intel Corporation. All rights reserved.<BR>\r
+\r
+  This program and the accompanying materials are licensed and made available under\r
+  the terms and conditions of the BSD License that accompanies this distribution.\r
+  The full text of the license may be found at\r
+  http://opensource.org/licenses/bsd-license.php.\r
+\r
+  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
+  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+\r
+\r
+\r
+Module Name:\r
+\r
+  Wsmt.c\r
+\r
+Abstract:\r
+\r
+  This file contains a structure definition for the Windows SMM Security\r
+  Mitigations Table (WSMT).\r
+\r
+++*/\r
+\r
+//\r
+// Statements that include other files\r
+//\r
+#include "AcpiTablePlatform.h"\r
+#include <IndustryStandard/WindowsSmmSecurityMitigationTable.h>\r
+\r
+//\r
+// WSMT Table definition\r
+//\r
+EFI_ACPI_WSMT_TABLE WSMT = {\r
+  EFI_ACPI_WINDOWS_SMM_SECURITY_MITIGATION_TABLE_SIGNATURE,\r
+  sizeof (EFI_ACPI_WSMT_TABLE),\r
+  EFI_WSMT_TABLE_REVISION,\r
+  //\r
+  // Checksum will be updated at runtime\r
+  //\r
+  0,\r
+  EFI_ACPI_OEM_ID,            // OEMID is a 6 bytes long field\r
+  EFI_ACPI_OEM_TABLE_ID,      // OEM table identification(8 bytes long)\r
+  EFI_ACPI_OEM_REVISION,      // OEM revision\r
+  EFI_ACPI_CREATOR_ID,        // ASL compiler vendor ID\r
+  EFI_ACPI_CREATOR_REVISION,  // ASL compiler revision number\r
+  0x00000000,                 // Protection flag\r
+};\r
+\r
+VOID*\r
+ReferenceAcpiTable (\r
+  VOID\r
+  )\r
+{\r
+  //\r
+  // Reference the table being generated to prevent the optimizer from\r
+  // removing the data structure from the executable\r
+  //\r
+  return (VOID*)&WSMT;\r
+}\r