Lines Matching refs:iommu
309 #define IOMMU_WAIT_OP(iommu, offset, op, cond, sts) \ argument
313 sts = op(iommu->reg + offset); \
420 #define qi_shift(iommu) (DMAR_IQ_SHIFT + !!ecap_smts((iommu)->ecap)) argument
462 void (*flush_context)(struct intel_iommu *iommu, u16 did, u16 sid,
464 void (*flush_iotlb)(struct intel_iommu *iommu, u16 did, u64 addr,
483 #define sm_supported(iommu) (intel_iommu_sm && ecap_smts((iommu)->ecap)) argument
484 #define pasid_supported(iommu) (sm_supported(iommu) && \ argument
485 ecap_pasid((iommu)->ecap))
614 struct iommu_device iommu; /* IOMMU core code handle */ member
650 struct intel_iommu *iommu; /* IOMMU used by this device */ member
656 struct intel_iommu *iommu, void *addr, int size) in __iommu_flush_cache() argument
658 if (!ecap_coherent(iommu->ecap)) in __iommu_flush_cache()
720 extern int dmar_enable_qi(struct intel_iommu *iommu);
721 extern void dmar_disable_qi(struct intel_iommu *iommu);
722 extern int dmar_reenable_qi(struct intel_iommu *iommu);
723 extern void qi_global_iec(struct intel_iommu *iommu);
725 extern void qi_flush_context(struct intel_iommu *iommu, u16 did, u16 sid,
727 extern void qi_flush_iotlb(struct intel_iommu *iommu, u16 did, u64 addr,
729 extern void qi_flush_dev_iotlb(struct intel_iommu *iommu, u16 sid, u16 pfsid,
732 void qi_flush_piotlb(struct intel_iommu *iommu, u16 did, u32 pasid, u64 addr,
735 void qi_flush_dev_iotlb_pasid(struct intel_iommu *iommu, u16 sid, u16 pfsid,
738 void qi_flush_pasid_cache(struct intel_iommu *iommu, u16 did, u64 granu,
741 int qi_submit_sync(struct intel_iommu *iommu, struct qi_desc *desc,
756 void iommu_flush_write_buffer(struct intel_iommu *iommu);
757 int intel_iommu_enable_pasid(struct intel_iommu *iommu, struct device *dev);
763 extern void intel_svm_check(struct intel_iommu *iommu);
764 extern int intel_svm_enable_prq(struct intel_iommu *iommu);
765 extern int intel_svm_finish_prq(struct intel_iommu *iommu);
780 struct intel_iommu *iommu; member
800 static inline void intel_svm_check(struct intel_iommu *iommu) {} in intel_svm_check() argument
810 struct context_entry *iommu_context_addr(struct intel_iommu *iommu, u8 bus,
814 extern int iommu_calculate_agaw(struct intel_iommu *iommu);
815 extern int iommu_calculate_max_sagaw(struct intel_iommu *iommu);
820 static inline int iommu_calculate_agaw(struct intel_iommu *iommu) in iommu_calculate_agaw() argument
824 static inline int iommu_calculate_max_sagaw(struct intel_iommu *iommu) in iommu_calculate_max_sagaw() argument