summaryrefslogtreecommitdiff
path: root/mali_kbase/mali_kbase_hwaccess_jm.h
diff options
context:
space:
mode:
Diffstat (limited to 'mali_kbase/mali_kbase_hwaccess_jm.h')
-rw-r--r--mali_kbase/mali_kbase_hwaccess_jm.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/mali_kbase/mali_kbase_hwaccess_jm.h b/mali_kbase/mali_kbase_hwaccess_jm.h
index 8689647..d0207f7 100644
--- a/mali_kbase/mali_kbase_hwaccess_jm.h
+++ b/mali_kbase/mali_kbase_hwaccess_jm.h
@@ -299,4 +299,21 @@ void kbase_job_slot_hardstop(struct kbase_context *kctx, int js,
*/
bool kbase_gpu_atoms_submitted_any(struct kbase_device *kbdev);
+/**
+ * kbase_backend_slot_kctx_purge_locked - Perform a purge on the slot_rb tracked
+ * kctx
+ *
+ * @kbdev: Device pointer
+ * @kctx: The kbase context that needs to be purged from slot_rb[]
+ *
+ * For JM GPUs, the L1 read only caches may need a start_flush invalidation,
+ * potentially on all slots (even if the kctx was only using a single slot),
+ * following a context termination or address-space ID recycle. This function
+ * performs a clean-up purge on the given kctx which if it has been tracked by
+ * slot_rb[] objects.
+ *
+ * Caller must hold kbase_device->hwaccess_lock.
+ */
+void kbase_backend_slot_kctx_purge_locked(struct kbase_device *kbdev, struct kbase_context *kctx);
+
#endif /* _KBASE_HWACCESS_JM_H_ */