Lines Matching refs:dir

32 __dw_ch_regs(struct dw_edma *dw, enum dw_edma_dir dir, u16 ch)
34 if (dir == EDMA_DIR_WRITE)
40 #define SET_CH_32(dw, dir, ch, name, value) \
41 writel(value, &(__dw_ch_regs(dw, dir, ch)->name))
43 #define GET_CH_32(dw, dir, ch, name) \
44 readl(&(__dw_ch_regs(dw, dir, ch)->name))
66 static u16 dw_hdma_v0_core_ch_count(struct dw_edma *dw, enum dw_edma_dir dir)
82 GET_CH_32(dw, chan->id, chan->dir, ch_stat));
96 SET_CH_32(dw, chan->dir, chan->id, int_clear, HDMA_V0_STOP_INT_MASK);
103 SET_CH_32(dw, chan->dir, chan->id, int_clear, HDMA_V0_ABORT_INT_MASK);
110 return GET_CH_32(dw, chan->dir, chan->id, int_stat);
114 dw_hdma_v0_core_handle_int(struct dw_edma_irq *dw_irq, enum dw_edma_dir dir,
123 if (dir == EDMA_DIR_WRITE) {
249 SET_CH_32(dw, chan->dir, chan->id, ch_en, BIT(0));
251 tmp = GET_CH_32(dw, chan->dir, chan->id, int_setup) |
256 SET_CH_32(dw, chan->dir, chan->id, int_setup, tmp);
258 SET_CH_32(dw, chan->dir, chan->id, control1, HDMA_V0_LINKLIST_EN);
261 SET_CH_32(dw, chan->dir, chan->id, llp.lsb,
263 SET_CH_32(dw, chan->dir, chan->id, llp.msb,
267 SET_CH_32(dw, chan->dir, chan->id, cycle_sync,
273 SET_CH_32(dw, chan->dir, chan->id, doorbell, HDMA_V0_DOORBELL_START);
281 SET_CH_32(dw, chan->dir, chan->id, msi_stop.lsb, chan->msi.address_lo);
282 SET_CH_32(dw, chan->dir, chan->id, msi_stop.msb, chan->msi.address_hi);
284 SET_CH_32(dw, chan->dir, chan->id, msi_abort.lsb, chan->msi.address_lo);
285 SET_CH_32(dw, chan->dir, chan->id, msi_abort.msb, chan->msi.address_hi);
287 SET_CH_32(dw, chan->dir, chan->id, msi_msgdata, chan->msi.data);