1f3ba9122SRob Herring /* SPDX-License-Identifier: GPL-2.0 */ 2f3ba9122SRob Herring /* Copyright 2018 Marty E. Plummer <hanetzer@startmail.com> */ 3f3ba9122SRob Herring /* Copyright 2019 Collabora ltd. */ 4f3ba9122SRob Herring 5f3ba9122SRob Herring #ifndef __PANFROST_GPU_H__ 6f3ba9122SRob Herring #define __PANFROST_GPU_H__ 7f3ba9122SRob Herring 8f3ba9122SRob Herring struct panfrost_device; 9f3ba9122SRob Herring 10f3ba9122SRob Herring int panfrost_gpu_init(struct panfrost_device *pfdev); 11f3ba9122SRob Herring void panfrost_gpu_fini(struct panfrost_device *pfdev); 12f3ba9122SRob Herring 13f3ba9122SRob Herring u32 panfrost_gpu_get_latest_flush_id(struct panfrost_device *pfdev); 14f3ba9122SRob Herring 15f3ba9122SRob Herring int panfrost_gpu_soft_reset(struct panfrost_device *pfdev); 16f3ba9122SRob Herring void panfrost_gpu_power_on(struct panfrost_device *pfdev); 17f3ba9122SRob Herring void panfrost_gpu_power_off(struct panfrost_device *pfdev); 18f3ba9122SRob Herring 19*f11b0417SAdrián Larumbe void panfrost_cycle_counter_get(struct panfrost_device *pfdev); 20*f11b0417SAdrián Larumbe void panfrost_cycle_counter_put(struct panfrost_device *pfdev); 21*f11b0417SAdrián Larumbe unsigned long long panfrost_cycle_counter_read(struct panfrost_device *pfdev); 22*f11b0417SAdrián Larumbe 2311000300SNeil Armstrong void panfrost_gpu_amlogic_quirk(struct panfrost_device *pfdev); 2411000300SNeil Armstrong 25f3ba9122SRob Herring #endif 26