aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/intel-iommu.h
diff options
context:
space:
mode:
authorDavid Woodhouse <David.Woodhouse@intel.com>2015-03-25 11:43:39 -0400
committerDavid Woodhouse <David.Woodhouse@intel.com>2015-03-25 11:43:39 -0400
commit4423f5e7d28c26af31df711c5c21eeacfac737b4 (patch)
tree33843e49a5f2e07a75e92339b8593c53ce71c1d5 /include/linux/intel-iommu.h
parent18436afdc11a00ac881990b454cfb2eae81d6003 (diff)
iommu/vt-d: Add new extended capabilities from v2.3 VT-d specification
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Diffstat (limited to 'include/linux/intel-iommu.h')
-rw-r--r--include/linux/intel-iommu.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/include/linux/intel-iommu.h b/include/linux/intel-iommu.h
index ee24ada20428..796ef9645827 100644
--- a/include/linux/intel-iommu.h
+++ b/include/linux/intel-iommu.h
@@ -115,6 +115,17 @@ static inline void dmar_writeq(void __iomem *addr, u64 val)
115 * Extended Capability Register 115 * Extended Capability Register
116 */ 116 */
117 117
118#define ecap_pss(e) ((e >> 35) & 0x1f)
119#define ecap_eafs(e) ((e >> 34) & 0x1)
120#define ecap_nwfs(e) ((e >> 33) & 0x1)
121#define ecap_srs(e) ((e >> 31) & 0x1)
122#define ecap_ers(e) ((e >> 30) & 0x1)
123#define ecap_prs(e) ((e >> 29) & 0x1)
124#define ecap_pasid(e) ((e >> 28) & 0x1)
125#define ecap_dis(e) ((e >> 27) & 0x1)
126#define ecap_nest(e) ((e >> 26) & 0x1)
127#define ecap_mts(e) ((e >> 25) & 0x1)
128#define ecap_ecs(e) ((e >> 24) & 0x1)
118#define ecap_iotlb_offset(e) ((((e) >> 8) & 0x3ff) * 16) 129#define ecap_iotlb_offset(e) ((((e) >> 8) & 0x3ff) * 16)
119#define ecap_max_iotlb_offset(e) (ecap_iotlb_offset(e) + 16) 130#define ecap_max_iotlb_offset(e) (ecap_iotlb_offset(e) + 16)
120#define ecap_coherent(e) ((e) & 0x1) 131#define ecap_coherent(e) ((e) & 0x1)
@@ -178,6 +189,9 @@ static inline void dmar_writeq(void __iomem *addr, u64 val)
178#define DMA_GSTS_IRES (((u32)1) << 25) 189#define DMA_GSTS_IRES (((u32)1) << 25)
179#define DMA_GSTS_CFIS (((u32)1) << 23) 190#define DMA_GSTS_CFIS (((u32)1) << 23)
180 191
192/* DMA_RTADDR_REG */
193#define DMA_RTADDR_RTT (((u64)1) << 11)
194
181/* CCMD_REG */ 195/* CCMD_REG */
182#define DMA_CCMD_ICC (((u64)1) << 63) 196#define DMA_CCMD_ICC (((u64)1) << 63)
183#define DMA_CCMD_GLOBAL_INVL (((u64)1) << 61) 197#define DMA_CCMD_GLOBAL_INVL (((u64)1) << 61)