/kernel/linux/linux-6.6/drivers/iommu/arm/arm-smmu/ |
H A D | arm-smmu.h | 277 struct arm_smmu_device { struct 368 struct arm_smmu_device *smmu; 380 struct arm_smmu_device *smmu; 425 u32 (*read_reg)(struct arm_smmu_device *smmu, int page, int offset); 426 void (*write_reg)(struct arm_smmu_device *smmu, int page, int offset, 428 u64 (*read_reg64)(struct arm_smmu_device *smmu, int page, int offset); 429 void (*write_reg64)(struct arm_smmu_device *smmu, int page, int offset, 431 int (*cfg_probe)(struct arm_smmu_device *smmu); 432 int (*reset)(struct arm_smmu_device *smmu); 435 void (*tlb_sync)(struct arm_smmu_device *smm [all...] |
H A D | arm-smmu-impl.c | 28 static u32 arm_smmu_read_ns(struct arm_smmu_device *smmu, int page, in arm_smmu_read_ns() 36 static void arm_smmu_write_ns(struct arm_smmu_device *smmu, int page, in arm_smmu_write_ns() 52 struct arm_smmu_device smmu; 56 static int cavium_cfg_probe(struct arm_smmu_device *smmu) in cavium_cfg_probe() 90 static struct arm_smmu_device *cavium_smmu_impl_init(struct arm_smmu_device *smmu) in cavium_smmu_impl_init() 110 int arm_mmu500_reset(struct arm_smmu_device *smmu) in arm_mmu500_reset() 151 static u64 mrvl_mmu500_readq(struct arm_smmu_device *smmu, int page, int off) in mrvl_mmu500_readq() 160 static void mrvl_mmu500_writeq(struct arm_smmu_device *smmu, int page, int off, in mrvl_mmu500_writeq() 170 static int mrvl_mmu500_cfg_probe(struct arm_smmu_device *smm [all...] |
H A D | arm-smmu-nvidia.c | 35 struct arm_smmu_device smmu; 41 static inline struct nvidia_smmu *to_nvidia_smmu(struct arm_smmu_device *smmu) in to_nvidia_smmu() 46 static inline void __iomem *nvidia_smmu_page(struct arm_smmu_device *smmu, in nvidia_smmu_page() 55 static u32 nvidia_smmu_read_reg(struct arm_smmu_device *smmu, in nvidia_smmu_read_reg() 63 static void nvidia_smmu_write_reg(struct arm_smmu_device *smmu, in nvidia_smmu_write_reg() 76 static u64 nvidia_smmu_read_reg64(struct arm_smmu_device *smmu, in nvidia_smmu_read_reg64() 84 static void nvidia_smmu_write_reg64(struct arm_smmu_device *smmu, in nvidia_smmu_write_reg64() 97 static void nvidia_smmu_tlb_sync(struct arm_smmu_device *smmu, int page, in nvidia_smmu_tlb_sync() 132 static int nvidia_smmu_reset(struct arm_smmu_device *smmu) in nvidia_smmu_reset() 151 struct arm_smmu_device *smm in nvidia_smmu_global_fault_inst() [all...] |
H A D | arm-smmu.c | 71 static inline int arm_smmu_rpm_get(struct arm_smmu_device *smmu) in arm_smmu_rpm_get() 79 static inline void arm_smmu_rpm_put(struct arm_smmu_device *smmu) in arm_smmu_rpm_put() 130 struct arm_smmu_device **smmu) in arm_smmu_register_legacy_master() 181 struct arm_smmu_device **smmu) in arm_smmu_register_legacy_master() 193 static void __arm_smmu_tlb_sync(struct arm_smmu_device *smmu, int page, in __arm_smmu_tlb_sync() 216 static void arm_smmu_tlb_sync_global(struct arm_smmu_device *smmu) in arm_smmu_tlb_sync_global() 228 struct arm_smmu_device *smmu = smmu_domain->smmu; in arm_smmu_tlb_sync_context() 253 struct arm_smmu_device *smmu = smmu_domain->smmu; in arm_smmu_tlb_inv_context_s2() 265 struct arm_smmu_device *smmu = smmu_domain->smmu; in arm_smmu_tlb_inv_range_s1() 293 struct arm_smmu_device *smm in arm_smmu_tlb_inv_range_s2() [all...] |
H A D | arm-smmu-qcom.c | 17 static struct qcom_smmu *to_qcom_smmu(struct arm_smmu_device *smmu) in to_qcom_smmu() 22 static void qcom_smmu_tlb_sync(struct arm_smmu_device *smmu, int page, in qcom_smmu_tlb_sync() 42 static void qcom_adreno_smmu_write_sctlr(struct arm_smmu_device *smmu, int idx, in qcom_adreno_smmu_write_sctlr() 64 struct arm_smmu_device *smmu = smmu_domain->smmu; in qcom_adreno_smmu_get_fault_info() 91 struct arm_smmu_device *smmu = smmu_domain->smmu; in qcom_adreno_smmu_resume_translation() 178 struct arm_smmu_device *smmu, in qcom_adreno_smmu_alloc_context_bank() 198 static bool qcom_adreno_can_do_ttbr1(struct arm_smmu_device *smmu) in qcom_adreno_can_do_ttbr1() 272 static int qcom_smmu_cfg_probe(struct arm_smmu_device *smmu) in qcom_smmu_cfg_probe() 336 static void qcom_smmu_write_s2cr(struct arm_smmu_device *smmu, int idx) in qcom_smmu_write_s2cr() 379 static int qcom_sdm845_smmu500_reset(struct arm_smmu_device *smm [all...] |
H A D | arm-smmu-qcom.h | 10 struct arm_smmu_device smmu; 34 void qcom_smmu_tlb_sync_debug(struct arm_smmu_device *smmu); 36 static inline void qcom_smmu_tlb_sync_debug(struct arm_smmu_device *smmu) { } in qcom_smmu_tlb_sync_debug()
|
H A D | arm-smmu-qcom-debug.c | 13 void qcom_smmu_tlb_sync_debug(struct arm_smmu_device *smmu) in qcom_smmu_tlb_sync_debug()
|
/kernel/linux/linux-5.10/drivers/iommu/arm/arm-smmu/ |
H A D | arm-smmu-impl.c | 28 static u32 arm_smmu_read_ns(struct arm_smmu_device *smmu, int page, in arm_smmu_read_ns() 36 static void arm_smmu_write_ns(struct arm_smmu_device *smmu, int page, in arm_smmu_write_ns() 52 struct arm_smmu_device smmu; 56 static int cavium_cfg_probe(struct arm_smmu_device *smmu) in cavium_cfg_probe() 90 static struct arm_smmu_device *cavium_smmu_impl_init(struct arm_smmu_device *smmu) in cavium_smmu_impl_init() 113 int arm_mmu500_reset(struct arm_smmu_device *smmu) in arm_mmu500_reset() 151 static u64 mrvl_mmu500_readq(struct arm_smmu_device *smmu, int page, int off) in mrvl_mmu500_readq() 160 static void mrvl_mmu500_writeq(struct arm_smmu_device *smmu, int page, int off, in mrvl_mmu500_writeq() 170 static int mrvl_mmu500_cfg_probe(struct arm_smmu_device *smm [all...] |
H A D | arm-smmu-nvidia.c | 26 struct arm_smmu_device smmu; 30 static inline void __iomem *nvidia_smmu_page(struct arm_smmu_device *smmu, in nvidia_smmu_page() 39 static u32 nvidia_smmu_read_reg(struct arm_smmu_device *smmu, in nvidia_smmu_read_reg() 47 static void nvidia_smmu_write_reg(struct arm_smmu_device *smmu, in nvidia_smmu_write_reg() 59 static u64 nvidia_smmu_read_reg64(struct arm_smmu_device *smmu, in nvidia_smmu_read_reg64() 67 static void nvidia_smmu_write_reg64(struct arm_smmu_device *smmu, in nvidia_smmu_write_reg64() 79 static void nvidia_smmu_tlb_sync(struct arm_smmu_device *smmu, int page, in nvidia_smmu_tlb_sync() 113 static int nvidia_smmu_reset(struct arm_smmu_device *smmu) in nvidia_smmu_reset() 131 struct arm_smmu_device *smmu, in nvidia_smmu_global_fault_inst() 159 struct arm_smmu_device *smm in nvidia_smmu_global_fault() [all...] |
H A D | arm-smmu.h | 274 struct arm_smmu_device { struct 364 struct arm_smmu_device *smmu; 376 struct arm_smmu_device *smmu; 421 u32 (*read_reg)(struct arm_smmu_device *smmu, int page, int offset); 422 void (*write_reg)(struct arm_smmu_device *smmu, int page, int offset, 424 u64 (*read_reg64)(struct arm_smmu_device *smmu, int page, int offset); 425 void (*write_reg64)(struct arm_smmu_device *smmu, int page, int offset, 427 int (*cfg_probe)(struct arm_smmu_device *smmu); 428 int (*reset)(struct arm_smmu_device *smmu); 431 void (*tlb_sync)(struct arm_smmu_device *smm [all...] |
H A D | arm-smmu-qcom.c | 12 struct arm_smmu_device smmu; 17 static struct qcom_smmu *to_qcom_smmu(struct arm_smmu_device *smmu) in to_qcom_smmu() 34 static int qcom_smmu_cfg_probe(struct arm_smmu_device *smmu) in qcom_smmu_cfg_probe() 98 static void qcom_smmu_write_s2cr(struct arm_smmu_device *smmu, int idx) in qcom_smmu_write_s2cr() 141 static int qcom_sdm845_smmu500_reset(struct arm_smmu_device *smmu) in qcom_sdm845_smmu500_reset() 158 static int qcom_smmu500_reset(struct arm_smmu_device *smmu) in qcom_smmu500_reset() 177 struct arm_smmu_device *qcom_smmu_impl_init(struct arm_smmu_device *smmu) in qcom_smmu_impl_init()
|
H A D | arm-smmu.c | 74 static inline int arm_smmu_rpm_get(struct arm_smmu_device *smmu) in arm_smmu_rpm_get() 82 static inline void arm_smmu_rpm_put(struct arm_smmu_device *smmu) in arm_smmu_rpm_put() 135 struct arm_smmu_device **smmu) in arm_smmu_register_legacy_master() 200 struct arm_smmu_device **smmu) in arm_smmu_register_legacy_master() 212 static void __arm_smmu_tlb_sync(struct arm_smmu_device *smmu, int page, in __arm_smmu_tlb_sync() 235 static void arm_smmu_tlb_sync_global(struct arm_smmu_device *smmu) in arm_smmu_tlb_sync_global() 247 struct arm_smmu_device *smmu = smmu_domain->smmu; in arm_smmu_tlb_sync_context() 272 struct arm_smmu_device *smmu = smmu_domain->smmu; in arm_smmu_tlb_inv_context_s2() 284 struct arm_smmu_device *smmu = smmu_domain->smmu; in arm_smmu_tlb_inv_range_s1() 312 struct arm_smmu_device *smm in arm_smmu_tlb_inv_range_s2() [all...] |
/kernel/linux/linux-6.6/drivers/iommu/arm/arm-smmu-v3/ |
H A D | arm-smmu-v3.c | 89 static void parse_driver_options(struct arm_smmu_device *smmu) in parse_driver_options() 192 static void queue_poll_init(struct arm_smmu_device *smmu, in queue_poll_init() 348 static struct arm_smmu_cmdq *arm_smmu_get_cmdq(struct arm_smmu_device *smmu) in arm_smmu_get_cmdq() 353 static void arm_smmu_cmdq_build_sync_cmd(u64 *cmd, struct arm_smmu_device *smmu, in arm_smmu_cmdq_build_sync_cmd() 372 static void __arm_smmu_cmdq_skip_err(struct arm_smmu_device *smmu, in __arm_smmu_cmdq_skip_err() 427 static void arm_smmu_cmdq_skip_err(struct arm_smmu_device *smmu) in arm_smmu_cmdq_skip_err() 593 static int arm_smmu_cmdq_poll_until_not_full(struct arm_smmu_device *smmu, in arm_smmu_cmdq_poll_until_not_full() 628 static int __arm_smmu_cmdq_poll_until_msi(struct arm_smmu_device *smmu, in __arm_smmu_cmdq_poll_until_msi() 652 static int __arm_smmu_cmdq_poll_until_consumed(struct arm_smmu_device *smmu, in __arm_smmu_cmdq_poll_until_consumed() 702 static int arm_smmu_cmdq_poll_until_sync(struct arm_smmu_device *smm [all...] |
H A D | arm-smmu-v3.h | 624 struct arm_smmu_device { struct 695 struct arm_smmu_device *smmu; 718 struct arm_smmu_device *smmu; 750 void arm_smmu_tlb_inv_asid(struct arm_smmu_device *smmu, u16 asid); 759 bool arm_smmu_sva_supported(struct arm_smmu_device *smmu); 770 static inline bool arm_smmu_sva_supported(struct arm_smmu_device *smmu) in arm_smmu_sva_supported()
|
H A D | arm-smmu-v3-sva.c | 50 struct arm_smmu_device *smmu; in arm_smmu_share_asid() 390 bool arm_smmu_sva_supported(struct arm_smmu_device *smmu) in arm_smmu_sva_supported()
|
/kernel/linux/linux-5.10/drivers/iommu/arm/arm-smmu-v3/ |
H A D | arm-smmu-v3.c | 86 struct arm_smmu_device *smmu) in arm_smmu_page1_fixup() 99 static void parse_driver_options(struct arm_smmu_device *smmu) in parse_driver_options() 202 static void queue_poll_init(struct arm_smmu_device *smmu, in queue_poll_init() 350 static void arm_smmu_cmdq_build_sync_cmd(u64 *cmd, struct arm_smmu_device *smmu, in arm_smmu_cmdq_build_sync_cmd() 370 static void arm_smmu_cmdq_skip_err(struct arm_smmu_device *smmu) in arm_smmu_cmdq_skip_err() 588 static int arm_smmu_cmdq_poll_until_not_full(struct arm_smmu_device *smmu, in arm_smmu_cmdq_poll_until_not_full() 623 static int __arm_smmu_cmdq_poll_until_msi(struct arm_smmu_device *smmu, in __arm_smmu_cmdq_poll_until_msi() 647 static int __arm_smmu_cmdq_poll_until_consumed(struct arm_smmu_device *smmu, in __arm_smmu_cmdq_poll_until_consumed() 697 static int arm_smmu_cmdq_poll_until_sync(struct arm_smmu_device *smmu, in arm_smmu_cmdq_poll_until_sync() 739 static int arm_smmu_cmdq_issue_cmdlist(struct arm_smmu_device *smm [all...] |
H A D | arm-smmu-v3.h | 584 struct arm_smmu_device { struct 643 struct arm_smmu_device *smmu; 664 struct arm_smmu_device *smmu; 688 void arm_smmu_tlb_inv_asid(struct arm_smmu_device *smmu, u16 asid); 692 bool arm_smmu_sva_supported(struct arm_smmu_device *smmu); 698 static inline bool arm_smmu_sva_supported(struct arm_smmu_device *smmu) in arm_smmu_sva_supported()
|
H A D | arm-smmu-v3-sva.c | 25 struct arm_smmu_device *smmu; in arm_smmu_share_asid() 158 bool arm_smmu_sva_supported(struct arm_smmu_device *smmu) in arm_smmu_sva_supported()
|