1 /* 2 * Copyright © 2023 Collabora, Ltd. 3 * 4 * SPDX-License-Identifier: MIT 5 */ 6 7 #pragma once 8 9 #include <stdint.h> 10 11 #if defined(__cplusplus) 12 extern "C" { 13 #endif 14 15 struct drm_panthor_csif_info; 16 17 struct pan_kmod_bo; 18 struct pan_kmod_dev; 19 struct pan_kmod_vm; 20 21 int panthor_kmod_bo_attach_sync_point(struct pan_kmod_bo *bo, 22 uint32_t sync_handle, 23 uint64_t sync_point, bool written); 24 int panthor_kmod_bo_get_sync_point(struct pan_kmod_bo *bo, 25 uint32_t *sync_handle, uint64_t *sync_point, 26 bool read_only); 27 uint32_t panthor_kmod_vm_sync_handle(struct pan_kmod_vm *vm); 28 uint64_t panthor_kmod_vm_sync_lock(struct pan_kmod_vm *vm); 29 void panthor_kmod_vm_sync_unlock(struct pan_kmod_vm *vm, 30 uint64_t new_sync_point); 31 uint32_t panthor_kmod_get_flush_id(const struct pan_kmod_dev *dev); 32 33 const struct drm_panthor_csif_info * 34 panthor_kmod_get_csif_props(const struct pan_kmod_dev *dev); 35 36 #if defined(__cplusplus) 37 } // extern "C" 38 #endif 39