]> asedeno.scripts.mit.edu Git - linux.git/blobdiff - include/drm/gpu_scheduler.h
Merge tag 'linux-watchdog-5.5-rc1' of git://www.linux-watchdog.org/linux-watchdog
[linux.git] / include / drm / gpu_scheduler.h
index 57b4121c750ae768351900a8a3a6b4899e5628a1..684692a8ed76c82b760f2a0a51c8a9b3412a8b58 100644 (file)
@@ -26,6 +26,7 @@
 
 #include <drm/spsc_queue.h>
 #include <linux/dma-fence.h>
+#include <linux/completion.h>
 
 #define MAX_WAIT_SCHED_ENTITY_Q_EMPTY msecs_to_jiffies(1000)
 
@@ -71,6 +72,7 @@ enum drm_sched_priority {
  * @last_scheduled: points to the finished fence of the last scheduled job.
  * @last_user: last group leader pushing a job into the entity.
  * @stopped: Marks the enity as removed from rq and destined for termination.
+ * @entity_idle: Signals when enityt is not in use
  *
  * Entities will emit jobs in order to their corresponding hardware
  * ring, and the scheduler will alternate between entities based on
@@ -94,6 +96,7 @@ struct drm_sched_entity {
        struct dma_fence                *last_scheduled;
        struct task_struct              *last_user;
        bool                            stopped;
+       struct completion               entity_idle;
 };
 
 /**