Lines Matching refs:first
175 * @first: address of first descriptor of the chain
181 static void atc_desc_chain(struct at_desc **first, struct at_desc **prev,
184 if (!(*first)) {
185 *first = desc;
191 &(*first)->tx_list);
199 * @first: first descriptor in the list we want to begin with
203 static void atc_dostart(struct at_dma_chan *atchan, struct at_desc *first)
229 channel_writel(atchan, DSCR, first->txd.phys);
278 * Initialize necessary values in the first time.
476 struct at_desc *first = atc_first_active(atchan);
477 struct dma_async_tx_descriptor *txd = &first->txd;
600 struct at_desc *first = NULL;
652 atc_desc_chain(&first, &prev, desc);
656 first->txd.cookie = -EBUSY;
657 first->len = len;
658 first->tx_width = src_width;
663 first->txd.flags = flags; /* client is in control of this ack */
665 return &first->txd;
668 atc_desc_put(atchan, first);
690 struct at_desc *first = NULL;
751 atc_desc_chain(&first, &prev, desc);
791 atc_desc_chain(&first, &prev, desc);
803 first->txd.cookie = -EBUSY;
804 first->len = total_len;
805 first->tx_width = reg_width;
807 /* first link descriptor of list is responsible of flags */
808 first->txd.flags = flags; /* client is in control of this ack */
810 return &first->txd;
815 atc_desc_put(atchan, first);
907 struct at_desc *first = NULL;
954 atc_desc_chain(&first, &prev, desc);
958 prev->lli.dscr = first->txd.phys;
961 first->txd.cookie = -EBUSY;
962 first->len = buf_len;
963 first->tx_width = reg_width;
965 return &first->txd;
969 atc_desc_put(atchan, first);