| /linux/drivers/iommu/arm/arm-smmu/ |
| H A D | arm-smmu.c | 72 static inline int arm_smmu_rpm_get(struct arm_smmu_device *smmu) in arm_smmu_rpm_get() 80 static inline void arm_smmu_rpm_put(struct arm_smmu_device *smmu) in arm_smmu_rpm_put() 89 static void arm_smmu_rpm_use_autosuspend(struct arm_smmu_device *smmu) in arm_smmu_rpm_use_autosuspend() 151 struct arm_smmu_device **smmu) in arm_smmu_register_legacy_master() 201 struct arm_smmu_device **smmu) in arm_smmu_register_legacy_master() 213 static void __arm_smmu_tlb_sync(struct arm_smmu_device *smmu, int page, in __arm_smmu_tlb_sync() 236 static void arm_smmu_tlb_sync_global(struct arm_smmu_device *smmu) in arm_smmu_tlb_sync_global() 248 struct arm_smmu_device *smmu = smmu_domain->smmu; in arm_smmu_tlb_sync_context() local 273 struct arm_smmu_device *smmu = smmu_domain->smmu; in arm_smmu_tlb_inv_context_s2() local 285 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-qcom.c | 53 static struct qcom_smmu *to_qcom_smmu(struct arm_smmu_device *smmu) in to_qcom_smmu() 58 static void qcom_smmu_tlb_sync(struct arm_smmu_device *smmu, int page, in qcom_smmu_tlb_sync() 78 static void qcom_adreno_smmu_write_sctlr(struct arm_smmu_device *smmu, int idx, in qcom_adreno_smmu_write_sctlr() 100 struct arm_smmu_device *smmu = smmu_domain->smmu; in qcom_adreno_smmu_get_fault_info() local 115 struct arm_smmu_device *smmu = smmu_domain->smmu; in qcom_adreno_smmu_set_stall() local 153 struct arm_smmu_device *smmu = smmu_domain->smmu; in qcom_adreno_smmu_set_prr_bit() local 175 struct arm_smmu_device *smmu = smmu_domain->smmu; in qcom_adreno_smmu_set_prr_addr() local 269 struct arm_smmu_device *smmu, in qcom_adreno_smmu_alloc_context_bank() 289 static bool qcom_adreno_can_do_ttbr1(struct arm_smmu_device *smmu) in qcom_adreno_can_do_ttbr1() 299 static void qcom_smmu_set_actlr_dev(struct device *dev, struct arm_smmu_device *smmu, int cbndx, in qcom_smmu_set_actlr_dev() [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
|
| /linux/drivers/iommu/arm/arm-smmu-v3/ |
| H A D | arm-smmu-v3.c | 111 static void parse_driver_options(struct arm_smmu_device *smmu) in parse_driver_options() 214 static void queue_poll_init(struct arm_smmu_device *smmu, in queue_poll_init() 371 static struct arm_smmu_cmdq *arm_smmu_get_cmdq(struct arm_smmu_device *smmu, in arm_smmu_get_cmdq() 382 static bool arm_smmu_cmdq_needs_busy_polling(struct arm_smmu_device *smmu, in arm_smmu_cmdq_needs_busy_polling() 391 static void arm_smmu_cmdq_build_sync_cmd(u64 *cmd, struct arm_smmu_device *smmu, in arm_smmu_cmdq_build_sync_cmd() 413 void __arm_smmu_cmdq_skip_err(struct arm_smmu_device *smmu, in __arm_smmu_cmdq_skip_err() 471 static void arm_smmu_cmdq_skip_err(struct arm_smmu_device *smmu) in arm_smmu_cmdq_skip_err() 637 static int arm_smmu_cmdq_poll_until_not_full(struct arm_smmu_device *smmu, in arm_smmu_cmdq_poll_until_not_full() 672 static int __arm_smmu_cmdq_poll_until_msi(struct arm_smmu_device *smmu, in __arm_smmu_cmdq_poll_until_msi() 696 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 | 215 struct arm_smmu_device smmu; member 385 tegra241_cmdqv_get_cmdq(struct arm_smmu_device *smmu, in tegra241_cmdqv_get_cmdq() 431 struct arm_smmu_device *smmu = &vcmdq->cmdqv->smmu; in tegra241_vcmdq_hw_flush_timeout() local 585 static int tegra241_cmdqv_hw_reset(struct arm_smmu_device *smmu) in tegra241_cmdqv_hw_reset() 619 struct arm_smmu_device *smmu = &vcmdq->cmdqv->smmu; in tegra241_vcmdq_alloc_smmu_cmdq() local 783 static void tegra241_cmdqv_remove(struct arm_smmu_device *smmu) in tegra241_cmdqv_remove() 812 static void *tegra241_cmdqv_hw_info(struct arm_smmu_device *smmu, u32 *length, in tegra241_cmdqv_hw_info() 920 static int tegra241_cmdqv_init_structures(struct arm_smmu_device *smmu) in tegra241_cmdqv_init_structures() 958 __tegra241_cmdqv_probe(struct arm_smmu_device *smmu, struct resource *res, in __tegra241_cmdqv_probe() 1043 struct arm_smmu_device *tegra241_cmdqv_probe(struct arm_smmu_device *smmu) in tegra241_cmdqv_probe() [all …]
|
| H A D | arm-smmu-v3-sva.c | 209 bool arm_smmu_sva_supported(struct arm_smmu_device *smmu) in arm_smmu_sva_supported() 330 struct arm_smmu_device *smmu = master->smmu; in arm_smmu_sva_domain_alloc() local
|
| H A D | arm-smmu-v3-test.c | 26 static struct arm_smmu_device smmu = { variable
|
| /linux/drivers/iommu/ |
| H A D | tegra-smmu.c | 26 struct tegra_smmu *smmu; member 59 struct tegra_smmu *smmu; member 75 static inline void smmu_writel(struct tegra_smmu *smmu, u32 value, in smmu_writel() 81 static inline u32 smmu_readl(struct tegra_smmu *smmu, unsigned long offset) in smmu_readl() 92 #define SMMU_TLB_CONFIG_ACTIVE_LINES(smmu) \ argument 179 static bool smmu_dma_addr_valid(struct tegra_smmu *smmu, dma_addr_t addr) in smmu_dma_addr_valid() 185 static dma_addr_t smmu_pde_to_dma(struct tegra_smmu *smmu, u32 pde) in smmu_pde_to_dma() 190 static void smmu_flush_ptc_all(struct tegra_smmu *smmu) in smmu_flush_ptc_all() 195 static inline void smmu_flush_ptc(struct tegra_smmu *smmu, dma_addr_t dma, in smmu_flush_ptc() 215 static inline void smmu_flush_tlb(struct tegra_smmu *smmu) in smmu_flush_tlb() [all …]
|
| /linux/drivers/acpi/arm64/ |
| H A D | iort.c | 412 struct acpi_iort_smmu_v3 *smmu; in iort_get_id_mapping_index() local 888 struct acpi_iort_node *smmu, in iort_get_rmrs() 983 struct acpi_iort_node *smmu = NULL; in iort_node_get_rmr_info() local 1095 struct acpi_iort_smmu_v3 *smmu; in iort_get_msi_resv_iommu() local 1459 struct acpi_iort_smmu_v3 *smmu; in arm_smmu_v3_count_resources() local 1481 static bool arm_smmu_v3_is_combined_irq(struct acpi_iort_smmu_v3 *smmu) in arm_smmu_v3_is_combined_irq() 1499 static unsigned long arm_smmu_v3_resource_size(struct acpi_iort_smmu_v3 *smmu) in arm_smmu_v3_resource_size() 1514 struct acpi_iort_smmu_v3 *smmu; in arm_smmu_v3_init_resources() local 1558 struct acpi_iort_smmu_v3 *smmu; in arm_smmu_v3_dma_configure() local 1581 struct acpi_iort_smmu_v3 *smmu; in arm_smmu_v3_set_proximity() local [all …]
|
| /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 | 350 smmu: iommu@2b400000 { label
|
| /linux/arch/arm64/boot/dts/marvell/mmp/ |
| H A D | pxa1908.dtsi | 75 smmu: iommu@c0010000 { label
|
| /linux/arch/arm64/boot/dts/marvell/ |
| H A D | armada-ap80x.dtsi | 79 smmu: iommu@100000 { 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 | 402 smmu: iommu@fa000000 { label
|
| /linux/arch/arm64/boot/dts/altera/ |
| H A D | socfpga_stratix10.dtsi | 405 smmu: iommu@fa000000 { label
|
| /linux/arch/arm64/boot/dts/broadcom/northstar2/ |
| H A D | ns2.dtsi | 296 smmu: iommu@64000000 { label
|
| /linux/arch/arm64/boot/dts/freescale/ |
| 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 | fsl-lx2160a.dtsi | 1336 smmu: iommu@5000000 { label
|
| H A D | imx95.dtsi | 1733 smmu: iommu@490d0000 { label
|
| /linux/arch/arm64/boot/dts/nvidia/ |
| H A D | tegra186.dtsi | 1428 smmu: iommu@12000000 { label
|
| H A D | tegra194.dtsi | 1813 smmu: iommu@12000000 { label
|