Lines Matching refs:rxfer
3388 struct spi_replaced_transfers *rxfer = res;
3392 if (rxfer->release)
3393 rxfer->release(ctlr, msg, res);
3396 list_splice(&rxfer->replaced_transfers, rxfer->replaced_after);
3399 for (i = 0; i < rxfer->inserted; i++)
3400 list_del(&rxfer->inserted_transfers[i].transfer_list);
3427 struct spi_replaced_transfers *rxfer;
3432 rxfer = spi_res_alloc(msg->spi, __spi_replace_transfers_release,
3433 struct_size(rxfer, inserted_transfers, insert)
3436 if (!rxfer)
3440 rxfer->release = release;
3444 rxfer->extradata =
3445 &rxfer->inserted_transfers[insert];
3448 INIT_LIST_HEAD(&rxfer->replaced_transfers);
3454 rxfer->replaced_after = xfer_first->transfer_list.prev;
3463 if (rxfer->replaced_after->next == &msg->transfers) {
3467 list_splice(&rxfer->replaced_transfers,
3468 rxfer->replaced_after);
3471 spi_res_free(rxfer);
3481 list_move_tail(rxfer->replaced_after->next,
3482 &rxfer->replaced_transfers);
3491 xfer = &rxfer->inserted_transfers[insert - 1 - i];
3497 list_add(&xfer->transfer_list, rxfer->replaced_after);
3507 rxfer->inserted = insert;
3510 spi_res_add(msg, rxfer);
3512 return rxfer;