/Linux-v4.19/arch/sparc/include/asm/ |
D | iommu_64.h | 55 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-v4.19/drivers/iommu/ |
D | amd_iommu_init.c | 271 bool translation_pre_enabled(struct amd_iommu *iommu) in translation_pre_enabled() 277 static void clear_translation_pre_enabled(struct amd_iommu *iommu) in clear_translation_pre_enabled() 282 static void init_translation_status(struct amd_iommu *iommu) in init_translation_status() 312 static u32 iommu_read_l1(struct amd_iommu *iommu, u16 l1, u8 address) in iommu_read_l1() 321 static void iommu_write_l1(struct amd_iommu *iommu, u16 l1, u8 address, u32 val) in iommu_write_l1() 328 static u32 iommu_read_l2(struct amd_iommu *iommu, u8 address) in iommu_read_l2() 337 static void iommu_write_l2(struct amd_iommu *iommu, u8 address, u32 val) in iommu_write_l2() 356 static void iommu_set_exclusion_range(struct amd_iommu *iommu) in iommu_set_exclusion_range() 375 static void iommu_set_device_table(struct amd_iommu *iommu) in iommu_set_device_table() 388 static void iommu_feature_enable(struct amd_iommu *iommu, u8 bit) in iommu_feature_enable() [all …]
|
D | intel_irq_remapping.c | 32 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, int irq, in alloc_irte() 144 static int qi_flush_iec(struct intel_iommu *iommu, int index, int mask) in qi_flush_iec() 158 struct intel_iommu *iommu; in modify_irte() local 238 struct intel_iommu *iommu; in clear_entries() local [all …]
|
D | msm_iommu.c | 66 static int __enable_clocks(struct msm_iommu_dev *iommu) in __enable_clocks() 83 static void __disable_clocks(struct msm_iommu_dev *iommu) in __disable_clocks() 132 struct msm_iommu_dev *iommu = NULL; in __flush_iotlb() local 154 struct msm_iommu_dev *iommu = NULL; in __flush_iotlb_range() local 216 static void config_mids(struct msm_iommu_dev *iommu, in config_mids() 377 struct msm_iommu_dev *iommu, *ret = NULL; in find_iommu_for_dev() local 395 struct msm_iommu_dev *iommu; in msm_iommu_add_device() local 419 struct msm_iommu_dev *iommu; in msm_iommu_remove_device() local 436 struct msm_iommu_dev *iommu; in msm_iommu_attach_dev() local 486 struct msm_iommu_dev *iommu; in msm_iommu_detach_dev() local [all …]
|
D | rockchip-iommu.c | 104 struct iommu_device iommu; member 112 struct rk_iommu *iommu; member 282 static void rk_iommu_command(struct rk_iommu *iommu, u32 command) in rk_iommu_command() 294 static void rk_iommu_zap_lines(struct rk_iommu *iommu, dma_addr_t iova_start, in rk_iommu_zap_lines() 311 static bool rk_iommu_is_stall_active(struct rk_iommu *iommu) in rk_iommu_is_stall_active() 323 static bool rk_iommu_is_paging_enabled(struct rk_iommu *iommu) in rk_iommu_is_paging_enabled() 335 static bool rk_iommu_is_reset_done(struct rk_iommu *iommu) in rk_iommu_is_reset_done() 346 static int rk_iommu_enable_stall(struct rk_iommu *iommu) in rk_iommu_enable_stall() 371 static int rk_iommu_disable_stall(struct rk_iommu *iommu) in rk_iommu_disable_stall() 392 static int rk_iommu_enable_paging(struct rk_iommu *iommu) in rk_iommu_enable_paging() [all …]
|
D | intel-iommu.c | 459 #define ecs_enabled(iommu) (intel_iommu_ecs && ecap_ecs(iommu->ecap) && \ argument 463 #define pasid_enabled(iommu) (ecs_enabled(iommu) && \ argument 496 static bool translation_pre_enabled(struct intel_iommu *iommu) in translation_pre_enabled() 501 static void clear_translation_pre_enabled(struct intel_iommu *iommu) in clear_translation_pre_enabled() 506 static void init_translation_status(struct intel_iommu *iommu) in init_translation_status() 570 static struct dmar_domain* get_iommu_domain(struct intel_iommu *iommu, u16 did) in get_iommu_domain() 582 static void set_iommu_domain(struct intel_iommu *iommu, u16 did, in set_iommu_domain() 660 static int __iommu_calculate_agaw(struct intel_iommu *iommu, int max_gaw) in __iommu_calculate_agaw() 678 int iommu_calculate_max_sagaw(struct intel_iommu *iommu) in iommu_calculate_max_sagaw() 688 int iommu_calculate_agaw(struct intel_iommu *iommu) in iommu_calculate_agaw() [all …]
|
D | dmar.c | 922 static void unmap_iommu(struct intel_iommu *iommu) in unmap_iommu() 936 static int map_iommu(struct intel_iommu *iommu, u64 phys_addr) in map_iommu() 997 static int dmar_alloc_seq_id(struct intel_iommu *iommu) in dmar_alloc_seq_id() 1011 static void dmar_free_seq_id(struct intel_iommu *iommu) in dmar_free_seq_id() 1021 struct intel_iommu *iommu; in alloc_iommu() local 1113 static void free_iommu(struct intel_iommu *iommu) in free_iommu() 1157 static int qi_check_fault(struct intel_iommu *iommu, int index) in qi_check_fault() 1221 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() 1308 void qi_flush_context(struct intel_iommu *iommu, u16 did, u16 sid, u8 fm, in qi_flush_context() [all …]
|
D | iommu-sysfs.c | 57 int iommu_device_sysfs_add(struct iommu_device *iommu, in iommu_device_sysfs_add() 94 void iommu_device_sysfs_remove(struct iommu_device *iommu) in iommu_device_sysfs_remove() 106 int iommu_device_link(struct iommu_device *iommu, struct device *link) in iommu_device_link() 126 void iommu_device_unlink(struct iommu_device *iommu, struct device *link) in iommu_device_unlink()
|
D | amd_iommu_proto.h | 39 static inline void amd_iommu_debugfs_setup(struct amd_iommu *iommu) {} in amd_iommu_debugfs_setup() 69 static inline int amd_iommu_create_irq_domain(struct amd_iommu *iommu) in amd_iommu_create_irq_domain() 88 static inline bool iommu_feature(struct amd_iommu *iommu, u64 f) in iommu_feature()
|
D | amd_iommu.c | 307 struct amd_iommu *iommu = amd_iommu_rlookup_table[devid]; in find_dev_data() local 423 struct amd_iommu *iommu; in iommu_init_device() local 442 struct amd_iommu *iommu; in iommu_init_device() local 476 struct amd_iommu *iommu; in iommu_uninit_device() local 553 static void iommu_print_event(struct amd_iommu *iommu, void *__evt) in iommu_print_event() 637 static void iommu_poll_events(struct amd_iommu *iommu) in iommu_poll_events() 652 static void iommu_handle_ppr_entry(struct amd_iommu *iommu, u64 *raw) in iommu_handle_ppr_entry() 670 static void iommu_poll_ppr_log(struct amd_iommu *iommu) in iommu_poll_ppr_log() 732 static void iommu_poll_ga_log(struct amd_iommu *iommu) in iommu_poll_ga_log() 783 struct amd_iommu *iommu = (struct amd_iommu *) data; in amd_iommu_int_thread() local [all …]
|
D | intel-svm.c | 42 int intel_svm_init(struct intel_iommu *iommu) in intel_svm_init() 81 int intel_svm_exit(struct intel_iommu *iommu) in intel_svm_exit() 95 int intel_svm_enable_prq(struct intel_iommu *iommu) in intel_svm_enable_prq() 138 int intel_svm_finish_prq(struct intel_iommu *iommu) in intel_svm_finish_prq() 287 struct intel_iommu *iommu = intel_svm_device_to_iommu(dev); in intel_svm_bind_mm() local 438 struct intel_iommu *iommu; in intel_svm_unbind_mm() local 496 struct intel_iommu *iommu; in intel_svm_is_pasid_valid() local 570 struct intel_iommu *iommu = d; in prq_event_thread() local
|
D | amd_iommu_debugfs.c | 21 void amd_iommu_debugfs_setup(struct amd_iommu *iommu) in amd_iommu_debugfs_setup()
|
/Linux-v4.19/drivers/gpu/drm/msm/ |
D | msm_iommu.c | 30 struct msm_iommu *iommu = arg; in msm_fault_handler() local 40 struct msm_iommu *iommu = to_msm_iommu(mmu); in msm_iommu_attach() local 53 struct msm_iommu *iommu = to_msm_iommu(mmu); in msm_iommu_detach() local 63 struct msm_iommu *iommu = to_msm_iommu(mmu); in msm_iommu_map() local 77 struct msm_iommu *iommu = to_msm_iommu(mmu); in msm_iommu_unmap() local 88 struct msm_iommu *iommu = to_msm_iommu(mmu); in msm_iommu_destroy() local 103 struct msm_iommu *iommu; in msm_iommu_new() local
|
/Linux-v4.19/arch/sparc/kernel/ |
D | iommu.c | 52 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() 158 struct iommu *iommu, in alloc_npages() 171 static int iommu_alloc_ctx(struct iommu *iommu) in iommu_alloc_ctx() 189 static inline void iommu_free_ctx(struct iommu *iommu, int ctx) in iommu_free_ctx() 203 struct iommu *iommu; in dma_4u_alloc_coherent() local 251 struct iommu *iommu; in dma_4u_free_coherent() local 269 struct iommu *iommu; in dma_4u_map_page() local [all …]
|
D | iommu-common.c | 19 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()
|
D | sbus.c | 61 struct iommu *iommu = dev->archdata.iommu; in sbus_set_sbus64() local 211 struct iommu *iommu = op->dev.archdata.iommu; in sbus_build_irq() local 273 struct iommu *iommu = op->dev.archdata.iommu; in sysio_ue_handler() local 347 struct iommu *iommu = op->dev.archdata.iommu; in sysio_ce_handler() local 426 struct iommu *iommu = op->dev.archdata.iommu; in sysio_sbus_error_handler() local 495 struct iommu *iommu = op->dev.archdata.iommu; in sysio_register_error_handlers() local 543 struct iommu *iommu; in sbus_iommu_init() local
|
D | pci_sun4v.c | 181 struct iommu *iommu; in dma_4v_alloc_coherent() local 323 struct iommu *iommu; in dma_4v_free_coherent() local 356 struct iommu *iommu; in dma_4v_map_page() local 430 struct iommu *iommu; in dma_4v_unmap_page() local 475 struct iommu *iommu; in dma_4v_map_sg() local 629 struct iommu *iommu; in dma_4v_unmap_sg() local 676 struct iommu *iommu = dev->archdata.iommu; in dma_4v_supported() local 721 struct iommu_map_table *iommu) in probe_existing_entries() 880 struct iommu *iommu = pbm->iommu; in pci_sun4v_iommu_init() local 1238 struct iommu *iommu; in pci_sun4v_probe() local
|
/Linux-v4.19/drivers/vfio/ |
D | vfio_iommu_type1.c | 113 #define IS_IOMMU_CAP_DOMAIN_IN_CONTAINER(iommu) \ argument 123 static struct vfio_dma *vfio_find_dma(struct vfio_iommu *iommu, in vfio_find_dma() 142 static void vfio_link_dma(struct vfio_iommu *iommu, struct vfio_dma *new) in vfio_link_dma() 161 static void vfio_unlink_dma(struct vfio_iommu *iommu, struct vfio_dma *old) in vfio_unlink_dma() 545 struct vfio_iommu *iommu = iommu_data; in vfio_iommu_type1_pin_pages() local 630 struct vfio_iommu *iommu = iommu_data; in vfio_iommu_type1_unpin_pages() local 754 static long vfio_unmap_unpin(struct vfio_iommu *iommu, struct vfio_dma *dma, in vfio_unmap_unpin() 833 static void vfio_remove_dma(struct vfio_iommu *iommu, struct vfio_dma *dma) in vfio_remove_dma() 841 static unsigned long vfio_pgsize_bitmap(struct vfio_iommu *iommu) in vfio_pgsize_bitmap() 867 static int vfio_dma_do_unmap(struct vfio_iommu *iommu, in vfio_dma_do_unmap() [all …]
|
/Linux-v4.19/arch/powerpc/platforms/cell/ |
D | iommu.c | 115 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 717 struct cbe_iommu *iommu; in cell_iommu_alloc() local [all …]
|
/Linux-v4.19/arch/sparc/mm/ |
D | iommu.c | 59 struct iommu_struct *iommu; in sbus_iommu_init() local 180 struct iommu_struct *iommu = dev->archdata.iommu; in iommu_get_one() local 286 struct iommu_struct *iommu = dev->archdata.iommu; in iommu_release_one() local 328 struct iommu_struct *iommu = dev->archdata.iommu; in iommu_map_dma_area() local 394 struct iommu_struct *iommu = dev->archdata.iommu; in iommu_unmap_dma_area() local
|
/Linux-v4.19/drivers/gpu/drm/etnaviv/ |
D | etnaviv_mmu.c | 68 static int etnaviv_iommu_map(struct etnaviv_iommu *iommu, u32 iova, in etnaviv_iommu_map() 107 static void etnaviv_iommu_unmap(struct etnaviv_iommu *iommu, u32 iova, in etnaviv_iommu_unmap() 381 size_t etnaviv_iommu_dump_size(struct etnaviv_iommu *iommu) in etnaviv_iommu_dump_size() 386 void etnaviv_iommu_dump(struct etnaviv_iommu *iommu, void *buf) in etnaviv_iommu_dump()
|
/Linux-v4.19/include/linux/ |
D | dma_remapping.h | 45 static inline int iommu_calculate_agaw(struct intel_iommu *iommu) in iommu_calculate_agaw() 49 static inline int iommu_calculate_max_sagaw(struct intel_iommu *iommu) in iommu_calculate_max_sagaw()
|
D | iommu.h | 261 static inline void iommu_device_set_ops(struct iommu_device *iommu, in iommu_device_set_ops() 267 static inline void iommu_device_set_fwnode(struct iommu_device *iommu, in iommu_device_set_fwnode() 619 static inline int iommu_device_register(struct iommu_device *iommu) in iommu_device_register() 624 static inline void iommu_device_set_ops(struct iommu_device *iommu, in iommu_device_set_ops() 629 static inline void iommu_device_set_fwnode(struct iommu_device *iommu, in iommu_device_set_fwnode() 639 static inline void iommu_device_unregister(struct iommu_device *iommu) in iommu_device_unregister() 643 static inline int iommu_device_sysfs_add(struct iommu_device *iommu, in iommu_device_sysfs_add() 651 static inline void iommu_device_sysfs_remove(struct iommu_device *iommu) in iommu_device_sysfs_remove()
|
/Linux-v4.19/arch/x86/events/amd/ |
D | iommu.c | 42 struct amd_iommu *iommu; member 248 struct amd_iommu *iommu = perf_event_2_iommu(ev); in perf_iommu_enable_event() local 278 struct amd_iommu *iommu = perf_event_2_iommu(event); in perf_iommu_disable_event() local 298 struct amd_iommu *iommu = perf_event_2_iommu(event); in perf_iommu_start() local 313 struct amd_iommu *iommu = perf_event_2_iommu(event); in perf_iommu_read() local
|
/Linux-v4.19/arch/ia64/include/asm/ |
D | device.h | 11 void *iommu; /* hook for IOMMU specific extension */ member
|