/linux/drivers/staging/media/atomisp/pci/mmu/ |
H A D | isp_mmu.c | 68 static phys_addr_t isp_pte_to_pgaddr(struct isp_mmu *mmu, in isp_pte_to_pgaddr() 74 static unsigned int isp_pgaddr_to_pte_valid(struct isp_mmu *mmu, in isp_pgaddr_to_pte_valid() 86 static phys_addr_t alloc_page_table(struct isp_mmu *mmu) in alloc_page_table() 114 static void free_page_table(struct isp_mmu *mmu, phys_addr_t page) in free_page_table() 131 static void mmu_remap_error(struct isp_mmu *mmu, in mmu_remap_error() 150 static void mmu_unmap_l2_pte_error(struct isp_mmu *mmu, in mmu_unmap_l2_pte_error() 166 static void mmu_unmap_l1_pte_error(struct isp_mmu *mmu, in mmu_unmap_l1_pte_error() 178 static void mmu_unmap_l1_pt_error(struct isp_mmu *mmu, unsigned int pte) in mmu_unmap_l1_pt_error() 188 static int mmu_l2_map(struct isp_mmu *mmu, phys_addr_t l1_pt, in mmu_l2_map() 233 static int mmu_l1_map(struct isp_mmu *mmu, phys_addr_t l1_pt, in mmu_l1_map() [all …]
|
H A D | sh_mmu_mrfld.c | 20 static unsigned int sh_phys_to_pte(struct isp_mmu *mmu, in sh_phys_to_pte() 26 static phys_addr_t sh_pte_to_phys(struct isp_mmu *mmu, in sh_pte_to_phys() 34 static unsigned int sh_get_pd_base(struct isp_mmu *mmu, in sh_get_pd_base() 53 static void sh_tlb_flush(struct isp_mmu *mmu) in sh_tlb_flush()
|
/linux/arch/arm64/kvm/hyp/nvhe/ |
H A D | tlb.c | 14 struct kvm_s2_mmu *mmu; member 19 static void enter_vmid_context(struct kvm_s2_mmu *mmu, in enter_vmid_context() 120 struct kvm_s2_mmu *mmu = cxt->mmu; in exit_vmid_context() local 148 void __kvm_tlb_flush_vmid_ipa(struct kvm_s2_mmu *mmu, in __kvm_tlb_flush_vmid_ipa() 178 void __kvm_tlb_flush_vmid_ipa_nsh(struct kvm_s2_mmu *mmu, in __kvm_tlb_flush_vmid_ipa_nsh() 208 void __kvm_tlb_flush_vmid_range(struct kvm_s2_mmu *mmu, in __kvm_tlb_flush_vmid_range() 235 void __kvm_tlb_flush_vmid(struct kvm_s2_mmu *mmu) in __kvm_tlb_flush_vmid() 249 void __kvm_flush_cpu_context(struct kvm_s2_mmu *mmu) in __kvm_flush_cpu_context()
|
/linux/drivers/staging/media/ipu3/ |
H A D | ipu3-mmu.c | 78 static void imgu_mmu_tlb_invalidate(struct imgu_mmu *mmu) in imgu_mmu_tlb_invalidate() 83 static void call_if_imgu_is_powered(struct imgu_mmu *mmu, in call_if_imgu_is_powered() 84 void (*func)(struct imgu_mmu *mmu)) in call_if_imgu_is_powered() 101 static void imgu_mmu_set_halt(struct imgu_mmu *mmu, bool halt) in imgu_mmu_set_halt() 168 static u32 *imgu_mmu_get_l2pt(struct imgu_mmu *mmu, u32 l1pt_idx) in imgu_mmu_get_l2pt() 210 static int __imgu_mmu_map(struct imgu_mmu *mmu, unsigned long iova, in __imgu_mmu_map() 254 struct imgu_mmu *mmu = to_imgu_mmu(info); in imgu_mmu_map() local 302 struct imgu_mmu *mmu = to_imgu_mmu(info); in imgu_mmu_map_sg() local 338 static size_t __imgu_mmu_unmap(struct imgu_mmu *mmu, in __imgu_mmu_unmap() 382 struct imgu_mmu *mmu = to_imgu_mmu(info); in imgu_mmu_unmap() local [all …]
|
/linux/drivers/iommu/ |
H A D | ipmmu-vmsa.c | 71 struct ipmmu_vmsa_device *mmu; member 149 static bool ipmmu_is_root(struct ipmmu_vmsa_device *mmu) in ipmmu_is_root() 156 struct ipmmu_vmsa_device *mmu = dev_get_drvdata(dev); in __ipmmu_check_device() local 177 static u32 ipmmu_read(struct ipmmu_vmsa_device *mmu, unsigned int offset) in ipmmu_read() 182 static void ipmmu_write(struct ipmmu_vmsa_device *mmu, unsigned int offset, in ipmmu_write() 188 static unsigned int ipmmu_ctx_reg(struct ipmmu_vmsa_device *mmu, in ipmmu_ctx_reg() 199 static u32 ipmmu_ctx_read(struct ipmmu_vmsa_device *mmu, in ipmmu_ctx_read() 205 static void ipmmu_ctx_write(struct ipmmu_vmsa_device *mmu, in ipmmu_ctx_write() 232 static u32 ipmmu_utlb_reg(struct ipmmu_vmsa_device *mmu, unsigned int reg) in ipmmu_utlb_reg() 237 static void ipmmu_imuasid_write(struct ipmmu_vmsa_device *mmu, in ipmmu_imuasid_write() [all …]
|
/linux/drivers/gpu/drm/msm/ |
H A D | msm_iommu.c | 38 static struct msm_iommu_pagetable *to_pagetable(struct msm_mmu *mmu) in to_pagetable() 99 static int msm_iommu_pagetable_unmap(struct msm_mmu *mmu, u64 iova, in msm_iommu_pagetable_unmap() 132 static int msm_iommu_pagetable_map_prr(struct msm_mmu *mmu, u64 iova, size_t len, int prot) in msm_iommu_pagetable_map_prr() 162 static int msm_iommu_pagetable_map(struct msm_mmu *mmu, u64 iova, in msm_iommu_pagetable_map() 219 static void msm_iommu_pagetable_destroy(struct msm_mmu *mmu) in msm_iommu_pagetable_destroy() 244 int msm_iommu_pagetable_params(struct msm_mmu *mmu, in msm_iommu_pagetable_params() 263 struct iommu_domain_geometry *msm_iommu_get_geometry(struct msm_mmu *mmu) in msm_iommu_get_geometry() 271 msm_iommu_pagetable_walk(struct msm_mmu *mmu, unsigned long iova, uint64_t ptes[4]) in msm_iommu_pagetable_walk() 293 msm_iommu_pagetable_prealloc_count(struct msm_mmu *mmu, struct msm_mmu_prealloc *p, in msm_iommu_pagetable_prealloc_count() 319 get_pt_cache(struct msm_mmu *mmu) in get_pt_cache() [all …]
|
/linux/arch/arm64/include/asm/ |
H A D | kvm_mmu.h | 150 #define kvm_phys_shift(mmu) VTCR_EL2_IPA((mmu)->vtcr) argument 151 #define kvm_phys_size(mmu) (_AC(1, ULL) << kvm_phys_shift(mmu)) argument 152 #define kvm_phys_mask(mmu) (kvm_phys_size(mmu) - _AC(1, ULL)) argument 303 static __always_inline u64 kvm_get_vttbr(struct kvm_s2_mmu *mmu) in kvm_get_vttbr() 319 static __always_inline void __load_stage2(struct kvm_s2_mmu *mmu, in __load_stage2() 333 static inline struct kvm *kvm_s2_mmu_to_kvm(struct kvm_s2_mmu *mmu) in kvm_s2_mmu_to_kvm() 344 static inline bool kvm_s2_mmu_valid(struct kvm_s2_mmu *mmu) in kvm_s2_mmu_valid() 349 static inline bool kvm_is_nested_s2_mmu(struct kvm *kvm, struct kvm_s2_mmu *mmu) in kvm_is_nested_s2_mmu()
|
H A D | stage2_pgtable.h | 24 #define kvm_stage2_levels(mmu) VTCR_EL2_LVLS((mmu)->vtcr) argument 31 #define kvm_mmu_cache_min_pages(mmu) (kvm_stage2_levels(mmu) - 1) argument
|
/linux/drivers/gpu/drm/panfrost/ |
H A D | panfrost_mmu.c | 155 struct panfrost_mmu *mmu, in mmu_hw_do_operation() 166 static void panfrost_mmu_enable(struct panfrost_device *pfdev, struct panfrost_mmu *mmu) in panfrost_mmu_enable() 206 static int mmu_cfg_init_mali_lpae(struct panfrost_mmu *mmu) in mmu_cfg_init_mali_lpae() 220 static int mmu_cfg_init_aarch64_4k(struct panfrost_mmu *mmu) in mmu_cfg_init_aarch64_4k() 244 static int panfrost_mmu_cfg_init(struct panfrost_mmu *mmu, in panfrost_mmu_cfg_init() 261 u32 panfrost_mmu_as_get(struct panfrost_device *pfdev, struct panfrost_mmu *mmu) in panfrost_mmu_as_get() 327 void panfrost_mmu_as_put(struct panfrost_device *pfdev, struct panfrost_mmu *mmu) in panfrost_mmu_as_put() 335 struct panfrost_mmu *mmu, *mmu_tmp; in panfrost_mmu_reset() local 378 struct panfrost_mmu *mmu, in panfrost_mmu_flush_range() 393 static int mmu_map_sg(struct panfrost_device *pfdev, struct panfrost_mmu *mmu, in mmu_map_sg() [all …]
|
/linux/drivers/staging/media/ipu7/ |
H A D | ipu7-mmu.c | 56 static __maybe_unused void mmu_irq_handler(struct ipu7_mmu *mmu) in mmu_irq_handler() 69 static void tlb_invalidate(struct ipu7_mmu *mmu) in tlb_invalidate() 397 static int allocate_trash_buffer(struct ipu7_mmu *mmu) in allocate_trash_buffer() 456 static void __mmu_at_init(struct ipu7_mmu *mmu) in __mmu_at_init() 510 static void __mmu_zlx_init(struct ipu7_mmu *mmu) in __mmu_zlx_init() 546 int ipu7_mmu_hw_init(struct ipu7_mmu *mmu) in ipu7_mmu_hw_init() 642 void ipu7_mmu_hw_cleanup(struct ipu7_mmu *mmu) in ipu7_mmu_hw_cleanup() 750 static void ipu7_mmu_destroy(struct ipu7_mmu *mmu) in ipu7_mmu_destroy() 799 struct ipu7_mmu *mmu; in ipu7_mmu_init() local 844 void ipu7_mmu_cleanup(struct ipu7_mmu *mmu) in ipu7_mmu_cleanup()
|
H A D | ipu7-dma.c | 29 static struct vm_info *get_vm_info(struct ipu7_mmu *mmu, dma_addr_t iova) in get_vm_info() 120 struct ipu7_mmu *mmu = sys->mmu; in ipu7_dma_sync_single() local 159 struct ipu7_mmu *mmu = sys->mmu; in ipu7_dma_alloc() local 247 struct ipu7_mmu *mmu = sys->mmu; in ipu7_dma_free() local 301 struct ipu7_mmu *mmu = sys->mmu; in ipu7_dma_mmap() local 335 struct ipu7_mmu *mmu = sys->mmu; in ipu7_dma_unmap_sg() local 379 struct ipu7_mmu *mmu = sys->mmu; in ipu7_dma_map_sg() local
|
/linux/drivers/gpu/drm/msm/adreno/ |
H A D | a2xx_gpummu.c | 27 static void a2xx_gpummu_detach(struct msm_mmu *mmu) in a2xx_gpummu_detach() 31 static int a2xx_gpummu_map(struct msm_mmu *mmu, uint64_t iova, in a2xx_gpummu_map() 62 static int a2xx_gpummu_unmap(struct msm_mmu *mmu, uint64_t iova, size_t len) in a2xx_gpummu_unmap() 77 static void a2xx_gpummu_destroy(struct msm_mmu *mmu) in a2xx_gpummu_destroy() 115 void a2xx_gpummu_params(struct msm_mmu *mmu, dma_addr_t *pt_base, in a2xx_gpummu_params()
|
/linux/drivers/gpu/drm/nouveau/nvkm/subdev/mmu/ |
H A D | ummu.c | 35 struct nvkm_mmu *mmu = nvkm_ummu(object)->mmu; in nvkm_ummu_sclass() local 59 struct nvkm_mmu *mmu = ummu->mmu; in nvkm_ummu_heap() local 79 struct nvkm_mmu *mmu = ummu->mmu; in nvkm_ummu_type() local 108 struct nvkm_mmu *mmu = ummu->mmu; in nvkm_ummu_kind() local 159 struct nvkm_mmu *mmu = device->mmu; in nvkm_ummu_new() local
|
H A D | vmmgm20b.c | 57 gm20b_vmm_new(struct nvkm_mmu *mmu, bool managed, u64 addr, u64 size, in gm20b_vmm_new() 66 gm20b_vmm_new_fixed(struct nvkm_mmu *mmu, bool managed, u64 addr, u64 size, in gm20b_vmm_new_fixed()
|
H A D | vmmgm200.c | 144 struct nvkm_mmu *mmu, bool managed, u64 addr, u64 size, in gm200_vmm_new_() 172 gm200_vmm_new(struct nvkm_mmu *mmu, bool managed, u64 addr, u64 size, in gm200_vmm_new() 181 gm200_vmm_new_fixed(struct nvkm_mmu *mmu, bool managed, u64 addr, u64 size, in gm200_vmm_new_fixed()
|
H A D | memnv04.c | 31 nv04_mem_map(struct nvkm_mmu *mmu, struct nvkm_memory *memory, void *argv, in nv04_mem_map() 51 nv04_mem_new(struct nvkm_mmu *mmu, int type, u8 page, u64 size, in nv04_mem_new()
|
H A D | memgf100.c | 34 gf100_mem_map(struct nvkm_mmu *mmu, struct nvkm_memory *memory, void *argv, in gf100_mem_map() 69 gf100_mem_new(struct nvkm_mmu *mmu, int type, u8 page, u64 size, in gf100_mem_new()
|
H A D | memnv50.c | 34 nv50_mem_map(struct nvkm_mmu *mmu, struct nvkm_memory *memory, void *argv, in nv50_mem_map() 66 nv50_mem_new(struct nvkm_mmu *mmu, int type, u8 page, u64 size, in nv50_mem_new()
|
H A D | mem.c | 33 struct nvkm_mmu *mmu; member 144 nvkm_mem_new_host(struct nvkm_mmu *mmu, int type, u8 page, u64 size, in nvkm_mem_new_host() 224 nvkm_mem_new_type(struct nvkm_mmu *mmu, int type, u8 page, u64 size, in nvkm_mem_new_type()
|
/linux/drivers/media/pci/intel/ipu6/ |
H A D | ipu6-dma.c | 29 static struct vm_info *get_vm_info(struct ipu6_mmu *mmu, dma_addr_t iova) in get_vm_info() 120 struct ipu6_mmu *mmu = sys->mmu; in ipu6_dma_sync_single() local 159 struct ipu6_mmu *mmu = sys->mmu; in ipu6_dma_alloc() local 247 struct ipu6_mmu *mmu = sys->mmu; in ipu6_dma_free() local 301 struct ipu6_mmu *mmu = sys->mmu; in ipu6_dma_mmap() local 335 struct ipu6_mmu *mmu = sys->mmu; in ipu6_dma_unmap_sg() local 379 struct ipu6_mmu *mmu = sys->mmu; in ipu6_dma_map_sg() local
|
H A D | ipu6-mmu.c | 54 static void tlb_invalidate(struct ipu6_mmu *mmu) in tlb_invalidate() 414 static int allocate_trash_buffer(struct ipu6_mmu *mmu) in allocate_trash_buffer() 473 int ipu6_mmu_hw_init(struct ipu6_mmu *mmu) in ipu6_mmu_hw_init() 602 void ipu6_mmu_hw_cleanup(struct ipu6_mmu *mmu) in ipu6_mmu_hw_cleanup() 705 static void ipu6_mmu_destroy(struct ipu6_mmu *mmu) in ipu6_mmu_destroy() 754 struct ipu6_mmu *mmu; in ipu6_mmu_init() local 797 void ipu6_mmu_cleanup(struct ipu6_mmu *mmu) in ipu6_mmu_cleanup()
|
/linux/drivers/gpu/drm/nouveau/nvif/ |
H A D | mem.c | 28 nvif_mem_ctor_map(struct nvif_mmu *mmu, const char *name, u8 type, u64 size, in nvif_mem_ctor_map() 48 nvif_mem_ctor_type(struct nvif_mmu *mmu, const char *name, s32 oclass, in nvif_mem_ctor_type() 88 nvif_mem_ctor(struct nvif_mmu *mmu, const char *name, s32 oclass, u8 type, in nvif_mem_ctor()
|
H A D | mmu.c | 28 nvif_mmu_dtor(struct nvif_mmu *mmu) in nvif_mmu_dtor() 41 struct nvif_mmu *mmu) in nvif_mmu_ctor()
|
/linux/arch/arm64/kvm/ |
H A D | nested.c | 53 static int init_nested_s2_mmu(struct kvm *kvm, struct kvm_s2_mmu *mmu) in init_nested_s2_mmu() 467 static u8 get_guest_mapping_ttl(struct kvm_s2_mmu *mmu, u64 addr) in get_guest_mapping_ttl() 537 unsigned long compute_tlb_inval_range(struct kvm_s2_mmu *mmu, u64 val) in compute_tlb_inval_range() 600 struct kvm_s2_mmu *mmu = &kvm->arch.nested_mmus[i]; in kvm_s2_mmu_iterate_by_vmid() local 642 struct kvm_s2_mmu *mmu = &kvm->arch.nested_mmus[i]; in lookup_s2_mmu() local 722 void kvm_init_nested_s2_mmu(struct kvm_s2_mmu *mmu) in kvm_init_nested_s2_mmu() 1061 struct kvm_s2_mmu *mmu = &kvm->arch.nested_mmus[i]; in kvm_nested_s2_wp() local 1077 struct kvm_s2_mmu *mmu = &kvm->arch.nested_mmus[i]; in kvm_nested_s2_unmap() local 1093 struct kvm_s2_mmu *mmu = &kvm->arch.nested_mmus[i]; in kvm_nested_s2_flush() local 1105 struct kvm_s2_mmu *mmu = &kvm->arch.nested_mmus[i]; in kvm_arch_flush_shadow_all() local [all …]
|
/linux/drivers/staging/media/atomisp/include/mmu/ |
H A D | isp_mmu.h | 109 #define ISP_PTE_VALID_MASK(mmu) \ argument 112 #define ISP_PTE_VALID(mmu, pte) \ argument 143 static inline void isp_mmu_flush_tlb_all(struct isp_mmu *mmu) in isp_mmu_flush_tlb_all() 151 static inline void isp_mmu_flush_tlb_range(struct isp_mmu *mmu, in isp_mmu_flush_tlb_range()
|