Home
last modified time | relevance | path

Searched defs:iommu (Results 1 – 50 of 50) sorted by relevance

/linux-4.4.14/arch/sparc/include/asm/
Diommu_64.h27 struct iommu { struct
28 struct iommu_map_table tbl; argument
32 unsigned long iommu_control; argument
33 unsigned long iommu_tsbbase; argument
34 unsigned long iommu_flush; argument
35 unsigned long iommu_flushinv; argument
36 unsigned long iommu_tags; argument
37 unsigned long iommu_ctxflush; argument
60 int iommu_table_init(struct iommu *iommu, int tsbsize, argument
Ddevice.h15 void *iommu; member
/linux-4.4.14/drivers/iommu/
Damd_iommu_init.c251 static u32 iommu_read_l1(struct amd_iommu *iommu, u16 l1, u8 address) in iommu_read_l1()
260 static void iommu_write_l1(struct amd_iommu *iommu, u16 l1, u8 address, u32 val) in iommu_write_l1()
267 static u32 iommu_read_l2(struct amd_iommu *iommu, u8 address) in iommu_read_l2()
276 static void iommu_write_l2(struct amd_iommu *iommu, u8 address, u32 val) in iommu_write_l2()
295 static void iommu_set_exclusion_range(struct amd_iommu *iommu) in iommu_set_exclusion_range()
314 static void iommu_set_device_table(struct amd_iommu *iommu) in iommu_set_device_table()
327 static void iommu_feature_enable(struct amd_iommu *iommu, u8 bit) in iommu_feature_enable()
336 static void iommu_feature_disable(struct amd_iommu *iommu, u8 bit) in iommu_feature_disable()
345 static void iommu_set_inv_tlb_timeout(struct amd_iommu *iommu, int timeout) in iommu_set_inv_tlb_timeout()
356 static void iommu_enable(struct amd_iommu *iommu) in iommu_enable()
[all …]
Dintel_irq_remapping.c31 struct intel_iommu *iommu; member
38 struct intel_iommu *iommu; member
45 struct intel_iommu *iommu; member
84 static bool ir_pre_enabled(struct intel_iommu *iommu) in ir_pre_enabled()
89 static void clear_ir_pre_enabled(struct intel_iommu *iommu) in clear_ir_pre_enabled()
94 static void init_ir_status(struct intel_iommu *iommu) in init_ir_status()
103 static int alloc_irte(struct intel_iommu *iommu, int irq, in alloc_irte()
143 static int qi_flush_iec(struct intel_iommu *iommu, int index, int mask) in qi_flush_iec()
157 struct intel_iommu *iommu; in modify_irte() local
237 struct intel_iommu *iommu; in clear_entries() local
[all …]
Dintel-iommu.c430 struct intel_iommu *iommu; /* IOMMU used by this device */ member
529 #define ecs_enabled(iommu) (intel_iommu_ecs && ecap_ecs(iommu->ecap) && \ argument
533 #define pasid_enabled(iommu) (ecs_enabled(iommu) && \ argument
545 static bool translation_pre_enabled(struct intel_iommu *iommu) in translation_pre_enabled()
550 static void clear_translation_pre_enabled(struct intel_iommu *iommu) in clear_translation_pre_enabled()
555 static void init_translation_status(struct intel_iommu *iommu) in init_translation_status()
615 static struct dmar_domain* get_iommu_domain(struct intel_iommu *iommu, u16 did) in get_iommu_domain()
627 static void set_iommu_domain(struct intel_iommu *iommu, u16 did, in set_iommu_domain()
705 static int __iommu_calculate_agaw(struct intel_iommu *iommu, int max_gaw) in __iommu_calculate_agaw()
723 int iommu_calculate_max_sagaw(struct intel_iommu *iommu) in iommu_calculate_max_sagaw()
[all …]
Ddmar.c903 static void unmap_iommu(struct intel_iommu *iommu) in unmap_iommu()
917 static int map_iommu(struct intel_iommu *iommu, u64 phys_addr) in map_iommu()
978 static int dmar_alloc_seq_id(struct intel_iommu *iommu) in dmar_alloc_seq_id()
992 static void dmar_free_seq_id(struct intel_iommu *iommu) in dmar_free_seq_id()
1002 struct intel_iommu *iommu; in alloc_iommu() local
1085 static void free_iommu(struct intel_iommu *iommu) in free_iommu()
1126 static int qi_check_fault(struct intel_iommu *iommu, int index) in qi_check_fault()
1192 int qi_submit_sync(struct qi_desc *desc, struct intel_iommu *iommu) in qi_submit_sync()
1271 void qi_global_iec(struct intel_iommu *iommu) in qi_global_iec()
1282 void qi_flush_context(struct intel_iommu *iommu, u16 did, u16 sid, u8 fm, in qi_flush_context()
[all …]
Drockchip-iommu.c274 static u32 rk_iommu_read(struct rk_iommu *iommu, u32 offset) in rk_iommu_read()
279 static void rk_iommu_write(struct rk_iommu *iommu, u32 offset, u32 value) in rk_iommu_write()
284 static void rk_iommu_command(struct rk_iommu *iommu, u32 command) in rk_iommu_command()
289 static void rk_iommu_zap_lines(struct rk_iommu *iommu, dma_addr_t iova, in rk_iommu_zap_lines()
301 static bool rk_iommu_is_stall_active(struct rk_iommu *iommu) in rk_iommu_is_stall_active()
306 static bool rk_iommu_is_paging_enabled(struct rk_iommu *iommu) in rk_iommu_is_paging_enabled()
312 static int rk_iommu_enable_stall(struct rk_iommu *iommu) in rk_iommu_enable_stall()
333 static int rk_iommu_disable_stall(struct rk_iommu *iommu) in rk_iommu_disable_stall()
350 static int rk_iommu_enable_paging(struct rk_iommu *iommu) in rk_iommu_enable_paging()
367 static int rk_iommu_disable_paging(struct rk_iommu *iommu) in rk_iommu_disable_paging()
[all …]
Dintel-svm.c37 int intel_svm_alloc_pasid_tables(struct intel_iommu *iommu) in intel_svm_alloc_pasid_tables()
69 int intel_svm_free_pasid_tables(struct intel_iommu *iommu) in intel_svm_free_pasid_tables()
91 int intel_svm_enable_prq(struct intel_iommu *iommu) in intel_svm_enable_prq()
133 int intel_svm_finish_prq(struct intel_iommu *iommu) in intel_svm_finish_prq()
289 struct intel_iommu *iommu = intel_svm_device_to_iommu(dev); in intel_svm_bind_mm() local
431 struct intel_iommu *iommu; in intel_svm_unbind_mm() local
523 struct intel_iommu *iommu = d; in prq_event_thread() local
Damd_iommu_proto.h68 static inline int amd_iommu_create_irq_domain(struct amd_iommu *iommu) in amd_iommu_create_irq_domain()
93 static inline bool iommu_feature(struct amd_iommu *iommu, u64 f) in iommu_feature()
Damd_iommu.c377 struct amd_iommu *iommu; in iommu_init_device() local
514 static void iommu_print_event(struct amd_iommu *iommu, void *__evt) in iommu_print_event()
593 static void iommu_poll_events(struct amd_iommu *iommu) in iommu_poll_events()
608 static void iommu_handle_ppr_entry(struct amd_iommu *iommu, u64 *raw) in iommu_handle_ppr_entry()
628 static void iommu_poll_ppr_log(struct amd_iommu *iommu) in iommu_poll_ppr_log()
681 struct amd_iommu *iommu = (struct amd_iommu *) data; in amd_iommu_int_thread() local
745 static void copy_cmd_to_buffer(struct amd_iommu *iommu, in copy_cmd_to_buffer()
912 static int iommu_queue_command_sync(struct amd_iommu *iommu, in iommu_queue_command_sync()
953 static int iommu_queue_command(struct amd_iommu *iommu, struct iommu_cmd *cmd) in iommu_queue_command()
962 static int iommu_completion_wait(struct amd_iommu *iommu) in iommu_completion_wait()
[all …]
Dof_iommu.c108 struct of_iommu_node *iommu = kzalloc(sizeof(*iommu), GFP_KERNEL); in of_iommu_set_ops() local
Damd_iommu_types.h374 #define for_each_iommu(iommu) \ argument
376 #define for_each_iommu_safe(iommu, next) \ argument
/linux-4.4.14/arch/sparc/kernel/
Diommu.c51 struct iommu *iommu = container_of(iommu_map_table, struct iommu, tbl); in iommu_flushall() local
79 #define IOPTE_IS_DUMMY(iommu, iopte) \ argument
82 static inline void iopte_make_dummy(struct iommu *iommu, iopte_t *iopte) in iopte_make_dummy()
92 int iommu_table_init(struct iommu *iommu, int tsbsize, in iommu_table_init()
157 struct iommu *iommu, in alloc_npages()
170 static int iommu_alloc_ctx(struct iommu *iommu) in iommu_alloc_ctx()
188 static inline void iommu_free_ctx(struct iommu *iommu, int ctx) in iommu_free_ctx()
202 struct iommu *iommu; in dma_4u_alloc_coherent() local
250 struct iommu *iommu; in dma_4u_free_coherent() local
268 struct iommu *iommu; in dma_4u_map_page() local
[all …]
Dsbus.c60 struct iommu *iommu = dev->archdata.iommu; in sbus_set_sbus64() local
210 struct iommu *iommu = op->dev.archdata.iommu; in sbus_build_irq() local
272 struct iommu *iommu = op->dev.archdata.iommu; in sysio_ue_handler() local
346 struct iommu *iommu = op->dev.archdata.iommu; in sysio_ce_handler() local
425 struct iommu *iommu = op->dev.archdata.iommu; in sysio_sbus_error_handler() local
494 struct iommu *iommu = op->dev.archdata.iommu; in sysio_register_error_handlers() local
542 struct iommu *iommu; in sbus_iommu_init() local
Dpci_sun4v.c136 struct iommu *iommu; in dma_4v_alloc_coherent() local
219 struct iommu *iommu; in dma_4v_free_coherent() local
240 struct iommu *iommu; in dma_4v_map_page() local
300 struct iommu *iommu; in dma_4v_unmap_page() local
333 struct iommu *iommu; in dma_4v_map_sg() local
473 struct iommu *iommu; in dma_4v_unmap_sg() local
529 struct iommu_map_table *iommu) in probe_existing_entries()
562 struct iommu *iommu = pbm->iommu; in pci_sun4v_iommu_init() local
908 struct iommu *iommu; in pci_sun4v_probe() local
Dldc.c146 struct ldc_iommu iommu; member
1016 static void ldc_demap(struct ldc_iommu *iommu, unsigned long id, u64 cookie, in ldc_demap()
1039 struct iommu_map_table *iommu = &ldc_iommu->iommu_map_table; in ldc_iommu_init() local
1097 struct iommu_map_table *iommu = &ldc_iommu->iommu_map_table; in ldc_iommu_release() local
1949 static struct ldc_mtable_entry *alloc_npages(struct ldc_iommu *iommu, in alloc_npages()
2087 struct ldc_iommu *iommu; in ldc_map_sg() local
2133 struct ldc_iommu *iommu; in ldc_map_single() local
2165 static void free_npages(unsigned long id, struct ldc_iommu *iommu, in free_npages()
2180 struct ldc_iommu *iommu = &lp->iommu; in ldc_unmap() local
Dpsycho_common.c206 struct iommu *iommu = pbm->iommu; in psycho_check_iommu_error() local
402 struct iommu *iommu = pbm->iommu; in psycho_iommu_init() local
Dpci_fire.c30 struct iommu *iommu = pbm->iommu; in pci_fire_pbm_iommu_init() local
461 struct iommu *iommu; in fire_probe() local
Dpci_schizo.c237 struct iommu *iommu = pbm->iommu; in schizo_check_iommu_error_pbm() local
1135 struct iommu *iommu = pbm->iommu; in schizo_pbm_iommu_init() local
1417 struct iommu *iommu; in __schizo_init() local
Dpci_impl.h146 struct iommu *iommu; member
Dpci_psycho.c512 struct iommu *iommu; in psycho_probe() local
Dpci_sabre.c463 struct iommu *iommu; in sabre_probe() local
Dpci.c957 struct iommu *iommu = pdev->dev.archdata.iommu; in pci64_dma_supported() local
/linux-4.4.14/drivers/gpu/drm/msm/
Dmsm_iommu.c27 static int msm_fault_handler(struct iommu_domain *iommu, struct device *dev, in msm_fault_handler()
36 struct msm_iommu *iommu = to_msm_iommu(mmu); in msm_iommu_attach() local
42 struct msm_iommu *iommu = to_msm_iommu(mmu); in msm_iommu_detach() local
49 struct msm_iommu *iommu = to_msm_iommu(mmu); in msm_iommu_map() local
88 struct msm_iommu *iommu = to_msm_iommu(mmu); in msm_iommu_unmap() local
114 struct msm_iommu *iommu = to_msm_iommu(mmu); in msm_iommu_destroy() local
129 struct msm_iommu *iommu; in msm_iommu_new() local
Dmsm_gpu.c573 struct iommu_domain *iommu; in msm_gpu_init() local
/linux-4.4.14/drivers/vfio/
Dvfio_iommu_type1.c90 static struct vfio_dma *vfio_find_dma(struct vfio_iommu *iommu, in vfio_find_dma()
109 static void vfio_link_dma(struct vfio_iommu *iommu, struct vfio_dma *new) in vfio_link_dma()
128 static void vfio_unlink_dma(struct vfio_iommu *iommu, struct vfio_dma *old) in vfio_unlink_dma()
336 static void vfio_unmap_unpin(struct vfio_iommu *iommu, struct vfio_dma *dma) in vfio_unmap_unpin()
396 static void vfio_remove_dma(struct vfio_iommu *iommu, struct vfio_dma *dma) in vfio_remove_dma()
403 static unsigned long vfio_pgsize_bitmap(struct vfio_iommu *iommu) in vfio_pgsize_bitmap()
429 static int vfio_dma_do_unmap(struct vfio_iommu *iommu, in vfio_dma_do_unmap()
534 static int vfio_iommu_map(struct vfio_iommu *iommu, dma_addr_t iova, in vfio_iommu_map()
561 static int vfio_dma_do_map(struct vfio_iommu *iommu, in vfio_dma_do_map()
654 static int vfio_iommu_replay(struct vfio_iommu *iommu, in vfio_iommu_replay()
[all …]
/linux-4.4.14/lib/
Diommu-common.c18 static inline bool need_flush(struct iommu_map_table *iommu) in need_flush()
23 static inline void set_flush(struct iommu_map_table *iommu) in set_flush()
28 static inline void clear_flush(struct iommu_map_table *iommu) in clear_flush()
51 void iommu_tbl_pool_init(struct iommu_map_table *iommu, in iommu_tbl_pool_init()
98 struct iommu_map_table *iommu, in iommu_tbl_range_alloc()
251 void iommu_tbl_range_free(struct iommu_map_table *iommu, u64 dma_addr, in iommu_tbl_range_free()
/linux-4.4.14/arch/powerpc/platforms/cell/
Diommu.c115 struct cbe_iommu *iommu; member
142 static void invalidate_tce_cache(struct cbe_iommu *iommu, unsigned long *pte, in invalidate_tce_cache()
246 struct cbe_iommu *iommu = data; in ioc_interrupt() local
309 static void cell_iommu_setup_stab(struct cbe_iommu *iommu, in cell_iommu_setup_stab()
329 static unsigned long *cell_iommu_alloc_ptab(struct cbe_iommu *iommu, in cell_iommu_alloc_ptab()
389 static void cell_iommu_enable_hardware(struct cbe_iommu *iommu) in cell_iommu_enable_hardware()
429 static void cell_iommu_setup_hardware(struct cbe_iommu *iommu, in cell_iommu_setup_hardware()
475 cell_iommu_setup_window(struct cbe_iommu *iommu, struct device_node *np, in cell_iommu_setup_window()
554 struct cbe_iommu *iommu; in cell_get_iommu_table() local
727 struct cbe_iommu *iommu; in cell_iommu_alloc() local
[all …]
/linux-4.4.14/arch/sparc/mm/
Diommu.c58 struct iommu_struct *iommu; in sbus_iommu_init() local
179 struct iommu_struct *iommu = dev->archdata.iommu; in iommu_get_one() local
285 struct iommu_struct *iommu = dev->archdata.iommu; in iommu_release_one() local
327 struct iommu_struct *iommu = dev->archdata.iommu; in iommu_map_dma_area() local
393 struct iommu_struct *iommu = dev->archdata.iommu; in iommu_unmap_dma_area() local
/linux-4.4.14/include/linux/
Ddma_remapping.h43 static inline int iommu_calculate_agaw(struct intel_iommu *iommu) in iommu_calculate_agaw()
47 static inline int iommu_calculate_max_sagaw(struct intel_iommu *iommu) in iommu_calculate_max_sagaw()
Dintel-iommu.h241 #define IOMMU_WAIT_OP(iommu, offset, op, cond, sts) \ argument
447 struct intel_iommu *iommu, void *addr, int size) in __iommu_flush_cache()
494 struct intel_iommu *iommu; member
Ddma-mapping.h139 u64 size, struct iommu_ops *iommu, in arch_setup_dma_ops()
Ddmar.h62 struct intel_iommu *iommu; member
/linux-4.4.14/arch/ia64/include/asm/
Ddevice.h11 void *iommu; /* hook for IOMMU specific extension */ member
Dpci.h69 void *iommu; member
/linux-4.4.14/arch/x86/include/asm/
Ddevice.h9 void *iommu; /* hook for IOMMU specific extension */ member
Dpci.h21 void *iommu; /* IOMMU private data */ member
Dx86_init.h129 struct x86_init_iommu iommu; member
/linux-4.4.14/arch/arm64/include/asm/
Ddevice.h22 void *iommu; /* private IOMMU data */ member
/linux-4.4.14/arch/arm/include/asm/
Ddevice.h15 void *iommu; /* private IOMMU data */ member
/linux-4.4.14/drivers/gpu/drm/nouveau/include/nvkm/core/
Dtegra.h27 } iommu; member
/linux-4.4.14/arch/powerpc/kernel/
Ddma.c137 struct iommu_table *iommu; in dma_direct_alloc_coherent() local
161 struct iommu_table *iommu; in dma_direct_free_coherent() local
/linux-4.4.14/drivers/of/
Ddevice.c91 struct iommu_ops *iommu; in of_dma_configure() local
/linux-4.4.14/arch/mips/include/asm/
Dpci.h46 int iommu; member
/linux-4.4.14/drivers/gpu/drm/msm/mdp/mdp4/
Dmdp4_kms.h59 struct iommu_domain *iommu; member
/linux-4.4.14/arch/parisc/include/asm/
Dpci.h58 void * iommu; /* IOMMU this device is under */ member
/linux-4.4.14/drivers/gpu/drm/msm/mdp/mdp5/
Dmdp5_cfg.h101 struct iommu_domain *iommu; member
/linux-4.4.14/arch/arm64/mm/
Ddma-mapping.c982 struct iommu_ops *iommu) in __iommu_setup_dma_ops()
988 struct iommu_ops *iommu, bool coherent) in arch_setup_dma_ops()
/linux-4.4.14/arch/arm/mm/
Ddma-mapping.c2076 struct iommu_ops *iommu) in arm_setup_iommu_dma_ops()
2114 struct iommu_ops *iommu) in arm_setup_iommu_dma_ops()
2131 struct iommu_ops *iommu, bool coherent) in arch_setup_dma_ops()
/linux-4.4.14/drivers/gpu/drm/i915/
Di915_drv.h499 int iommu; member