Lines Matching refs:engine
86 struct refill_engine *engine = txn->engine_handle; in alloc_dma() local
98 BUG_ON((txn->current_va - engine->refill_va) > REFILL_BUFFER_SIZE); in alloc_dma()
104 static int wait_status(struct refill_engine *engine, uint32_t wait_mask) in wait_status() argument
106 struct dmm *dmm = engine->dmm; in wait_status()
111 r = readl(dmm->base + reg[PAT_STATUS][engine->id]); in wait_status()
128 static void release_engine(struct refill_engine *engine) in release_engine() argument
133 list_add(&engine->idle_node, &omap_dmm->idle_head); in release_engine()
169 struct refill_engine *engine = NULL; in dmm_txn_init() local
183 engine = list_entry(dmm->idle_head.next, struct refill_engine, in dmm_txn_init()
185 list_del(&engine->idle_node); in dmm_txn_init()
189 BUG_ON(!engine); in dmm_txn_init()
191 txn = &engine->txn; in dmm_txn_init()
192 engine->tcm = tcm; in dmm_txn_init()
193 txn->engine_handle = engine; in dmm_txn_init()
195 txn->current_va = engine->refill_va; in dmm_txn_init()
196 txn->current_pa = engine->refill_pa; in dmm_txn_init()
211 struct refill_engine *engine = txn->engine_handle; in dmm_txn_append() local
224 pat->area.y0 += engine->tcm->y_offset; in dmm_txn_append()
225 pat->area.y1 += engine->tcm->y_offset; in dmm_txn_append()
229 .lut_id = engine->tcm->lut_id, in dmm_txn_append()
241 page_to_phys(pages[n]) : engine->dmm->dummy_pa; in dmm_txn_append()
255 struct refill_engine *engine = txn->engine_handle; in dmm_txn_commit() local
256 struct dmm *dmm = engine->dmm; in dmm_txn_commit()
259 dev_err(engine->dmm->dev, "need at least one txn\n"); in dmm_txn_commit()
267 writel(0x0, dmm->base + reg[PAT_DESCR][engine->id]); in dmm_txn_commit()
270 ret = wait_status(engine, DMM_PATSTATUS_READY); in dmm_txn_commit()
277 engine->async = wait ? false : true; in dmm_txn_commit()
278 reinit_completion(&engine->compl); in dmm_txn_commit()
283 writel(engine->refill_pa, in dmm_txn_commit()
284 dmm->base + reg[PAT_DESCR][engine->id]); in dmm_txn_commit()
287 if (!wait_for_completion_timeout(&engine->compl, in dmm_txn_commit()
297 release_engine(engine); in dmm_txn_commit()