diff options
author | Sidath Senanayake <sidaths@google.com> | 2016-11-09 14:14:45 +0100 |
---|---|---|
committer | Sidath Senanayake <sidaths@google.com> | 2016-11-09 14:14:45 +0100 |
commit | 192bd796c27ac6eb9443af4b7e027294316f7c5b (patch) | |
tree | af0b7bd546062b6bbc6c32af91009f0f185fe6f4 /mali_kbase/mali_kbase_hwaccess_jm.h | |
parent | 823a760515e356dfef47c691d827d8ba795ce2a4 (diff) | |
download | gpu-192bd796c27ac6eb9443af4b7e027294316f7c5b.tar.gz |
Mali Bifrost DDK r1p0 KMD
Provenance:
9f8289b33 (collaborate/EAC/b_r1p0)
BX304L01B-BU-00000-r1p0-01rel0
BX304L06A-BU-00000-r1p0-01rel0
BX304X07X-BU-00000-r1p0-01bet0
Signed-off-by: Sidath Senanayake <sidaths@google.com>
Change-Id: I1559e84ef1f3853e66978a6c12307e766b31e30f
Diffstat (limited to 'mali_kbase/mali_kbase_hwaccess_jm.h')
-rw-r--r-- | mali_kbase/mali_kbase_hwaccess_jm.h | 37 |
1 files changed, 33 insertions, 4 deletions
diff --git a/mali_kbase/mali_kbase_hwaccess_jm.h b/mali_kbase/mali_kbase_hwaccess_jm.h index 2efa293..abe6607 100644 --- a/mali_kbase/mali_kbase_hwaccess_jm.h +++ b/mali_kbase/mali_kbase_hwaccess_jm.h @@ -1,6 +1,6 @@ /* * - * (C) COPYRIGHT 2014-2015 ARM Limited. All rights reserved. + * (C) COPYRIGHT 2014-2016 ARM Limited. All rights reserved. * * This program is free software and is provided to you under the terms of the * GNU General Public License version 2 as published by the Free Software @@ -71,9 +71,7 @@ void kbase_backend_release_free_address_space(struct kbase_device *kbdev, * * kbase_gpu_next_job() will pull atoms from the active context. * - * Return: true if successful, false if ASID not assigned. If kctx->as_pending - * is true then ASID assignment will complete at some point in the - * future and will re-start scheduling, otherwise no ASIDs are available + * Return: true if successful, false if ASID not assigned. */ bool kbase_backend_use_ctx(struct kbase_device *kbdev, struct kbase_context *kctx, @@ -214,6 +212,15 @@ int kbase_backend_nr_atoms_submitted(struct kbase_device *kbdev, int js); void kbase_backend_ctx_count_changed(struct kbase_device *kbdev); /** + * kbase_backend_timeouts_changed() - Job Scheduler timeouts have changed. + * @kbdev: Device pointer + * + * Perform any required backend-specific actions (eg updating timeouts of + * currently running atoms). + */ +void kbase_backend_timeouts_changed(struct kbase_device *kbdev); + +/** * kbase_backend_slot_free() - Return the number of jobs that can be currently * submitted to slot @js. * @kbdev: Device pointer @@ -319,6 +326,28 @@ bool kbase_prepare_to_reset_gpu_locked(struct kbase_device *kbdev); * signalled to know when the reset has completed. */ void kbase_reset_gpu_locked(struct kbase_device *kbdev); + +/** + * kbase_reset_gpu_silent - Reset the GPU silently + * @kbdev: Device pointer + * + * Reset the GPU without trying to cancel jobs and don't emit messages into + * the kernel log while doing the reset. + * + * This function should be used in cases where we are doing a controlled reset + * of the GPU as part of normal processing (e.g. exiting protected mode) where + * the driver will have ensured the scheduler has been idled and all other + * users of the GPU (e.g. instrumentation) have been suspended. + */ +void kbase_reset_gpu_silent(struct kbase_device *kbdev); + +/** + * kbase_reset_gpu_active - Reports if the GPU is being reset + * @kbdev: Device pointer + * + * Return: True if the GPU is in the process of being reset. + */ +bool kbase_reset_gpu_active(struct kbase_device *kbdev); #endif /** |