/*++
  Copyright (c) 2016, Intel Corporation. All rights reserved.<BR>

  SPDX-License-Identifier: BSD-2-Clause-Patent



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;
}
