| /OK3568_Linux_fs/kernel/drivers/iommu/amd/ |
| H A D | init.c | 263 bool translation_pre_enabled(struct amd_iommu *iommu) in translation_pre_enabled() 269 static void clear_translation_pre_enabled(struct amd_iommu *iommu) in clear_translation_pre_enabled() 274 static void init_translation_status(struct amd_iommu *iommu) in init_translation_status() 306 struct amd_iommu *iommu; in check_feature_on_all_iommus() local 323 static void __init early_iommu_features_init(struct amd_iommu *iommu, in early_iommu_features_init() 332 static u32 iommu_read_l1(struct amd_iommu *iommu, u16 l1, u8 address) in iommu_read_l1() 341 static void iommu_write_l1(struct amd_iommu *iommu, u16 l1, u8 address, u32 val) in iommu_write_l1() 348 static u32 iommu_read_l2(struct amd_iommu *iommu, u8 address) in iommu_read_l2() 357 static void iommu_write_l2(struct amd_iommu *iommu, u8 address, u32 val) in iommu_write_l2() 376 static void iommu_set_exclusion_range(struct amd_iommu *iommu) in iommu_set_exclusion_range() [all …]
|
| H A D | iommu.c | 276 struct amd_iommu *iommu = amd_iommu_rlookup_table[devid]; in find_dev_data() local 397 struct amd_iommu *iommu; in iommu_init_device() local 573 static void iommu_print_event(struct amd_iommu *iommu, void *__evt) in iommu_print_event() 662 static void iommu_poll_events(struct amd_iommu *iommu) in iommu_poll_events() 677 static void iommu_handle_ppr_entry(struct amd_iommu *iommu, u64 *raw) in iommu_handle_ppr_entry() 695 static void iommu_poll_ppr_log(struct amd_iommu *iommu) in iommu_poll_ppr_log() 757 static void iommu_poll_ga_log(struct amd_iommu *iommu) in iommu_poll_ga_log() 801 amd_iommu_set_pci_msi_domain(struct device *dev, struct amd_iommu *iommu) in amd_iommu_set_pci_msi_domain() 812 amd_iommu_set_pci_msi_domain(struct device *dev, struct amd_iommu *iommu) { } in amd_iommu_set_pci_msi_domain() 823 struct amd_iommu *iommu = (struct amd_iommu *) data; in amd_iommu_int_thread() local [all …]
|
| H A D | amd_iommu.h | 30 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 mask) in iommu_feature()
|
| /OK3568_Linux_fs/kernel/arch/sparc/include/asm/ |
| H A 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
|
| /OK3568_Linux_fs/kernel/drivers/iommu/intel/ |
| H A D | irq_remapping.c | 33 struct intel_iommu *iommu; member 40 struct intel_iommu *iommu; member 47 struct intel_iommu *iommu; member 86 static bool ir_pre_enabled(struct intel_iommu *iommu) in ir_pre_enabled() 91 static void clear_ir_pre_enabled(struct intel_iommu *iommu) in clear_ir_pre_enabled() 96 static void init_ir_status(struct intel_iommu *iommu) in init_ir_status() 105 static int alloc_irte(struct intel_iommu *iommu, in alloc_irte() 145 static int qi_flush_iec(struct intel_iommu *iommu, int index, int mask) in qi_flush_iec() 161 struct intel_iommu *iommu; in modify_irte() local 231 struct intel_iommu *iommu = map_ioapic_to_iommu(apic); in map_ioapic_to_ir() local [all …]
|
| H A D | iommu.c | 414 static bool translation_pre_enabled(struct intel_iommu *iommu) in translation_pre_enabled() 419 static void clear_translation_pre_enabled(struct intel_iommu *iommu) in clear_translation_pre_enabled() 424 static void init_translation_status(struct intel_iommu *iommu) in init_translation_status() 479 static struct dmar_domain* get_iommu_domain(struct intel_iommu *iommu, u16 did) in get_iommu_domain() 491 static void set_iommu_domain(struct intel_iommu *iommu, u16 did, in set_iommu_domain() 568 static unsigned long __iommu_calculate_sagaw(struct intel_iommu *iommu) in __iommu_calculate_sagaw() 586 static int __iommu_calculate_agaw(struct intel_iommu *iommu, int max_gaw) in __iommu_calculate_agaw() 603 int iommu_calculate_max_sagaw(struct intel_iommu *iommu) in iommu_calculate_max_sagaw() 613 int iommu_calculate_agaw(struct intel_iommu *iommu) in iommu_calculate_agaw() 636 static inline bool iommu_paging_structure_coherency(struct intel_iommu *iommu) in iommu_paging_structure_coherency() [all …]
|
| H A D | dmar.c | 948 static void unmap_iommu(struct intel_iommu *iommu) in unmap_iommu() 962 static int map_iommu(struct intel_iommu *iommu, u64 phys_addr) in map_iommu() 1025 static int dmar_alloc_seq_id(struct intel_iommu *iommu) in dmar_alloc_seq_id() 1039 static void dmar_free_seq_id(struct intel_iommu *iommu) in dmar_free_seq_id() 1049 struct intel_iommu *iommu; in alloc_iommu() local 1160 static void free_iommu(struct intel_iommu *iommu) in free_iommu() 1204 static int qi_check_fault(struct intel_iommu *iommu, int index, int wait_index) in qi_check_fault() 1277 int qi_submit_sync(struct intel_iommu *iommu, struct qi_desc *desc, in qi_submit_sync() 1368 void qi_global_iec(struct intel_iommu *iommu) in qi_global_iec() 1381 void qi_flush_context(struct intel_iommu *iommu, u16 did, u16 sid, u8 fm, in qi_flush_context() [all …]
|
| H A D | pasid.c | 30 int vcmd_alloc_pasid(struct intel_iommu *iommu, u32 *pasid) in vcmd_alloc_pasid() 61 void vcmd_free_pasid(struct intel_iommu *iommu, u32 pasid) in vcmd_free_pasid() 455 pasid_cache_invalidation_with_pasid(struct intel_iommu *iommu, in pasid_cache_invalidation_with_pasid() 470 devtlb_invalidation_with_pasid(struct intel_iommu *iommu, in devtlb_invalidation_with_pasid() 496 void intel_pasid_tear_down_entry(struct intel_iommu *iommu, struct device *dev, in intel_pasid_tear_down_entry() 526 static void pasid_flush_caches(struct intel_iommu *iommu, in pasid_flush_caches() 545 int intel_pasid_setup_first_level(struct intel_iommu *iommu, in intel_pasid_setup_first_level() 604 struct intel_iommu *iommu, in iommu_skip_agaw() 621 int intel_pasid_setup_second_level(struct intel_iommu *iommu, in intel_pasid_setup_second_level() 683 int intel_pasid_setup_pass_through(struct intel_iommu *iommu, in intel_pasid_setup_pass_through() [all …]
|
| H A D | debugfs.c | 113 struct intel_iommu *iommu; in iommu_regset_show() local 214 static void ctx_tbl_walk(struct seq_file *m, struct intel_iommu *iommu, u16 bus) in ctx_tbl_walk() 260 static void root_tbl_walk(struct seq_file *m, struct intel_iommu *iommu) in root_tbl_walk() 284 struct intel_iommu *iommu; in dmar_translation_struct_show() local 376 struct intel_iommu *iommu) in invalidation_queue_entry_show() 405 struct intel_iommu *iommu; in invalidation_queue_show() local 437 struct intel_iommu *iommu) in ir_tbl_remap_entry_show() 461 struct intel_iommu *iommu) in ir_tbl_posted_entry_show() 493 struct intel_iommu *iommu; in ir_translation_struct_show() local
|
| H A D | svm.c | 31 int intel_svm_enable_prq(struct intel_iommu *iommu) in intel_svm_enable_prq() 76 int intel_svm_finish_prq(struct intel_iommu *iommu) in intel_svm_finish_prq() 94 static inline bool intel_svm_capable(struct intel_iommu *iommu) in intel_svm_capable() 99 void intel_svm_check(struct intel_iommu *iommu) in intel_svm_check() 260 struct intel_iommu *iommu = device_to_iommu(dev, NULL, NULL); in intel_svm_bind_gpasid() local 401 struct intel_iommu *iommu = device_to_iommu(dev, NULL, NULL); in intel_svm_unbind_gpasid() local 468 struct intel_iommu *iommu = device_to_iommu(dev, NULL, NULL); in intel_svm_bind_mm() local 647 struct intel_iommu *iommu; in intel_svm_unbind_mm() local 770 struct intel_iommu *iommu; in intel_svm_drain_prq() local 895 struct intel_iommu *iommu = d; in prq_event_thread() local [all …]
|
| /OK3568_Linux_fs/kernel/drivers/iommu/ |
| H A D | rockchip-iommu.c | 122 struct iommu_device iommu; member 133 struct rk_iommu *iommu; member 363 static void rk_iommu_command(struct rk_iommu *iommu, u32 command) in rk_iommu_command() 375 static void rk_iommu_zap_lines(struct rk_iommu *iommu, dma_addr_t iova_start, in rk_iommu_zap_lines() 392 static bool rk_iommu_is_stall_active(struct rk_iommu *iommu) in rk_iommu_is_stall_active() 404 static bool rk_iommu_is_paging_enabled(struct rk_iommu *iommu) in rk_iommu_is_paging_enabled() 416 static bool rk_iommu_is_reset_done(struct rk_iommu *iommu) in rk_iommu_is_reset_done() 427 static int rk_iommu_enable_stall(struct rk_iommu *iommu) in rk_iommu_enable_stall() 463 static int rk_iommu_disable_stall(struct rk_iommu *iommu) in rk_iommu_disable_stall() 495 static int rk_iommu_enable_paging(struct rk_iommu *iommu) in rk_iommu_enable_paging() [all …]
|
| H A D | sun50i-iommu.c | 97 struct iommu_device iommu; member 122 struct sun50i_iommu *iommu; member 135 static u32 iommu_read(struct sun50i_iommu *iommu, u32 offset) in iommu_read() 140 static void iommu_write(struct sun50i_iommu *iommu, u32 offset, u32 value) in iommu_write() 291 struct sun50i_iommu *iommu = sun50i_domain->iommu; in sun50i_table_flush() local 298 static int sun50i_iommu_flush_all_tlb(struct sun50i_iommu *iommu) in sun50i_iommu_flush_all_tlb() 328 struct sun50i_iommu *iommu = sun50i_domain->iommu; in sun50i_iommu_flush_iotlb_all() local 353 static int sun50i_iommu_enable(struct sun50i_iommu *iommu) in sun50i_iommu_enable() 435 static void sun50i_iommu_disable(struct sun50i_iommu *iommu) in sun50i_iommu_disable() 450 static void *sun50i_iommu_alloc_page_table(struct sun50i_iommu *iommu, in sun50i_iommu_alloc_page_table() [all …]
|
| H A D | msm_iommu.c | 55 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 207 static void config_mids(struct msm_iommu_dev *iommu, in config_mids() 367 struct msm_iommu_dev *iommu, *ret = NULL; in find_iommu_for_dev() local 385 struct msm_iommu_dev *iommu; in msm_iommu_probe_device() local 406 struct msm_iommu_dev *iommu; in msm_iommu_attach_dev() local 456 struct msm_iommu_dev *iommu; in msm_iommu_detach_dev() local 517 struct msm_iommu_dev *iommu; in msm_iommu_iova_to_phys() local [all …]
|
| H A D | iommu-sysfs.c | 54 int iommu_device_sysfs_add(struct iommu_device *iommu, in iommu_device_sysfs_add() 92 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() 127 void iommu_device_unlink(struct iommu_device *iommu, struct device *link) in iommu_device_unlink()
|
| /OK3568_Linux_fs/kernel/arch/sparc/kernel/ |
| H A 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() 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 …]
|
| H A 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() 246 void iommu_tbl_range_free(struct iommu_map_table *iommu, u64 dma_addr, in iommu_tbl_range_free()
|
| H A D | sbus.c | 62 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
|
| H A D | pci_sun4v.c | 77 static inline bool iommu_use_atu(struct iommu *iommu, u64 mask) in iommu_use_atu() 187 struct iommu *iommu; in dma_4v_alloc_coherent() local 326 struct iommu *iommu; in dma_4v_free_coherent() local 359 struct iommu *iommu; in dma_4v_map_page() local 433 struct iommu *iommu; in dma_4v_unmap_page() local 478 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 …]
|
| /OK3568_Linux_fs/kernel/drivers/vfio/ |
| H A D | vfio_iommu_type1.c | 137 #define IS_IOMMU_CAP_DOMAIN_IN_CONTAINER(iommu) \ argument 164 static struct vfio_dma *vfio_find_dma(struct vfio_iommu *iommu, in vfio_find_dma() 183 static void vfio_link_dma(struct vfio_iommu *iommu, struct vfio_dma *new) in vfio_link_dma() 202 static void vfio_unlink_dma(struct vfio_iommu *iommu, struct vfio_dma *old) in vfio_unlink_dma() 246 static void vfio_iommu_populate_bitmap_full(struct vfio_iommu *iommu) in vfio_iommu_populate_bitmap_full() 258 static int vfio_dma_bitmap_alloc_all(struct vfio_iommu *iommu, size_t pgsize) in vfio_dma_bitmap_alloc_all() 283 static void vfio_dma_bitmap_free_all(struct vfio_iommu *iommu) in vfio_dma_bitmap_free_all() 719 struct vfio_iommu *iommu = iommu_data; in vfio_iommu_type1_pin_pages() local 823 struct vfio_iommu *iommu = iommu_data; in vfio_iommu_type1_unpin_pages() local 944 static long vfio_unmap_unpin(struct vfio_iommu *iommu, struct vfio_dma *dma, in vfio_unmap_unpin() [all …]
|
| /OK3568_Linux_fs/kernel/drivers/video/rockchip/mpp/ |
| H A D | mpp_iommu_av1d.c | 55 struct iommu_device iommu; member 63 struct av1_iommu *iommu; member 188 static void av1_iommu_disable(struct av1_iommu *iommu) in av1_iommu_disable() 202 struct av1_iommu *iommu = av1_iommu_from_dev(dev); in mpp_av1_iommu_disable() local 212 static int av1_iommu_enable(struct av1_iommu *iommu) in av1_iommu_enable() 239 struct av1_iommu *iommu = av1_iommu_from_dev(dev); in mpp_av1_iommu_enable() local 297 struct av1_iommu *iommu; in av1_iommu_flush_tlb_all() local 320 struct av1_iommu *iommu = dev_id; in av1_iommu_irq() local 626 struct av1_iommu *iommu; in av1_iommu_detach_device() local 657 struct av1_iommu *iommu; in av1_iommu_attach_device() local [all …]
|
| /OK3568_Linux_fs/kernel/drivers/video/rockchip/mpp/hack/ |
| H A D | mpp_hack_px30.c | 44 static bool mpp_iommu_is_paged(struct mpp_rk_iommu *iommu) in mpp_iommu_is_paged() 58 static u32 mpp_iommu_get_dte_addr(struct mpp_rk_iommu *iommu) in mpp_iommu_get_dte_addr() 63 static int mpp_iommu_enable(struct mpp_rk_iommu *iommu) in mpp_iommu_enable() 117 static int mpp_iommu_disable(struct mpp_rk_iommu *iommu) in mpp_iommu_disable() 149 struct mpp_rk_iommu *iommu = NULL, *loop = NULL, *n; in px30_workaround_combo_init() local
|
| /OK3568_Linux_fs/kernel/drivers/gpu/drm/msm/ |
| H A D | msm_iommu.c | 85 struct msm_iommu *iommu = to_msm_iommu(pagetable->parent); in msm_iommu_pagetable_destroy() local 148 struct msm_iommu *iommu = to_msm_iommu(parent); in msm_iommu_pagetable_create() local 213 struct msm_iommu *iommu = arg; in msm_fault_handler() local 222 struct msm_iommu *iommu = to_msm_iommu(mmu); in msm_iommu_detach() local 230 struct msm_iommu *iommu = to_msm_iommu(mmu); in msm_iommu_map() local 245 struct msm_iommu *iommu = to_msm_iommu(mmu); in msm_iommu_unmap() local 257 struct msm_iommu *iommu = to_msm_iommu(mmu); in msm_iommu_destroy() local 271 struct msm_iommu *iommu; in msm_iommu_new() local
|
| /OK3568_Linux_fs/kernel/arch/powerpc/platforms/cell/ |
| H A D | iommu.c | 102 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 …]
|
| /OK3568_Linux_fs/kernel/arch/x86/events/amd/ |
| H A D | iommu.c | 37 struct amd_iommu *iommu; member 238 struct amd_iommu *iommu = perf_event_2_iommu(ev); in perf_iommu_enable_event() local 268 struct amd_iommu *iommu = perf_event_2_iommu(event); in perf_iommu_disable_event() local 295 struct amd_iommu *iommu = perf_event_2_iommu(event); in perf_iommu_start() local 312 struct amd_iommu *iommu = perf_event_2_iommu(event); in perf_iommu_read() local
|
| /OK3568_Linux_fs/kernel/drivers/media/platform/qcom/venus/ |
| H A D | firmware.c | 132 struct iommu_domain *iommu; in venus_boot_no_tz() local 158 struct iommu_domain *iommu; in venus_shutdown_no_tz() local 300 struct iommu_domain *iommu; in venus_firmware_deinit() local
|