Lines Matching refs:first
203 static void atc_desc_chain(struct at_desc **first, struct at_desc **prev, in atc_desc_chain() argument
206 if (!(*first)) { in atc_desc_chain()
207 *first = desc; in atc_desc_chain()
213 &(*first)->tx_list); in atc_desc_chain()
225 static void atc_dostart(struct at_dma_chan *atchan, struct at_desc *first) in atc_dostart() argument
251 channel_writel(atchan, DSCR, first->txd.phys); in atc_dostart()
252 channel_writel(atchan, SPIP, ATC_SPIP_HOLE(first->src_hole) | in atc_dostart()
253 ATC_SPIP_BOUNDARY(first->boundary)); in atc_dostart()
254 channel_writel(atchan, DPIP, ATC_DPIP_HOLE(first->dst_hole) | in atc_dostart()
255 ATC_DPIP_BOUNDARY(first->boundary)); in atc_dostart()
595 struct at_desc *first = atc_first_active(atchan); in atc_handle_cyclic() local
596 struct dma_async_tx_descriptor *txd = &first->txd; in atc_handle_cyclic()
712 struct data_chunk *first; in atc_prep_dma_interleaved() local
724 first = xt->sgl; in atc_prep_dma_interleaved()
741 (dmaengine_get_dst_icg(xt, chunk) != dmaengine_get_dst_icg(xt, first)) || in atc_prep_dma_interleaved()
742 (dmaengine_get_src_icg(xt, chunk) != dmaengine_get_src_icg(xt, first))) { in atc_prep_dma_interleaved()
784 desc->boundary = first->size >> dwidth; in atc_prep_dma_interleaved()
785 desc->dst_hole = (dmaengine_get_dst_icg(xt, first) >> dwidth) + 1; in atc_prep_dma_interleaved()
786 desc->src_hole = (dmaengine_get_src_icg(xt, first) >> dwidth) + 1; in atc_prep_dma_interleaved()
813 struct at_desc *first = NULL; in atc_prep_dma_memcpy() local
860 atc_desc_chain(&first, &prev, desc); in atc_prep_dma_memcpy()
864 first->txd.cookie = -EBUSY; in atc_prep_dma_memcpy()
865 first->total_len = len; in atc_prep_dma_memcpy()
870 first->txd.flags = flags; /* client is in control of this ack */ in atc_prep_dma_memcpy()
872 return &first->txd; in atc_prep_dma_memcpy()
875 atc_desc_put(atchan, first); in atc_prep_dma_memcpy()
992 struct at_desc *desc = NULL, *first = NULL, *prev = NULL; in atc_prep_dma_memset_sg() local
1033 atc_desc_chain(&first, &prev, desc); in atc_prep_dma_memset_sg()
1046 first->txd.cookie = -EBUSY; in atc_prep_dma_memset_sg()
1047 first->total_len = total_len; in atc_prep_dma_memset_sg()
1052 first->txd.flags = flags; in atc_prep_dma_memset_sg()
1054 return &first->txd; in atc_prep_dma_memset_sg()
1057 atc_desc_put(atchan, first); in atc_prep_dma_memset_sg()
1078 struct at_desc *first = NULL; in atc_prep_slave_sg() local
1140 atc_desc_chain(&first, &prev, desc); in atc_prep_slave_sg()
1181 atc_desc_chain(&first, &prev, desc); in atc_prep_slave_sg()
1193 first->txd.cookie = -EBUSY; in atc_prep_slave_sg()
1194 first->total_len = total_len; in atc_prep_slave_sg()
1197 first->txd.flags = flags; /* client is in control of this ack */ in atc_prep_slave_sg()
1199 return &first->txd; in atc_prep_slave_sg()
1204 atc_desc_put(atchan, first); in atc_prep_slave_sg()
1225 struct at_desc *first = NULL; in atc_prep_dma_sg() local
1313 atc_desc_chain(&first, &prev, desc); in atc_prep_dma_sg()
1325 first->txd.cookie = -EBUSY; in atc_prep_dma_sg()
1326 first->total_len = total_len; in atc_prep_dma_sg()
1331 first->txd.flags = flags; /* client is in control of this ack */ in atc_prep_dma_sg()
1333 return &first->txd; in atc_prep_dma_sg()
1336 atc_desc_put(atchan, first); in atc_prep_dma_sg()
1430 struct at_desc *first = NULL; in atc_prep_dma_cyclic() local
1477 atc_desc_chain(&first, &prev, desc); in atc_prep_dma_cyclic()
1481 prev->lli.dscr = first->txd.phys; in atc_prep_dma_cyclic()
1484 first->txd.cookie = -EBUSY; in atc_prep_dma_cyclic()
1485 first->total_len = buf_len; in atc_prep_dma_cyclic()
1487 return &first->txd; in atc_prep_dma_cyclic()
1491 atc_desc_put(atchan, first); in atc_prep_dma_cyclic()