Lines Matching refs:edma
150 struct fsl_edma_engine *edma; member
184 static u32 edma_readl(struct fsl_edma_engine *edma, void __iomem *addr) in edma_readl() argument
186 if (edma->big_endian) in edma_readl()
192 static void edma_writeb(struct fsl_edma_engine *edma, u8 val, void __iomem *addr) in edma_writeb() argument
195 if (edma->big_endian) in edma_writeb()
201 static void edma_writew(struct fsl_edma_engine *edma, u16 val, void __iomem *addr) in edma_writew() argument
204 if (edma->big_endian) in edma_writew()
210 static void edma_writel(struct fsl_edma_engine *edma, u32 val, void __iomem *addr) in edma_writel() argument
212 if (edma->big_endian) in edma_writel()
230 void __iomem *addr = fsl_chan->edma->membase; in fsl_edma_enable_request()
233 edma_writeb(fsl_chan->edma, EDMA_SEEI_SEEI(ch), addr + EDMA_SEEI); in fsl_edma_enable_request()
234 edma_writeb(fsl_chan->edma, ch, addr + EDMA_SERQ); in fsl_edma_enable_request()
239 void __iomem *addr = fsl_chan->edma->membase; in fsl_edma_disable_request()
242 edma_writeb(fsl_chan->edma, ch, addr + EDMA_CERQ); in fsl_edma_disable_request()
243 edma_writeb(fsl_chan->edma, EDMA_CEEI_CEEI(ch), addr + EDMA_CEEI); in fsl_edma_disable_request()
253 chans_per_mux = fsl_chan->edma->n_chans / DMAMUX_NR; in fsl_edma_chan_mux()
255 muxaddr = fsl_chan->edma->muxbase[ch / chans_per_mux]; in fsl_edma_chan_mux()
361 void __iomem *addr = fsl_chan->edma->membase; in fsl_edma_desc_residue()
377 cur_addr = edma_readl(fsl_chan->edma, addr + EDMA_TCD_SADDR(ch)); in fsl_edma_desc_residue()
379 cur_addr = edma_readl(fsl_chan->edma, addr + EDMA_TCD_DADDR(ch)); in fsl_edma_desc_residue()
432 struct fsl_edma_engine *edma = fsl_chan->edma; in fsl_edma_set_tcd_regs() local
433 void __iomem *addr = fsl_chan->edma->membase; in fsl_edma_set_tcd_regs()
441 edma_writew(edma, 0, addr + EDMA_TCD_CSR(ch)); in fsl_edma_set_tcd_regs()
442 edma_writel(edma, le32_to_cpu(tcd->saddr), addr + EDMA_TCD_SADDR(ch)); in fsl_edma_set_tcd_regs()
443 edma_writel(edma, le32_to_cpu(tcd->daddr), addr + EDMA_TCD_DADDR(ch)); in fsl_edma_set_tcd_regs()
445 edma_writew(edma, le16_to_cpu(tcd->attr), addr + EDMA_TCD_ATTR(ch)); in fsl_edma_set_tcd_regs()
446 edma_writew(edma, le16_to_cpu(tcd->soff), addr + EDMA_TCD_SOFF(ch)); in fsl_edma_set_tcd_regs()
448 edma_writel(edma, le32_to_cpu(tcd->nbytes), addr + EDMA_TCD_NBYTES(ch)); in fsl_edma_set_tcd_regs()
449 edma_writel(edma, le32_to_cpu(tcd->slast), addr + EDMA_TCD_SLAST(ch)); in fsl_edma_set_tcd_regs()
451 edma_writew(edma, le16_to_cpu(tcd->citer), addr + EDMA_TCD_CITER(ch)); in fsl_edma_set_tcd_regs()
452 edma_writew(edma, le16_to_cpu(tcd->biter), addr + EDMA_TCD_BITER(ch)); in fsl_edma_set_tcd_regs()
453 edma_writew(edma, le16_to_cpu(tcd->doff), addr + EDMA_TCD_DOFF(ch)); in fsl_edma_set_tcd_regs()
455 edma_writel(edma, le32_to_cpu(tcd->dlast_sga), addr + EDMA_TCD_DLAST_SGA(ch)); in fsl_edma_set_tcd_regs()
457 edma_writew(edma, le16_to_cpu(tcd->csr), addr + EDMA_TCD_CSR(ch)); in fsl_edma_set_tcd_regs()
890 fsl_chan->edma = fsl_edma; in fsl_edma_probe()