Lines Matching refs:sw_desc
260 * sw_desc
264 struct mv_xor_desc_slot *sw_desc)
266 dev_dbg(mv_chan->device->common.dev, "%s %d: sw_desc %p\n",
267 __func__, __LINE__, sw_desc);
268 if (sw_desc->type != mv_chan->current_type)
269 mv_set_mode(mv_chan, sw_desc->type);
271 if (sw_desc->type == DMA_MEMSET) {
275 struct mv_xor_desc *hw_desc = sw_desc->hw_desc;
277 mv_chan_set_block_size(mv_chan, sw_desc->unmap_len);
278 mv_chan_set_value(mv_chan, sw_desc->value);
281 mv_chan_set_next_descriptor(mv_chan, sw_desc->async_tx.phys);
283 mv_chan->pending += sw_desc->slot_cnt;
553 struct mv_xor_desc_slot *sw_desc = to_mv_xor_slot(tx);
560 "%s sw_desc %p: async_tx %p\n",
561 __func__, sw_desc, &sw_desc->async_tx);
563 grp_start = sw_desc->group_head;
566 cookie = mv_desc_assign_cookie(mv_chan, sw_desc);
569 list_splice_init(&sw_desc->tx_list, &mv_chan->chain);
665 struct mv_xor_desc_slot *sw_desc, *grp_start;
678 sw_desc = mv_xor_alloc_slots(mv_chan, slot_cnt, 1);
679 if (sw_desc) {
680 sw_desc->type = DMA_MEMCPY;
681 sw_desc->async_tx.flags = flags;
682 grp_start = sw_desc->group_head;
685 mv_desc_set_dest_addr(sw_desc->group_head, dest);
687 sw_desc->unmap_src_cnt = 1;
688 sw_desc->unmap_len = len;
693 "%s sw_desc %p async_tx %p\n",
694 __func__, sw_desc, sw_desc ? &sw_desc->async_tx : 0);
696 return sw_desc ? &sw_desc->async_tx : NULL;
704 struct mv_xor_desc_slot *sw_desc, *grp_start;
717 sw_desc = mv_xor_alloc_slots(mv_chan, slot_cnt, 1);
718 if (sw_desc) {
719 sw_desc->type = DMA_MEMSET;
720 sw_desc->async_tx.flags = flags;
721 grp_start = sw_desc->group_head;
724 mv_desc_set_dest_addr(sw_desc->group_head, dest);
726 sw_desc->unmap_src_cnt = 1;
727 sw_desc->unmap_len = len;
731 "%s sw_desc %p async_tx %p \n",
732 __func__, sw_desc, &sw_desc->async_tx);
733 return sw_desc ? &sw_desc->async_tx : NULL;
741 struct mv_xor_desc_slot *sw_desc, *grp_start;
755 sw_desc = mv_xor_alloc_slots(mv_chan, slot_cnt, 1);
756 if (sw_desc) {
757 sw_desc->type = DMA_XOR;
758 sw_desc->async_tx.flags = flags;
759 grp_start = sw_desc->group_head;
763 mv_desc_set_dest_addr(sw_desc->group_head, dest);
764 sw_desc->unmap_src_cnt = src_cnt;
765 sw_desc->unmap_len = len;
771 "%s sw_desc %p async_tx %p \n",
772 __func__, sw_desc, &sw_desc->async_tx);
773 return sw_desc ? &sw_desc->async_tx : NULL;