Home
last modified time | relevance | path

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

1234

/Linux-v5.4/drivers/iommu/
Damd_iommu_init.c259 bool translation_pre_enabled(struct amd_iommu *iommu) in translation_pre_enabled()
265 static void clear_translation_pre_enabled(struct amd_iommu *iommu) in clear_translation_pre_enabled()
270 static void init_translation_status(struct amd_iommu *iommu) in init_translation_status()
300 static u32 iommu_read_l1(struct amd_iommu *iommu, u16 l1, u8 address) in iommu_read_l1()
309 static void iommu_write_l1(struct amd_iommu *iommu, u16 l1, u8 address, u32 val) in iommu_write_l1()
316 static u32 iommu_read_l2(struct amd_iommu *iommu, u8 address) in iommu_read_l2()
325 static void iommu_write_l2(struct amd_iommu *iommu, u8 address, u32 val) in iommu_write_l2()
344 static void iommu_set_exclusion_range(struct amd_iommu *iommu) in iommu_set_exclusion_range()
363 static void iommu_set_device_table(struct amd_iommu *iommu) in iommu_set_device_table()
376 static void iommu_feature_enable(struct amd_iommu *iommu, u8 bit) in iommu_feature_enable()
[all …]
Dintel_irq_remapping.c32 struct intel_iommu *iommu; member
39 struct intel_iommu *iommu; member
46 struct intel_iommu *iommu; member
85 static bool ir_pre_enabled(struct intel_iommu *iommu) in ir_pre_enabled()
90 static void clear_ir_pre_enabled(struct intel_iommu *iommu) in clear_ir_pre_enabled()
95 static void init_ir_status(struct intel_iommu *iommu) in init_ir_status()
104 static int alloc_irte(struct intel_iommu *iommu, in alloc_irte()
144 static int qi_flush_iec(struct intel_iommu *iommu, int index, int mask) in qi_flush_iec()
160 struct intel_iommu *iommu; in modify_irte() local
240 struct intel_iommu *iommu; in clear_entries() local
[all …]
Dmsm_iommu.c55 static int __enable_clocks(struct msm_iommu_dev *iommu) in __enable_clocks()
72 static void __disable_clocks(struct msm_iommu_dev *iommu) in __disable_clocks()
121 struct msm_iommu_dev *iommu = NULL; in __flush_iotlb() local
143 struct msm_iommu_dev *iommu = NULL; in __flush_iotlb_range() local
214 static void config_mids(struct msm_iommu_dev *iommu, in config_mids()
375 struct msm_iommu_dev *iommu, *ret = NULL; in find_iommu_for_dev() local
393 struct msm_iommu_dev *iommu; in msm_iommu_add_device() local
417 struct msm_iommu_dev *iommu; in msm_iommu_remove_device() local
434 struct msm_iommu_dev *iommu; in msm_iommu_attach_dev() local
484 struct msm_iommu_dev *iommu; in msm_iommu_detach_dev() local
[all …]
Drockchip-iommu.c107 struct iommu_device iommu; member
115 struct rk_iommu *iommu; member
285 static void rk_iommu_command(struct rk_iommu *iommu, u32 command) in rk_iommu_command()
297 static void rk_iommu_zap_lines(struct rk_iommu *iommu, dma_addr_t iova_start, in rk_iommu_zap_lines()
314 static bool rk_iommu_is_stall_active(struct rk_iommu *iommu) in rk_iommu_is_stall_active()
326 static bool rk_iommu_is_paging_enabled(struct rk_iommu *iommu) in rk_iommu_is_paging_enabled()
338 static bool rk_iommu_is_reset_done(struct rk_iommu *iommu) in rk_iommu_is_reset_done()
349 static int rk_iommu_enable_stall(struct rk_iommu *iommu) in rk_iommu_enable_stall()
374 static int rk_iommu_disable_stall(struct rk_iommu *iommu) in rk_iommu_disable_stall()
395 static int rk_iommu_enable_paging(struct rk_iommu *iommu) in rk_iommu_enable_paging()
[all …]
Dintel-iommu.c412 static bool translation_pre_enabled(struct intel_iommu *iommu) in translation_pre_enabled()
417 static void clear_translation_pre_enabled(struct intel_iommu *iommu) in clear_translation_pre_enabled()
422 static void init_translation_status(struct intel_iommu *iommu) in init_translation_status()
484 static struct dmar_domain* get_iommu_domain(struct intel_iommu *iommu, u16 did) in get_iommu_domain()
496 static void set_iommu_domain(struct intel_iommu *iommu, u16 did, in set_iommu_domain()
563 static int __iommu_calculate_agaw(struct intel_iommu *iommu, int max_gaw) in __iommu_calculate_agaw()
581 int iommu_calculate_max_sagaw(struct intel_iommu *iommu) in iommu_calculate_max_sagaw()
591 int iommu_calculate_agaw(struct intel_iommu *iommu) in iommu_calculate_agaw()
617 struct intel_iommu *iommu; in domain_update_iommu_coherency() local
647 struct intel_iommu *iommu; in domain_update_iommu_snooping() local
[all …]
Ddmar.c911 static void unmap_iommu(struct intel_iommu *iommu) in unmap_iommu()
925 static int map_iommu(struct intel_iommu *iommu, u64 phys_addr) in map_iommu()
986 static int dmar_alloc_seq_id(struct intel_iommu *iommu) in dmar_alloc_seq_id()
1000 static void dmar_free_seq_id(struct intel_iommu *iommu) in dmar_free_seq_id()
1010 struct intel_iommu *iommu; in alloc_iommu() local
1102 static void free_iommu(struct intel_iommu *iommu) in free_iommu()
1146 static int qi_check_fault(struct intel_iommu *iommu, int index) in qi_check_fault()
1217 int qi_submit_sync(struct qi_desc *desc, struct intel_iommu *iommu) in qi_submit_sync()
1297 void qi_global_iec(struct intel_iommu *iommu) in qi_global_iec()
1310 void qi_flush_context(struct intel_iommu *iommu, u16 did, u16 sid, u8 fm, in qi_flush_context()
[all …]
Diommu-sysfs.c54 int iommu_device_sysfs_add(struct iommu_device *iommu, in iommu_device_sysfs_add()
91 void iommu_device_sysfs_remove(struct iommu_device *iommu) in iommu_device_sysfs_remove()
103 int iommu_device_link(struct iommu_device *iommu, struct device *link) in iommu_device_link()
123 void iommu_device_unlink(struct iommu_device *iommu, struct device *link) in iommu_device_unlink()
Dintel-iommu-debugfs.c108 struct intel_iommu *iommu; in iommu_regset_show() local
203 static void ctx_tbl_walk(struct seq_file *m, struct intel_iommu *iommu, u16 bus) in ctx_tbl_walk()
249 static void root_tbl_walk(struct seq_file *m, struct intel_iommu *iommu) in root_tbl_walk()
273 struct intel_iommu *iommu; in dmar_translation_struct_show() local
288 struct intel_iommu *iommu) in ir_tbl_remap_entry_show()
312 struct intel_iommu *iommu) in ir_tbl_posted_entry_show()
344 struct intel_iommu *iommu; in ir_translation_struct_show() local
Damd_iommu_proto.h27 static inline void amd_iommu_debugfs_setup(struct amd_iommu *iommu) {} in amd_iommu_debugfs_setup()
57 static inline int amd_iommu_create_irq_domain(struct amd_iommu *iommu) in amd_iommu_create_irq_domain()
76 static inline bool iommu_feature(struct amd_iommu *iommu, u64 f) in iommu_feature()
Damd_iommu.c299 struct amd_iommu *iommu = amd_iommu_rlookup_table[devid]; in find_dev_data() local
415 struct amd_iommu *iommu; in iommu_init_device() local
441 struct amd_iommu *iommu; in iommu_init_device() local
475 struct amd_iommu *iommu; in iommu_uninit_device() local
575 static void iommu_print_event(struct amd_iommu *iommu, void *__evt) in iommu_print_event()
658 static void iommu_poll_events(struct amd_iommu *iommu) in iommu_poll_events()
673 static void iommu_handle_ppr_entry(struct amd_iommu *iommu, u64 *raw) in iommu_handle_ppr_entry()
691 static void iommu_poll_ppr_log(struct amd_iommu *iommu) in iommu_poll_ppr_log()
753 static void iommu_poll_ga_log(struct amd_iommu *iommu) in iommu_poll_ga_log()
804 struct amd_iommu *iommu = (struct amd_iommu *) data; in amd_iommu_int_thread() local
[all …]
Dintel-svm.c26 int intel_svm_init(struct intel_iommu *iommu) in intel_svm_init()
41 int intel_svm_enable_prq(struct intel_iommu *iommu) in intel_svm_enable_prq()
84 int intel_svm_finish_prq(struct intel_iommu *iommu) in intel_svm_finish_prq()
216 struct intel_iommu *iommu = intel_svm_device_to_iommu(dev); in intel_svm_bind_mm() local
395 struct intel_iommu *iommu; in intel_svm_unbind_mm() local
452 struct intel_iommu *iommu; in intel_svm_is_pasid_valid() local
537 struct intel_iommu *iommu = d; in prq_event_thread() local
Dintel-pasid.c399 pasid_cache_invalidation_with_pasid(struct intel_iommu *iommu, in pasid_cache_invalidation_with_pasid()
413 iotlb_invalidation_with_pasid(struct intel_iommu *iommu, u16 did, u32 pasid) in iotlb_invalidation_with_pasid()
427 devtlb_invalidation_with_pasid(struct intel_iommu *iommu, in devtlb_invalidation_with_pasid()
444 void intel_pasid_tear_down_entry(struct intel_iommu *iommu, in intel_pasid_tear_down_entry()
472 int intel_pasid_setup_first_level(struct intel_iommu *iommu, in intel_pasid_setup_first_level()
530 int intel_pasid_setup_second_level(struct intel_iommu *iommu, in intel_pasid_setup_second_level()
603 int intel_pasid_setup_pass_through(struct intel_iommu *iommu, in intel_pasid_setup_pass_through()
Domap-iommu.c964 struct omap_iommu_device *iommu; in omap_iommu_domain_deactivate() local
993 struct omap_iommu_device *iommu; in omap_iommu_domain_activate() local
1346 struct omap_iommu_device *iommu; in omap_iommu_map() local
1390 struct omap_iommu_device *iommu; in omap_iommu_unmap() local
1432 struct omap_iommu_device *iommu; in omap_iommu_attach_init() local
1465 struct omap_iommu_device *iommu = odomain->iommus; in omap_iommu_detach_fini() local
1480 struct omap_iommu_device *iommu; in omap_iommu_attach_dev() local
1544 struct omap_iommu_device *iommu = omap_domain->iommus; in _omap_iommu_detach_dev() local
1627 struct omap_iommu_device *iommu = omap_domain->iommus; in omap_iommu_iova_to_phys() local
/Linux-v5.4/arch/sparc/include/asm/
Diommu_64.h55 struct iommu { struct
56 struct iommu_map_table tbl; argument
61 unsigned long iommu_control; argument
62 unsigned long iommu_tsbbase; argument
63 unsigned long iommu_flush; argument
64 unsigned long iommu_flushinv; argument
65 unsigned long iommu_tags; argument
66 unsigned long iommu_ctxflush; argument
89 int iommu_table_init(struct iommu *iommu, int tsbsize, argument
/Linux-v5.4/drivers/gpu/drm/msm/
Dmsm_iommu.c19 struct msm_iommu *iommu = arg; in msm_fault_handler() local
29 struct msm_iommu *iommu = to_msm_iommu(mmu); in msm_iommu_attach() local
37 struct msm_iommu *iommu = to_msm_iommu(mmu); in msm_iommu_detach() local
45 struct msm_iommu *iommu = to_msm_iommu(mmu); in msm_iommu_map() local
56 struct msm_iommu *iommu = to_msm_iommu(mmu); in msm_iommu_unmap() local
65 struct msm_iommu *iommu = to_msm_iommu(mmu); in msm_iommu_destroy() local
80 struct msm_iommu *iommu; in msm_iommu_new() local
/Linux-v5.4/arch/sparc/kernel/
Diommu.c52 struct iommu *iommu = container_of(iommu_map_table, struct iommu, tbl); in iommu_flushall() local
80 #define IOPTE_IS_DUMMY(iommu, iopte) \ argument
83 static inline void iopte_make_dummy(struct iommu *iommu, iopte_t *iopte) in iopte_make_dummy()
93 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 …]
Diommu-common.c19 static inline bool need_flush(struct iommu_map_table *iommu) in need_flush()
24 static inline void set_flush(struct iommu_map_table *iommu) in set_flush()
29 static inline void clear_flush(struct iommu_map_table *iommu) in clear_flush()
52 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()
250 void iommu_tbl_range_free(struct iommu_map_table *iommu, u64 dma_addr, in iommu_tbl_range_free()
Dsbus.c62 struct iommu *iommu = dev->archdata.iommu; in sbus_set_sbus64() local
212 struct iommu *iommu = op->dev.archdata.iommu; in sbus_build_irq() local
274 struct iommu *iommu = op->dev.archdata.iommu; in sysio_ue_handler() local
348 struct iommu *iommu = op->dev.archdata.iommu; in sysio_ce_handler() local
427 struct iommu *iommu = op->dev.archdata.iommu; in sysio_sbus_error_handler() local
496 struct iommu *iommu = op->dev.archdata.iommu; in sysio_register_error_handlers() local
544 struct iommu *iommu; in sbus_iommu_init() local
Dpci_sun4v.c76 static inline bool iommu_use_atu(struct iommu *iommu, u64 mask) in iommu_use_atu()
186 struct iommu *iommu; in dma_4v_alloc_coherent() local
325 struct iommu *iommu; in dma_4v_free_coherent() local
358 struct iommu *iommu; in dma_4v_map_page() local
432 struct iommu *iommu; in dma_4v_unmap_page() local
477 struct iommu *iommu; in dma_4v_map_sg() local
631 struct iommu *iommu; in dma_4v_unmap_sg() local
678 struct iommu *iommu = dev->archdata.iommu; in dma_4v_supported() local
711 struct iommu_map_table *iommu) in probe_existing_entries()
870 struct iommu *iommu = pbm->iommu; in pci_sun4v_iommu_init() local
[all …]
/Linux-v5.4/drivers/vfio/
Dvfio_iommu_type1.c124 #define IS_IOMMU_CAP_DOMAIN_IN_CONTAINER(iommu) \ argument
134 static struct vfio_dma *vfio_find_dma(struct vfio_iommu *iommu, in vfio_find_dma()
153 static void vfio_link_dma(struct vfio_iommu *iommu, struct vfio_dma *new) in vfio_link_dma()
172 static void vfio_unlink_dma(struct vfio_iommu *iommu, struct vfio_dma *old) in vfio_unlink_dma()
546 struct vfio_iommu *iommu = iommu_data; in vfio_iommu_type1_pin_pages() local
631 struct vfio_iommu *iommu = iommu_data; in vfio_iommu_type1_unpin_pages() local
752 static long vfio_unmap_unpin(struct vfio_iommu *iommu, struct vfio_dma *dma, in vfio_unmap_unpin()
836 static void vfio_remove_dma(struct vfio_iommu *iommu, struct vfio_dma *dma) in vfio_remove_dma()
845 static unsigned long vfio_pgsize_bitmap(struct vfio_iommu *iommu) in vfio_pgsize_bitmap()
871 static int vfio_dma_do_unmap(struct vfio_iommu *iommu, in vfio_dma_do_unmap()
[all …]
/Linux-v5.4/arch/powerpc/platforms/cell/
Diommu.c102 struct cbe_iommu *iommu; member
129 static void invalidate_tce_cache(struct cbe_iommu *iommu, unsigned long *pte, in invalidate_tce_cache()
233 struct cbe_iommu *iommu = data; in ioc_interrupt() local
296 static void cell_iommu_setup_stab(struct cbe_iommu *iommu, in cell_iommu_setup_stab()
316 static unsigned long *cell_iommu_alloc_ptab(struct cbe_iommu *iommu, in cell_iommu_alloc_ptab()
376 static void cell_iommu_enable_hardware(struct cbe_iommu *iommu) in cell_iommu_enable_hardware()
416 static void cell_iommu_setup_hardware(struct cbe_iommu *iommu, in cell_iommu_setup_hardware()
462 cell_iommu_setup_window(struct cbe_iommu *iommu, struct device_node *np, in cell_iommu_setup_window()
542 struct cbe_iommu *iommu; in cell_get_iommu_table() local
619 struct cbe_iommu *iommu; in cell_iommu_alloc() local
[all …]
/Linux-v5.4/drivers/media/platform/qcom/venus/
Dfirmware.c127 struct iommu_domain *iommu; in venus_boot_no_tz() local
153 struct iommu_domain *iommu; in venus_shutdown_no_tz() local
278 struct iommu_domain *iommu; in venus_firmware_deinit() local
/Linux-v5.4/arch/sparc/mm/
Diommu.c59 struct iommu_struct *iommu; in sbus_iommu_init() local
181 struct iommu_struct *iommu = dev->archdata.iommu; in __sbus_iommu_map_page() local
277 struct iommu_struct *iommu = dev->archdata.iommu; in sbus_iommu_unmap_page() local
310 struct iommu_struct *iommu = dev->archdata.iommu; in sbus_iommu_alloc() local
394 struct iommu_struct *iommu = dev->archdata.iommu; in sbus_iommu_free() local
/Linux-v5.4/arch/x86/events/amd/
Diommu.c39 struct amd_iommu *iommu; member
240 struct amd_iommu *iommu = perf_event_2_iommu(ev); in perf_iommu_enable_event() local
270 struct amd_iommu *iommu = perf_event_2_iommu(event); in perf_iommu_disable_event() local
290 struct amd_iommu *iommu = perf_event_2_iommu(event); in perf_iommu_start() local
305 struct amd_iommu *iommu = perf_event_2_iommu(event); in perf_iommu_read() local
/Linux-v5.4/arch/ia64/include/asm/
Ddevice.h10 void *iommu; /* hook for IOMMU specific extension */ member

1234