/** @file
This code provides a initialization of intel VT-d (Virtualization Technology for Directed I/O).
Copyright (c) 2017, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent
**/
#ifndef _VT_D_H_
#define _VT_D_H_
///
/// Include files
///
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#define VTD_ECAP_REG 0x10
#define IR BIT3
#define KBL_OEM_TABLE_ID 0x204C424B ///< "KBL "
#define SKL_OEM_TABLE_ID 0x204C4B53 ///< "SKL "
/**
Locate the VT-d ACPI tables data file and read ACPI SSDT tables.
Publish the appropriate SSDT based on current configuration and capabilities.
@param[in] SaPolicy SA DXE Policy protocol
@retval EFI_SUCCESS - Vtd initialization complete
@retval Other - No Vtd function initiated
**/
EFI_STATUS
VtdInit (
IN SA_POLICY_PROTOCOL *SaPolicy
);
/**
EndOfDxe routine for update DMAR
**/
VOID
UpdateDmarEndOfDxe (
VOID
);
#endif