Lines Matching refs:run
1257 struct ipu_image_convert_run *run; in get_run_count() local
1262 list_for_each_entry(run, q, list) { in get_run_count()
1263 if (run->ctx == ctx) in get_run_count()
1270 static void convert_stop(struct ipu_image_convert_run *run) in convert_stop() argument
1272 struct ipu_image_convert_ctx *ctx = run->ctx; in convert_stop()
1277 __func__, chan->ic_task, ctx, run); in convert_stop()
1383 static int convert_start(struct ipu_image_convert_run *run, unsigned int tile) in convert_start() argument
1385 struct ipu_image_convert_ctx *ctx = run->ctx; in convert_start()
1397 __func__, chan->ic_task, ctx, run, tile, dst_tile); in convert_start()
1498 static int do_run(struct ipu_image_convert_run *run) in do_run() argument
1500 struct ipu_image_convert_ctx *ctx = run->ctx; in do_run()
1505 ctx->in.base.phys0 = run->in_phys; in do_run()
1506 ctx->out.base.phys0 = run->out_phys; in do_run()
1512 list_del(&run->list); in do_run()
1513 chan->current_run = run; in do_run()
1515 return convert_start(run, 0); in do_run()
1522 struct ipu_image_convert_run *run, *tmp; in run_next() local
1527 list_for_each_entry_safe(run, tmp, &chan->pending_q, list) { in run_next()
1529 if (run->ctx->aborting) { in run_next()
1532 __func__, chan->ic_task, run->ctx, run); in run_next()
1536 ret = do_run(run); in run_next()
1545 run->status = ret; in run_next()
1546 list_add_tail(&run->list, &chan->done_q); in run_next()
1554 struct ipu_image_convert_run *run; in empty_done_q() local
1560 run = list_entry(chan->done_q.next, in empty_done_q()
1564 list_del(&run->list); in empty_done_q()
1568 __func__, chan->ic_task, run->ctx, run, run->status); in empty_done_q()
1572 run->ctx->complete(run, run->ctx->complete_context); in empty_done_q()
1637 static irqreturn_t do_tile_complete(struct ipu_image_convert_run *run) in do_tile_complete() argument
1639 struct ipu_image_convert_ctx *ctx = run->ctx; in do_tile_complete()
1661 convert_stop(run); in do_tile_complete()
1662 run->status = -EIO; in do_tile_complete()
1670 convert_stop(run); in do_tile_complete()
1671 run->status = 0; in do_tile_complete()
1680 convert_stop(run); in do_tile_complete()
1681 convert_start(run, ctx->next_tile); in do_tile_complete()
1726 list_add_tail(&run->list, &chan->done_q); in do_tile_complete()
1737 struct ipu_image_convert_run *run; in eof_irq() local
1745 run = chan->current_run; in eof_irq()
1746 if (!run) { in eof_irq()
1751 ctx = run->ctx; in eof_irq()
1779 ret = do_tile_complete(run); in eof_irq()
1792 struct ipu_image_convert_run *run; in force_abort() local
1797 run = chan->current_run; in force_abort()
1798 if (run && run->ctx == ctx) { in force_abort()
1799 convert_stop(run); in force_abort()
1800 run->status = -EIO; in force_abort()
1801 list_add_tail(&run->list, &chan->done_q); in force_abort()
2269 int ipu_image_convert_queue(struct ipu_image_convert_run *run) in ipu_image_convert_queue() argument
2277 if (!run || !run->ctx || !run->in_phys || !run->out_phys) in ipu_image_convert_queue()
2280 ctx = run->ctx; in ipu_image_convert_queue()
2285 chan->ic_task, ctx, run); in ipu_image_convert_queue()
2287 INIT_LIST_HEAD(&run->list); in ipu_image_convert_queue()
2296 list_add_tail(&run->list, &chan->pending_q); in ipu_image_convert_queue()
2299 ret = do_run(run); in ipu_image_convert_queue()
2314 struct ipu_image_convert_run *run, *active_run, *tmp; in __ipu_image_convert_abort() local
2321 list_for_each_entry_safe(run, tmp, &chan->pending_q, list) { in __ipu_image_convert_abort()
2322 if (run->ctx != ctx) in __ipu_image_convert_abort()
2324 run->status = -EIO; in __ipu_image_convert_abort()
2325 list_move_tail(&run->list, &chan->done_q); in __ipu_image_convert_abort()
2415 struct ipu_image_convert_run *run; in ipu_image_convert() local
2423 run = kzalloc(sizeof(*run), GFP_KERNEL); in ipu_image_convert()
2424 if (!run) { in ipu_image_convert()
2429 run->ctx = ctx; in ipu_image_convert()
2430 run->in_phys = in->phys0; in ipu_image_convert()
2431 run->out_phys = out->phys0; in ipu_image_convert()
2433 ret = ipu_image_convert_queue(run); in ipu_image_convert()
2436 kfree(run); in ipu_image_convert()
2440 return run; in ipu_image_convert()
2445 static void image_convert_sync_complete(struct ipu_image_convert_run *run, in image_convert_sync_complete() argument
2457 struct ipu_image_convert_run *run; in ipu_image_convert_sync() local
2463 run = ipu_image_convert(ipu, ic_task, in, out, rot_mode, in ipu_image_convert_sync()
2465 if (IS_ERR(run)) in ipu_image_convert_sync()
2466 return PTR_ERR(run); in ipu_image_convert_sync()
2471 ipu_image_convert_unprepare(run->ctx); in ipu_image_convert_sync()
2472 kfree(run); in ipu_image_convert_sync()