/linux/drivers/iommu/arm/arm-smmu/ |
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() 85 static void arm_smmu_rpm_use_autosuspend(struct arm_smmu_device *smmu) in arm_smmu_rpm_use_autosuspend() 147 struct arm_smmu_device **smmu) in arm_smmu_register_legacy_master() 197 struct arm_smmu_device **smmu) in arm_smmu_register_legacy_master() 209 static void __arm_smmu_tlb_sync(struct arm_smmu_device *smmu, int page, in __arm_smmu_tlb_sync() 232 static void arm_smmu_tlb_sync_global(struct arm_smmu_device *smmu) in arm_smmu_tlb_sync_global() 244 struct arm_smmu_device *smmu = smmu_domain->smmu; in arm_smmu_tlb_sync_context() local 269 struct arm_smmu_device *smmu = smmu_domain->smmu; in arm_smmu_tlb_inv_context_s2() local 281 struct arm_smmu_device *smmu = smmu_domain->smmu; in arm_smmu_tlb_inv_range_s1() local [all …]
|
H A D | arm-smmu-nvidia.c | 35 struct arm_smmu_device smmu; member 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 *smmu, in nvidia_smmu_global_fault_inst() [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; member 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 *smmu) in mrvl_mmu500_cfg_probe() 194 struct arm_smmu_device *arm_smmu_impl_init(struct arm_smmu_device *smmu) in arm_smmu_impl_init()
|
H A D | arm-smmu-qcom.c | 19 static struct qcom_smmu *to_qcom_smmu(struct arm_smmu_device *smmu) in to_qcom_smmu() 24 static void qcom_smmu_tlb_sync(struct arm_smmu_device *smmu, int page, in qcom_smmu_tlb_sync() 44 static void qcom_adreno_smmu_write_sctlr(struct arm_smmu_device *smmu, int idx, in qcom_adreno_smmu_write_sctlr() 66 struct arm_smmu_device *smmu = smmu_domain->smmu; in qcom_adreno_smmu_get_fault_info() local 93 struct arm_smmu_device *smmu = smmu_domain->smmu; in qcom_adreno_smmu_resume_translation() local 180 struct arm_smmu_device *smmu, in qcom_adreno_smmu_alloc_context_bank() 200 static bool qcom_adreno_can_do_ttbr1(struct arm_smmu_device *smmu) in qcom_adreno_can_do_ttbr1() 277 static int qcom_smmu_cfg_probe(struct arm_smmu_device *smmu) in qcom_smmu_cfg_probe() 355 static int qcom_adreno_smmuv2_cfg_probe(struct arm_smmu_device *smmu) in qcom_adreno_smmuv2_cfg_probe() 368 static void qcom_smmu_write_s2cr(struct arm_smmu_device *smmu, int idx) in qcom_smmu_write_s2cr() [all …]
|
H A D | arm-smmu-qcom-debug.c | 59 static struct qcom_smmu *to_qcom_smmu(struct arm_smmu_device *smmu) in to_qcom_smmu() 64 void qcom_smmu_tlb_sync_debug(struct arm_smmu_device *smmu) in qcom_smmu_tlb_sync_debug() 129 struct arm_smmu_device *smmu = smmu_domain->smmu; in qcom_tbu_halt() local 266 struct arm_smmu_device *smmu = smmu_domain->smmu; in qcom_iova_to_phys() local 350 struct arm_smmu_device *smmu = smmu_domain->smmu; in qcom_smmu_iova_to_phys_hard() local 364 struct arm_smmu_device *smmu = smmu_domain->smmu; in qcom_smmu_verify_fault() local 385 struct arm_smmu_device *smmu = smmu_domain->smmu; in qcom_smmu_context_fault() local
|
H A D | arm-smmu-qcom.h | 10 struct arm_smmu_device smmu; member 39 static inline void qcom_smmu_tlb_sync_debug(struct arm_smmu_device *smmu) { } in qcom_smmu_tlb_sync_debug()
|
H A D | arm-smmu.h | 377 struct arm_smmu_device *smmu; member 389 struct arm_smmu_device *smmu; member 477 static inline void __iomem *arm_smmu_page(struct arm_smmu_device *smmu, int n) in arm_smmu_page() 482 static inline u32 arm_smmu_readl(struct arm_smmu_device *smmu, int page, int offset) in arm_smmu_readl() 489 static inline void arm_smmu_writel(struct arm_smmu_device *smmu, int page, in arm_smmu_writel() 498 static inline u64 arm_smmu_readq(struct arm_smmu_device *smmu, int page, int offset) in arm_smmu_readq() 505 static inline void arm_smmu_writeq(struct arm_smmu_device *smmu, int page, in arm_smmu_writeq()
|
/linux/drivers/iommu/ |
H A D | tegra-smmu.c | 26 struct tegra_smmu *smmu; member 56 struct tegra_smmu *smmu; member 72 static inline void smmu_writel(struct tegra_smmu *smmu, u32 value, in smmu_writel() 78 static inline u32 smmu_readl(struct tegra_smmu *smmu, unsigned long offset) in smmu_readl() 89 #define SMMU_TLB_CONFIG_ACTIVE_LINES(smmu) \ argument 168 static bool smmu_dma_addr_valid(struct tegra_smmu *smmu, dma_addr_t addr) in smmu_dma_addr_valid() 174 static dma_addr_t smmu_pde_to_dma(struct tegra_smmu *smmu, u32 pde) in smmu_pde_to_dma() 179 static void smmu_flush_ptc_all(struct tegra_smmu *smmu) in smmu_flush_ptc_all() 184 static inline void smmu_flush_ptc(struct tegra_smmu *smmu, dma_addr_t dma, in smmu_flush_ptc() 204 static inline void smmu_flush_tlb(struct tegra_smmu *smmu) in smmu_flush_tlb() [all …]
|
/linux/drivers/iommu/arm/arm-smmu-v3/ |
H A D | arm-smmu-v3.c | 90 static void parse_driver_options(struct arm_smmu_device *smmu) in parse_driver_options() 193 static void queue_poll_init(struct arm_smmu_device *smmu, in queue_poll_init() 350 static struct arm_smmu_cmdq *arm_smmu_get_cmdq(struct arm_smmu_device *smmu, in arm_smmu_get_cmdq() 361 static bool arm_smmu_cmdq_needs_busy_polling(struct arm_smmu_device *smmu, in arm_smmu_cmdq_needs_busy_polling() 370 static void arm_smmu_cmdq_build_sync_cmd(u64 *cmd, struct arm_smmu_device *smmu, in arm_smmu_cmdq_build_sync_cmd() 392 void __arm_smmu_cmdq_skip_err(struct arm_smmu_device *smmu, in __arm_smmu_cmdq_skip_err() 450 static void arm_smmu_cmdq_skip_err(struct arm_smmu_device *smmu) in arm_smmu_cmdq_skip_err() 616 static int arm_smmu_cmdq_poll_until_not_full(struct arm_smmu_device *smmu, in arm_smmu_cmdq_poll_until_not_full() 651 static int __arm_smmu_cmdq_poll_until_msi(struct arm_smmu_device *smmu, in __arm_smmu_cmdq_poll_until_msi() 675 static int __arm_smmu_cmdq_poll_until_consumed(struct arm_smmu_device *smmu, in __arm_smmu_cmdq_poll_until_consumed() [all …]
|
H A D | tegra241-cmdqv.c | 175 struct arm_smmu_device smmu; member 319 tegra241_cmdqv_get_cmdq(struct arm_smmu_device *smmu, in tegra241_cmdqv_get_cmdq() 458 static int tegra241_cmdqv_hw_reset(struct arm_smmu_device *smmu) in tegra241_cmdqv_hw_reset() 504 struct arm_smmu_device *smmu = &vcmdq->cmdqv->smmu; in tegra241_vcmdq_alloc_smmu_cmdq() local 663 static void tegra241_cmdqv_remove(struct arm_smmu_device *smmu) in tegra241_cmdqv_remove() 759 static int tegra241_cmdqv_init_structures(struct arm_smmu_device *smmu) in tegra241_cmdqv_init_structures() 809 __tegra241_cmdqv_probe(struct arm_smmu_device *smmu, struct resource *res, in __tegra241_cmdqv_probe() 890 struct arm_smmu_device *tegra241_cmdqv_probe(struct arm_smmu_device *smmu) in tegra241_cmdqv_probe()
|
H A D | arm-smmu-v3-iommufd.c | 297 struct arm_smmu_device *smmu = vsmmu->smmu; in arm_vsmmu_cache_invalidate() local 353 struct arm_smmu_device *smmu = in arm_vsmmu_alloc() local
|
/linux/include/soc/tegra/ |
H A D | mc.h | 50 } smmu; member 113 static inline void tegra_smmu_remove(struct tegra_smmu *smmu) in tegra_smmu_remove() 186 const struct tegra_smmu_soc *smmu; member 204 struct tegra_smmu *smmu; member
|
/linux/arch/arm64/boot/dts/arm/ |
H A D | fvp-base-revc.dts | 251 smmu: iommu@2b400000 { label
|
/linux/arch/arm64/boot/dts/marvell/ |
H A D | armada-ap80x.dtsi | 64 smmu: iommu@100000 { label
|
/linux/arch/arm64/boot/dts/freescale/ |
H A D | imx8qm.dtsi | 272 smmu: iommu@51400000 { label
|
H A D | fsl-ls1088a.dtsi | 679 smmu: iommu@5000000 { label
|
H A D | fsl-ls1028a.dtsi | 724 smmu: iommu@5000000 { label
|
H A D | fsl-ls208xa.dtsi | 879 smmu: iommu@5000000 { label
|
H A D | imx95.dtsi | 1527 smmu: iommu@490d0000 { label
|
/linux/arch/arm64/boot/dts/broadcom/stingray/ |
H A D | stingray.dtsi | 193 smmu: iommu@3000000 { label
|
/linux/arch/arm64/boot/dts/intel/ |
H A D | socfpga_agilex.dtsi | 396 smmu: iommu@fa000000 { label
|
/linux/arch/arm64/boot/dts/altera/ |
H A D | socfpga_stratix10.dtsi | 402 smmu: iommu@fa000000 { label
|
/linux/arch/arm64/boot/dts/broadcom/northstar2/ |
H A D | ns2.dtsi | 298 smmu: iommu@64000000 { label
|
/linux/arch/arm64/boot/dts/nvidia/ |
H A D | tegra186.dtsi | 1426 smmu: iommu@12000000 { label
|
H A D | tegra194.dtsi | 1809 smmu: iommu@12000000 { label
|