summaryrefslogtreecommitdiff
path: root/mali_kbase/mali_kbase_reset_gpu.h
diff options
context:
space:
mode:
Diffstat (limited to 'mali_kbase/mali_kbase_reset_gpu.h')
-rw-r--r--mali_kbase/mali_kbase_reset_gpu.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/mali_kbase/mali_kbase_reset_gpu.h b/mali_kbase/mali_kbase_reset_gpu.h
index ff631e9..5063b64 100644
--- a/mali_kbase/mali_kbase_reset_gpu.h
+++ b/mali_kbase/mali_kbase_reset_gpu.h
@@ -144,6 +144,14 @@ void kbase_reset_gpu_assert_prevented(struct kbase_device *kbdev);
void kbase_reset_gpu_assert_failed_or_prevented(struct kbase_device *kbdev);
/**
+ * kbase_reset_gpu_failed - Return whether a previous GPU reset failed.
+ *
+ * @kbdev: Device pointer
+ *
+ */
+bool kbase_reset_gpu_failed(struct kbase_device *kbdev);
+
+/**
* RESET_FLAGS_NONE - Flags for kbase_prepare_to_reset_gpu
*/
#define RESET_FLAGS_NONE (0U)
@@ -151,6 +159,9 @@ void kbase_reset_gpu_assert_failed_or_prevented(struct kbase_device *kbdev);
/* This reset should be treated as an unrecoverable error by HW counter logic */
#define RESET_FLAGS_HWC_UNRECOVERABLE_ERROR ((unsigned int)(1 << 0))
+/* pixel: Powercycle the GPU instead of attempting a soft/hard reset (only used on CSF hw). */
+#define RESET_FLAGS_FORCE_PM_HW_RESET ((unsigned int)(1 << 1))
+
/**
* kbase_prepare_to_reset_gpu_locked - Prepare for resetting the GPU.
* @kbdev: Device pointer
@@ -237,6 +248,18 @@ int kbase_reset_gpu_silent(struct kbase_device *kbdev);
bool kbase_reset_gpu_is_active(struct kbase_device *kbdev);
/**
+ * kbase_reset_gpu_not_pending - Reports if the GPU reset isn't pending
+ *
+ * @kbdev: Device pointer
+ *
+ * Note that unless appropriate locks are held when using this function, the
+ * state could change immediately afterwards.
+ *
+ * Return: True if the GPU reset isn't pending.
+ */
+bool kbase_reset_gpu_is_not_pending(struct kbase_device *kbdev);
+
+/**
* kbase_reset_gpu_wait - Wait for a GPU reset to complete
* @kbdev: Device pointer
*