25 #ifndef _KBASE_JS_DEFS_H_ 26 #define _KBASE_JS_DEFS_H_ 67 #define KBASE_JS_MAX_JOB_SUBMIT_PER_SLOT_PER_IRQ 2 77 #define KBASE_JS_IRQ_THROTTLE_TIME_US 20 243 struct mutex runpool_mutex;
251 struct mutex queue_mutex;
257 struct semaphore schedule_sem;
280 u32 scheduling_period_ns;
282 u32 soft_stop_ticks_cl;
283 u32 hard_stop_ticks_ss;
284 u32 hard_stop_ticks_cl;
285 u32 hard_stop_ticks_dumping;
286 u32 gpu_reset_ticks_ss;
287 u32 gpu_reset_ticks_cl;
288 u32 gpu_reset_ticks_dumping;
292 atomic_t soft_job_timeout_ms;
295 struct list_head suspended_soft_jobs_list;
297 #ifdef CONFIG_MALI_DEBUG 299 bool softstop_always;
308 u32 nr_contexts_pullable;
312 atomic_t nr_contexts_runnable;
336 struct mutex jsctx_mutex;
386 #define KBASEP_JS_RETRY_SUBMIT_SLOT_INVALID (-1) 393 #define KBASEP_JS_ATOM_RETAINED_STATE_CORE_REQ_INVALID BASE_JD_REQ_DEP 400 #define KBASEP_JS_TICK_RESOLUTION_US 1 406 KBASE_JS_ATOM_SCHED_PRIO_HIGH = 0,
407 KBASE_JS_ATOM_SCHED_PRIO_MED,
408 KBASE_JS_ATOM_SCHED_PRIO_LOW,
409 KBASE_JS_ATOM_SCHED_PRIO_COUNT,
413 #define KBASE_JS_ATOM_SCHED_PRIO_INVALID -1 417 #define KBASE_JS_ATOM_SCHED_PRIO_DEFAULT KBASE_JS_ATOM_SCHED_PRIO_MED Definition: mali_kbase_js_defs.h:49
s8 nr_all_contexts_running
Definition: mali_kbase_js_defs.h:274
KBase Context Job Scheduling information structure.
Definition: mali_kbase_js_defs.h:321
u16 as_free
Definition: mali_kbase_js_defs.h:269
Definition: mali_kbase_defs.h:409
u16 submit_allowed
Definition: mali_kbase_js_defs.h:198
int as_busy_refcount
Definition: mali_kbase_js_defs.h:168
Definition: mali_kbase_js_defs.h:160
Definition: mali_kbase_defs.h:1340
Definition: mali_kbase_js_defs.h:114
kbase_context_flags
Definition: mali_kbase_defs.h:1326
struct kbase_context * kctx
Definition: mali_kbase_js_defs.h:171
Definition: mali_kbase_js_defs.h:148
s8 nr_user_contexts_running
Definition: mali_kbase_js_defs.h:272
int retry_submit_on_slot
Definition: mali_kbase_js_defs.h:375
base_jd_event_code
Job chain event codes.
Definition: mali_base_kernel.h:1057
Definition: mali_kbase_js_defs.h:191
#define BASE_MAX_NR_AS
Definition: mali_kbase_defs.h:140
u32 base_jd_core_req
Job chain hardware requirements.
Definition: mali_base_kernel.h:452
void(* kbasep_js_ctx_job_cb)(struct kbase_device *kbdev, struct kbase_jd_atom *katom)
Definition: mali_kbase_js_defs.h:57
Definition: mali_kbase_js_defs.h:335
base_jd_core_req core_req
Definition: mali_kbase_js_defs.h:371
Definition: mali_kbase_defs.h:951
u32 ctx_timeslice_ns
Definition: mali_kbase_js_defs.h:289
Definition: mali_kbase_js_defs.h:138
int init_status
Definition: mali_kbase_js_defs.h:305
#define BASE_JM_MAX_NR_SLOTS
Definition: mali_kbase_defs.h:132
Definition: mali_kbase_js_defs.h:367
u32 kbasep_js_atom_done_code
Definition: mali_kbase_js_defs.h:152
Definition: mali_kbase_js_defs.h:146
kbasep_js_ctx_attr
Context attributes.
Definition: mali_kbase_js_defs.h:98
wait_queue_head_t is_scheduled_wait
Definition: mali_kbase_js_defs.h:351
Definition: mali_kbase_js_defs.h:105
Definition: mali_kbase_js_defs.h:141
u32 nr_jobs
Definition: mali_kbase_js_defs.h:341
KBase Device Data Job Scheduler sub-structure.
Definition: mali_kbase_js_defs.h:188