Lines Matching refs:prg_chan
189 static int ipu_prg_get_pre(struct ipu_prg *prg, int prg_chan)
194 if (prg_chan == 0) {
198 prg->chan[prg_chan].used_pre = 0;
208 prg->chan[prg_chan].used_pre = i;
212 mux = (prg->id << 1) | (prg_chan - 1);
230 dev_err(prg->dev, "could not get PRE for PRG chan %d", prg_chan);
234 static void ipu_prg_put_pre(struct ipu_prg *prg, int prg_chan)
236 struct ipu_prg_channel *chan = &prg->chan[prg_chan];
244 int prg_chan = ipu_prg_ipu_to_prg_chan(ipu_chan->num);
249 if (prg_chan < 0)
252 chan = &prg->chan[prg_chan];
259 val |= IPU_PRG_CTL_BYPASS(prg_chan);
267 ipu_prg_put_pre(prg, prg_chan);
278 int prg_chan = ipu_prg_ipu_to_prg_chan(ipu_chan->num);
284 if (prg_chan < 0)
285 return prg_chan;
287 chan = &prg->chan[prg_chan];
294 ret = ipu_prg_get_pre(prg, prg_chan);
305 writel(val, prg->regs + IPU_PRG_STRIDE(prg_chan));
311 writel(val, prg->regs + IPU_PRG_HEIGHT(prg_chan));
315 writel(val, prg->regs + IPU_PRG_BADDR(prg_chan));
320 IPU_PRG_CTL_SOFT_ARID_SHIFT(prg_chan));
321 val |= IPU_PRG_CTL_SOFT_ARID(prg_chan, axi_id);
323 val &= ~IPU_PRG_CTL_BYPASS(prg_chan);
331 (val & IPU_PRG_STATUS_BUFFER0_READY(prg_chan)) &&
332 (val & IPU_PRG_STATUS_BUFFER1_READY(prg_chan)),
344 int prg_chan = ipu_prg_ipu_to_prg_chan(ipu_chan->num);
348 if (prg_chan < 0)
351 chan = &prg->chan[prg_chan];