Home
last modified time | relevance | path

Searched refs:iommu_domain (Results 1 – 25 of 105) sorted by relevance

12345

/linux/include/linux/
A Diommu.h38 struct iommu_domain;
208 struct iommu_domain { struct
565 struct iommu_domain *(*domain_alloc_user)(
592 struct iommu_domain *domain);
597 struct iommu_domain *identity_domain;
598 struct iommu_domain *blocked_domain;
599 struct iommu_domain *release_domain;
600 struct iommu_domain *default_domain;
657 void (*iotlb_sync)(struct iommu_domain *domain,
670 void (*free)(struct iommu_domain *domain);
[all …]
A Domap-iommu.h13 struct iommu_domain;
19 int omap_iommu_domain_deactivate(struct iommu_domain *domain);
20 int omap_iommu_domain_activate(struct iommu_domain *domain);
25 static inline int omap_iommu_domain_deactivate(struct iommu_domain *domain) in omap_iommu_domain_deactivate()
30 static inline int omap_iommu_domain_activate(struct iommu_domain *domain) in omap_iommu_domain_activate()
/linux/drivers/iommu/
A Ddma-iommu.h14 int iommu_get_dma_cookie(struct iommu_domain *domain);
15 void iommu_put_dma_cookie(struct iommu_domain *domain);
17 int iommu_dma_init_fq(struct iommu_domain *domain);
29 static inline int iommu_dma_init_fq(struct iommu_domain *domain) in iommu_dma_init_fq()
34 static inline int iommu_get_dma_cookie(struct iommu_domain *domain) in iommu_get_dma_cookie()
39 static inline void iommu_put_dma_cookie(struct iommu_domain *domain) in iommu_put_dma_cookie()
A Dfsl_pamu_domain.c27 static struct fsl_dma_domain *to_fsl_dma_domain(struct iommu_domain *dom) in to_fsl_dma_domain()
29 return container_of(dom, struct fsl_dma_domain, iommu_domain); in to_fsl_dma_domain()
186 static void fsl_pamu_domain_free(struct iommu_domain *domain) in fsl_pamu_domain_free()
195 static struct iommu_domain *fsl_pamu_domain_alloc(unsigned type) in fsl_pamu_domain_alloc()
218 dma_domain->iommu_domain. geometry.aperture_start = 0; in fsl_pamu_domain_alloc()
219 dma_domain->iommu_domain.geometry.aperture_end = (1ULL << 36) - 1; in fsl_pamu_domain_alloc()
220 dma_domain->iommu_domain.geometry.force_aperture = true; in fsl_pamu_domain_alloc()
222 return &dma_domain->iommu_domain; in fsl_pamu_domain_alloc()
240 static int fsl_pamu_attach_device(struct iommu_domain *domain, in fsl_pamu_attach_device()
303 struct iommu_domain *domain = iommu_get_domain_for_dev(dev); in fsl_pamu_platform_attach()
[all …]
A Diommu-priv.h28 struct iommu_domain *new_domain);
41 int iommu_attach_group_handle(struct iommu_domain *domain,
44 void iommu_detach_group_handle(struct iommu_domain *domain,
47 struct iommu_domain *new_domain,
A Diommu.c57 struct iommu_domain *default_domain;
59 struct iommu_domain *domain;
96 static struct iommu_domain *
1589 static struct iommu_domain *
1601 static struct iommu_domain *
1605 struct iommu_domain *dom; in iommu_group_alloc_default_domain()
1941 struct iommu_domain *domain; in __iommu_domain_alloc()
1989 static struct iommu_domain *
2021 struct iommu_domain *domain; in iommu_domain_alloc()
2950 struct iommu_domain *dom; in iommu_setup_default_domain()
[all …]
A Dsprd-iommu.c78 struct iommu_domain domain;
86 static struct sprd_iommu_domain *to_sprd_domain(struct iommu_domain *dom) in to_sprd_domain()
129 sprd_iommu_pgt_size(struct iommu_domain *domain) in sprd_iommu_pgt_size()
136 static struct iommu_domain *sprd_iommu_domain_alloc_paging(struct device *dev) in sprd_iommu_domain_alloc_paging()
239 static void sprd_iommu_domain_free(struct iommu_domain *domain) in sprd_iommu_domain_free()
247 static int sprd_iommu_attach_device(struct iommu_domain *domain, in sprd_iommu_attach_device()
284 static int sprd_iommu_map(struct iommu_domain *domain, unsigned long iova, in sprd_iommu_map()
321 static size_t sprd_iommu_unmap(struct iommu_domain *domain, unsigned long iova, in sprd_iommu_unmap()
344 static int sprd_iommu_sync_map(struct iommu_domain *domain, in sprd_iommu_sync_map()
360 static void sprd_iommu_sync(struct iommu_domain *domain, in sprd_iommu_sync()
[all …]
A Dexynos-iommu.c29 static struct iommu_domain exynos_identity_domain;
238 struct iommu_domain *domain; /* domain this device is attached */
254 struct iommu_domain domain; /* generic domain data structure */
943 static void exynos_iommu_domain_free(struct iommu_domain *iommu_domain) in exynos_iommu_domain_free() argument
945 struct exynos_iommu_domain *domain = to_exynos_domain(iommu_domain); in exynos_iommu_domain_free()
1029 static struct iommu_domain exynos_identity_domain = {
1034 static int exynos_iommu_attach_device(struct iommu_domain *iommu_domain, in exynos_iommu_attach_device() argument
1058 owner->domain = iommu_domain; in exynos_iommu_attach_device()
1232 static int exynos_iommu_map(struct iommu_domain *iommu_domain, in exynos_iommu_map() argument
1290 static size_t exynos_iommu_unmap(struct iommu_domain *iommu_domain, in exynos_iommu_unmap() argument
[all …]
A Diommu-sva.c13 static struct iommu_domain *iommu_sva_domain_alloc(struct device *dev,
76 struct iommu_domain *domain; in iommu_sva_bind_device()
166 struct iommu_domain *domain = handle->handle.domain; in iommu_sva_unbind_device()
188 struct iommu_domain *domain = handle->handle.domain; in iommu_sva_get_pasid()
296 static struct iommu_domain *iommu_sva_domain_alloc(struct device *dev, in iommu_sva_domain_alloc()
300 struct iommu_domain *domain; in iommu_sva_domain_alloc()
A Ds390-iommu.c28 struct iommu_domain domain;
311 static struct s390_domain *to_s390_domain(struct iommu_domain *dom) in to_s390_domain()
330 static struct iommu_domain *s390_domain_alloc_paging(struct device *dev) in s390_domain_alloc_paging()
361 static void s390_domain_free(struct iommu_domain *domain) in s390_domain_free()
372 static void s390_iommu_detach_device(struct iommu_domain *domain, in s390_iommu_detach_device()
388 static int s390_iommu_attach_device(struct iommu_domain *domain, in s390_iommu_attach_device()
490 static void s390_iommu_flush_iotlb_all(struct iommu_domain *domain) in s390_iommu_flush_iotlb_all()
503 static void s390_iommu_iotlb_sync(struct iommu_domain *domain, in s390_iommu_iotlb_sync()
523 static int s390_iommu_iotlb_sync_map(struct iommu_domain *domain, in s390_iommu_iotlb_sync_map()
610 static int s390_iommu_map_pages(struct iommu_domain *domain, in s390_iommu_map_pages()
[all …]
A Dfsl_pamu_domain.h16 struct iommu_domain iommu_domain; member
A Dipmmu-vmsa.c72 struct iommu_domain io_domain;
81 static struct ipmmu_vmsa_domain *to_vmsa_domain(struct iommu_domain *dom) in to_vmsa_domain()
565 static struct iommu_domain *ipmmu_domain_alloc_paging(struct device *dev) in ipmmu_domain_alloc_paging()
578 static void ipmmu_domain_free(struct iommu_domain *io_domain) in ipmmu_domain_free()
591 static int ipmmu_attach_device(struct iommu_domain *io_domain, in ipmmu_attach_device()
641 struct iommu_domain *io_domain = iommu_get_domain_for_dev(dev); in ipmmu_iommu_identity_attach()
663 static struct iommu_domain ipmmu_iommu_identity_domain = {
668 static int ipmmu_map(struct iommu_domain *io_domain, unsigned long iova, in ipmmu_map()
687 static void ipmmu_flush_iotlb_all(struct iommu_domain *io_domain) in ipmmu_flush_iotlb_all()
695 static void ipmmu_iotlb_sync(struct iommu_domain *io_domain, in ipmmu_iotlb_sync()
[all …]
A Dsun50i-iommu.c111 struct iommu_domain *domain;
116 struct iommu_domain domain;
384 static void sun50i_iommu_flush_iotlb_all(struct iommu_domain *domain) in sun50i_iommu_flush_iotlb_all()
406 static int sun50i_iommu_iotlb_sync_map(struct iommu_domain *domain, in sun50i_iommu_iotlb_sync_map()
420 static void sun50i_iommu_iotlb_sync(struct iommu_domain *domain, in sun50i_iommu_iotlb_sync()
595 static int sun50i_iommu_map(struct iommu_domain *domain, unsigned long iova, in sun50i_iommu_map()
662 static phys_addr_t sun50i_iommu_iova_to_phys(struct iommu_domain *domain, in sun50i_iommu_iova_to_phys()
684 static struct iommu_domain *
712 static void sun50i_iommu_domain_free(struct iommu_domain *domain) in sun50i_iommu_domain_free()
792 static struct iommu_domain sun50i_iommu_identity_domain = {
[all …]
A Dmsm_iommu.c42 struct iommu_domain domain;
49 static struct msm_priv *to_msm_priv(struct iommu_domain *dom) in to_msm_priv()
305 static struct iommu_domain *msm_iommu_domain_alloc_paging(struct device *dev) in msm_iommu_domain_alloc_paging()
326 static void msm_iommu_domain_free(struct iommu_domain *domain) in msm_iommu_domain_free()
443 static int msm_iommu_identity_attach(struct iommu_domain *identity_domain, in msm_iommu_identity_attach()
446 struct iommu_domain *domain = iommu_get_domain_for_dev(dev); in msm_iommu_identity_attach()
480 static struct iommu_domain msm_iommu_identity_domain = {
485 static int msm_iommu_map(struct iommu_domain *domain, unsigned long iova, in msm_iommu_map()
501 static int msm_iommu_sync_map(struct iommu_domain *domain, unsigned long iova, in msm_iommu_sync_map()
510 static size_t msm_iommu_unmap(struct iommu_domain *domain, unsigned long iova, in msm_iommu_unmap()
[all …]
A Dmtk_iommu_v1.c113 struct iommu_domain domain;
133 static struct mtk_iommu_v1_domain *to_mtk_domain(struct iommu_domain *dom) in to_mtk_domain()
273 static struct iommu_domain *mtk_iommu_v1_domain_alloc_paging(struct device *dev) in mtk_iommu_v1_domain_alloc_paging()
284 static void mtk_iommu_v1_domain_free(struct iommu_domain *domain) in mtk_iommu_v1_domain_free()
294 static int mtk_iommu_v1_attach_device(struct iommu_domain *domain, struct device *dev) in mtk_iommu_v1_attach_device()
319 static int mtk_iommu_v1_identity_attach(struct iommu_domain *identity_domain, in mtk_iommu_v1_identity_attach()
332 static struct iommu_domain mtk_iommu_v1_identity_domain = {
337 static int mtk_iommu_v1_map(struct iommu_domain *domain, unsigned long iova, in mtk_iommu_v1_map()
363 static size_t mtk_iommu_v1_unmap(struct iommu_domain *domain, unsigned long iova, in mtk_iommu_v1_unmap()
381 static phys_addr_t mtk_iommu_v1_iova_to_phys(struct iommu_domain *domain, dma_addr_t iova) in mtk_iommu_v1_iova_to_phys()
/linux/drivers/soc/fsl/qbman/
A Dqman_portal.c51 pcfg->iommu_domain = iommu_paging_domain_alloc(dev); in portal_set_cpu()
52 if (IS_ERR(pcfg->iommu_domain)) { in portal_set_cpu()
54 pcfg->iommu_domain = NULL; in portal_set_cpu()
57 ret = fsl_pamu_configure_l1_stash(pcfg->iommu_domain, cpu); in portal_set_cpu()
63 ret = iommu_attach_device(pcfg->iommu_domain, dev); in portal_set_cpu()
78 iommu_domain_free(pcfg->iommu_domain); in portal_set_cpu()
79 pcfg->iommu_domain = NULL; in portal_set_cpu()
91 pcfg->iommu_domain = NULL; in init_pcfg()
131 if (pcfg->iommu_domain) { in qman_portal_update_sdest()
132 if (fsl_pamu_configure_l1_stash(pcfg->iommu_domain, cpu) < 0) { in qman_portal_update_sdest()
/linux/drivers/media/platform/qcom/venus/
A Dfirmware.c151 struct iommu_domain *iommu; in venus_boot_no_tz()
159 iommu = core->fw.iommu_domain; in venus_boot_no_tz()
177 struct iommu_domain *iommu; in venus_shutdown_no_tz()
196 iommu = core->fw.iommu_domain; in venus_shutdown_no_tz()
286 struct iommu_domain *iommu_dom; in venus_firmware_init()
332 core->fw.iommu_domain = iommu_dom; in venus_firmware_init()
348 struct iommu_domain *iommu; in venus_firmware_deinit()
353 iommu = core->fw.iommu_domain; in venus_firmware_deinit()
357 if (core->fw.iommu_domain) { in venus_firmware_deinit()
359 core->fw.iommu_domain = NULL; in venus_firmware_deinit()
/linux/drivers/iommu/iommufd/
A Dio_pagetable.h15 struct iommu_domain;
44 struct iommu_domain *storage_domain;
65 int iopt_area_fill_domain(struct iopt_area *area, struct iommu_domain *domain);
67 struct iommu_domain *domain);
69 struct iommu_domain *domain);
/linux/drivers/iommu/amd/
A Damd_iommu.h51 struct iommu_domain *amd_iommu_domain_alloc_sva(struct device *dev,
53 void amd_iommu_domain_free(struct iommu_domain *dom);
54 int iommu_sva_set_dev_pasid(struct iommu_domain *domain,
57 struct iommu_domain *domain);
161 static inline struct protection_domain *to_pdomain(struct iommu_domain *dom) in to_pdomain()
A Dpasid.c102 int iommu_sva_set_dev_pasid(struct iommu_domain *domain, in iommu_sva_set_dev_pasid()
145 struct iommu_domain *domain) in amd_iommu_remove_dev_pasid()
163 static void iommu_sva_domain_free(struct iommu_domain *domain) in iommu_sva_domain_free()
178 struct iommu_domain *amd_iommu_domain_alloc_sva(struct device *dev, in amd_iommu_domain_alloc_sva()
/linux/drivers/iommu/intel/
A Dnested.c21 static int intel_nested_attach_dev(struct iommu_domain *domain, in intel_nested_attach_dev()
78 static void intel_nested_domain_free(struct iommu_domain *domain) in intel_nested_domain_free()
90 static int intel_nested_cache_invalidate_user(struct iommu_domain *domain, in intel_nested_cache_invalidate_user()
139 struct iommu_domain *intel_nested_domain_alloc(struct iommu_domain *parent, in intel_nested_domain_alloc()
/linux/drivers/iommu/arm/arm-smmu/
A Dqcom_iommu.c63 struct iommu_domain *domain;
70 struct iommu_domain domain;
75 static struct qcom_iommu_domain *to_qcom_iommu_domain(struct iommu_domain *dom) in to_qcom_iommu_domain()
216 static int qcom_iommu_init_domain(struct iommu_domain *domain, in qcom_iommu_init_domain()
344 static void qcom_iommu_domain_free(struct iommu_domain *domain) in qcom_iommu_domain_free()
394 struct iommu_domain *domain = iommu_get_domain_for_dev(dev); in qcom_iommu_identity_attach()
424 static struct iommu_domain qcom_iommu_identity_domain = {
429 static int qcom_iommu_map(struct iommu_domain *domain, unsigned long iova, in qcom_iommu_map()
473 static void qcom_iommu_flush_iotlb_all(struct iommu_domain *domain) in qcom_iommu_flush_iotlb_all()
486 static void qcom_iommu_iotlb_sync(struct iommu_domain *domain, in qcom_iommu_iotlb_sync()
[all …]
/linux/arch/powerpc/include/asm/
A Dfsl_pamu_stash.h10 struct iommu_domain;
19 int fsl_pamu_configure_l1_stash(struct iommu_domain *domain, u32 cpu);
/linux/drivers/net/wireless/ath/ath11k/
A Dahb.h28 struct iommu_domain *iommu_domain; member
/linux/drivers/net/ethernet/marvell/octeontx2/nic/
A Dotx2_txrx.h161 static inline u64 otx2_iova_to_phys(void *iommu_domain, dma_addr_t dma_addr) in otx2_iova_to_phys() argument
164 if (likely(iommu_domain)) in otx2_iova_to_phys()
165 return iommu_iova_to_phys(iommu_domain, dma_addr); in otx2_iova_to_phys()

Completed in 653 milliseconds

12345