Lines Matching full:mmu
17 void (*detach)(struct msm_mmu *mmu);
18 void (*prealloc_count)(struct msm_mmu *mmu, struct msm_mmu_prealloc *p,
20 int (*prealloc_allocate)(struct msm_mmu *mmu, struct msm_mmu_prealloc *p);
21 void (*prealloc_cleanup)(struct msm_mmu *mmu, struct msm_mmu_prealloc *p);
22 int (*map)(struct msm_mmu *mmu, uint64_t iova, struct sg_table *sgt,
24 int (*unmap)(struct msm_mmu *mmu, uint64_t iova, size_t len);
25 void (*destroy)(struct msm_mmu *mmu);
26 void (*set_stall)(struct msm_mmu *mmu, bool enable);
36 * struct msm_mmu_prealloc - Tracking for pre-allocated pages for MMU updates.
44 * @pages: Array of pages preallocated for MMU table updates.
48 * returned to the pt_cache at mmu->prealloc_cleanup().
69 static inline void msm_mmu_init(struct msm_mmu *mmu, struct device *dev, in msm_mmu_init() argument
72 mmu->dev = dev; in msm_mmu_init()
73 mmu->funcs = funcs; in msm_mmu_init()
74 mmu->type = type; in msm_mmu_init()
81 static inline void msm_mmu_set_fault_handler(struct msm_mmu *mmu, void *arg, in msm_mmu_set_fault_handler() argument
84 mmu->arg = arg; in msm_mmu_set_fault_handler()
85 mmu->handler = handler; in msm_mmu_set_fault_handler()
90 int msm_iommu_pagetable_params(struct msm_mmu *mmu, phys_addr_t *ttbr,
92 int msm_iommu_pagetable_walk(struct msm_mmu *mmu, unsigned long iova, uint64_t ptes[4]);
93 struct iommu_domain_geometry *msm_iommu_get_geometry(struct msm_mmu *mmu);