X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;ds=sidebyside;f=IntelSiliconPkg%2FFeature%2FVTd%2FIntelVTdDxe%2FDmaProtection.h;h=a3331db8f76b8f65aeaff346e51d4d55c7e96dfe;hb=30a888b5a0a01eb9ce79b46af9937e997a30ae5c;hp=767531e4a93ff99f2668d8c8079779746ed2bcc6;hpb=0bc94c748bc9b8645dd0566535708d88a5be0fe1;p=mirror_edk2.git
diff --git a/IntelSiliconPkg/Feature/VTd/IntelVTdDxe/DmaProtection.h b/IntelSiliconPkg/Feature/VTd/IntelVTdDxe/DmaProtection.h
index 767531e4a9..a3331db8f7 100644
--- a/IntelSiliconPkg/Feature/VTd/IntelVTdDxe/DmaProtection.h
+++ b/IntelSiliconPkg/Feature/VTd/IntelVTdDxe/DmaProtection.h
@@ -1,13 +1,7 @@
/** @file
- Copyright (c) 2017 - 2018, 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
- which 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.
+ Copyright (c) 2017 - 2019, Intel Corporation. All rights reserved.
+ SPDX-License-Identifier: BSD-2-Clause-Patent
**/
@@ -28,6 +22,7 @@
#include
#include
#include
+#include
#include
#include
@@ -124,7 +119,6 @@ EFI_STATUS
extern EFI_ACPI_DMAR_HEADER *mAcpiDmarTable;
-extern UINT64 mVtdHostAddressWidthMask;
extern UINTN mVtdUnitNumber;
extern VTD_UNIT_INFORMATION *mVtdUnitInformation;
@@ -174,6 +168,36 @@ DisableDmar (
VOID
);
+/**
+ Flush VTd engine write buffer.
+
+ @param[in] VtdIndex The index used to identify a VTd engine.
+**/
+VOID
+FlushWriteBuffer (
+ IN UINTN VtdIndex
+ );
+
+/**
+ Invalidate VTd context cache.
+
+ @param[in] VtdIndex The index used to identify a VTd engine.
+**/
+EFI_STATUS
+InvalidateContextCache (
+ IN UINTN VtdIndex
+ );
+
+/**
+ Invalidate VTd IOTLB.
+
+ @param[in] VtdIndex The index used to identify a VTd engine.
+**/
+EFI_STATUS
+InvalidateIOTLB (
+ IN UINTN VtdIndex
+ );
+
/**
Invalid VTd global IOTLB.