18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 28c2ecf20Sopenharmony_ci/* Copyright 2019 Linaro, Ltd, Rob Herring <robh@kernel.org> */ 38c2ecf20Sopenharmony_ci 48c2ecf20Sopenharmony_ci#ifndef __PANFROST_MMU_H__ 58c2ecf20Sopenharmony_ci#define __PANFROST_MMU_H__ 68c2ecf20Sopenharmony_ci 78c2ecf20Sopenharmony_cistruct panfrost_gem_mapping; 88c2ecf20Sopenharmony_cistruct panfrost_file_priv; 98c2ecf20Sopenharmony_cistruct panfrost_mmu; 108c2ecf20Sopenharmony_ci 118c2ecf20Sopenharmony_ciint panfrost_mmu_map(struct panfrost_gem_mapping *mapping); 128c2ecf20Sopenharmony_civoid panfrost_mmu_unmap(struct panfrost_gem_mapping *mapping); 138c2ecf20Sopenharmony_ci 148c2ecf20Sopenharmony_ciint panfrost_mmu_init(struct panfrost_device *pfdev); 158c2ecf20Sopenharmony_civoid panfrost_mmu_fini(struct panfrost_device *pfdev); 168c2ecf20Sopenharmony_civoid panfrost_mmu_reset(struct panfrost_device *pfdev); 178c2ecf20Sopenharmony_ci 188c2ecf20Sopenharmony_ciu32 panfrost_mmu_as_get(struct panfrost_device *pfdev, struct panfrost_mmu *mmu); 198c2ecf20Sopenharmony_civoid panfrost_mmu_as_put(struct panfrost_device *pfdev, struct panfrost_mmu *mmu); 208c2ecf20Sopenharmony_ci 218c2ecf20Sopenharmony_cistruct panfrost_mmu *panfrost_mmu_ctx_get(struct panfrost_mmu *mmu); 228c2ecf20Sopenharmony_civoid panfrost_mmu_ctx_put(struct panfrost_mmu *mmu); 238c2ecf20Sopenharmony_cistruct panfrost_mmu *panfrost_mmu_ctx_create(struct panfrost_device *pfdev); 248c2ecf20Sopenharmony_ci 258c2ecf20Sopenharmony_ci#endif 26