Lines Matching refs:pipe
24 struct lima_sched_pipe *pipe = dev->pipe + lima_pipe_pp;
32 pipe->error = true;
45 struct lima_sched_pipe *pipe = dev->pipe + lima_pipe_pp;
54 if (atomic_dec_and_test(&pipe->task))
55 lima_sched_pipe_task_done(pipe);
66 struct lima_sched_pipe *pipe = dev->pipe + lima_pipe_pp;
70 if (!pipe->current_task)
73 frame = pipe->current_task->frame;
76 struct lima_ip *ip = pipe->processor[i];
79 if (pipe->done & (1 << i))
96 pipe->done |= (1 << i);
97 if (atomic_dec_and_test(&pipe->task))
98 lima_sched_pipe_task_done(pipe);
146 struct lima_sched_pipe *pipe = dev->pipe + lima_pipe_pp;
147 struct drm_lima_m450_pp_frame *frame = pipe->current_task->frame;
150 err |= lima_pp_soft_reset_async_wait_one(pipe->processor[i]);
305 static int lima_pp_task_validate(struct lima_sched_pipe *pipe,
310 if (pipe->bcast_processor) {
323 if (num_pp == 0 || num_pp > pipe->num_processor)
329 static void lima_pp_task_run(struct lima_sched_pipe *pipe,
332 if (pipe->bcast_processor) {
334 struct lima_device *dev = pipe->bcast_processor->dev;
335 struct lima_ip *ip = pipe->bcast_processor;
338 pipe->done = 0;
339 atomic_set(&pipe->task, frame->num_pp);
356 struct lima_ip *ip = pipe->processor[i];
368 atomic_set(&pipe->task, frame->num_pp);
371 struct lima_ip *ip = pipe->processor[i];
387 static void lima_pp_task_fini(struct lima_sched_pipe *pipe)
389 if (pipe->bcast_processor)
390 lima_pp_soft_reset_async(pipe->bcast_processor);
394 for (i = 0; i < pipe->num_processor; i++)
395 lima_pp_soft_reset_async(pipe->processor[i]);
399 static void lima_pp_task_error(struct lima_sched_pipe *pipe)
403 for (i = 0; i < pipe->num_processor; i++) {
404 struct lima_ip *ip = pipe->processor[i];
413 static void lima_pp_task_mmu_error(struct lima_sched_pipe *pipe)
415 if (atomic_dec_and_test(&pipe->task))
416 lima_sched_pipe_task_done(pipe);
425 struct lima_sched_pipe *pipe = dev->pipe + lima_pipe_pp;
442 pipe->frame_size = frame_size;
443 pipe->task_slab = lima_pp_task_slab;
445 pipe->task_validate = lima_pp_task_validate;
446 pipe->task_run = lima_pp_task_run;
447 pipe->task_fini = lima_pp_task_fini;
448 pipe->task_error = lima_pp_task_error;
449 pipe->task_mmu_error = lima_pp_task_mmu_error;