Lines Matching refs:rxfer
3068 struct spi_replaced_transfers *rxfer = res;
3072 if (rxfer->release)
3073 rxfer->release(ctlr, msg, res);
3076 list_splice(&rxfer->replaced_transfers, rxfer->replaced_after);
3079 for (i = 0; i < rxfer->inserted; i++)
3080 list_del(&rxfer->inserted_transfers[i].transfer_list);
3107 struct spi_replaced_transfers *rxfer;
3112 rxfer = spi_res_alloc(msg->spi, __spi_replace_transfers_release,
3113 struct_size(rxfer, inserted_transfers, insert)
3116 if (!rxfer)
3120 rxfer->release = release;
3124 rxfer->extradata =
3125 &rxfer->inserted_transfers[insert];
3128 INIT_LIST_HEAD(&rxfer->replaced_transfers);
3133 rxfer->replaced_after = xfer_first->transfer_list.prev;
3141 if (rxfer->replaced_after->next == &msg->transfers) {
3145 list_splice(&rxfer->replaced_transfers,
3146 rxfer->replaced_after);
3149 spi_res_free(rxfer);
3158 list_move_tail(rxfer->replaced_after->next,
3159 &rxfer->replaced_transfers);
3167 xfer = &rxfer->inserted_transfers[insert - 1 - i];
3173 list_add(&xfer->transfer_list, rxfer->replaced_after);
3184 rxfer->inserted = insert;
3187 spi_res_add(msg, rxfer);
3189 return rxfer;