Lines Matching refs:jobs
108 /* JS0: fragment jobs.
109 * JS1: vertex/tiler jobs
110 * JS2: compute jobs
136 * Eventually we may need to support tiler only jobs and h/w with
159 struct panfrost_job *job = pfdev->jobs[slot][0];
162 pfdev->jobs[slot][0] = pfdev->jobs[slot][1];
163 pfdev->jobs[slot][1] = NULL;
175 if (!pfdev->jobs[slot][0]) {
176 pfdev->jobs[slot][0] = job;
180 WARN_ON(pfdev->jobs[slot][1]);
181 pfdev->jobs[slot][1] = job;
183 panfrost_get_job_chain_flag(pfdev->jobs[slot][0]));
474 /* First we collect all failed/done jobs. */
506 * only the DONE bit and consider both jobs as DONE since
518 /* Then we handle the dequeued jobs. */
525 } else if (pfdev->jobs[j][0] && !(js_state & MK_JS_MASK(j))) {
528 * we can have 2 jobs dequeued and only catch the
530 * are inactive, but one job remains in pfdev->jobs[j],
545 /* And finally we requeue jobs that were waiting in the second slot
552 if (!failed[j] || !pfdev->jobs[j][0])
555 if (pfdev->jobs[j][0]->jc == 0) {
660 * stuck jobs. Let's make sure the PM counters stay balanced by
666 for (j = 0; j < ARRAY_SIZE(pfdev->jobs[0]) && pfdev->jobs[i][j]; j++) {
671 memset(pfdev->jobs, 0, sizeof(pfdev->jobs));
685 /* Now resubmit jobs that were previously queued but didn't have a
688 * while resubmitting jobs because the job submission logic will
717 * If the GPU managed to complete this jobs fence, the timeout is
898 /* Kill in-flight jobs */
904 for (j = ARRAY_SIZE(pfdev->jobs[0]) - 1; j >= 0; j--) {
905 struct panfrost_job *job = pfdev->jobs[i][j];
940 /* If there are any jobs in the HW queue, we're not idle */