Lines Matching refs:rxfer
3341 struct spi_replaced_transfers *rxfer = res; in __spi_replace_transfers_release() local
3345 if (rxfer->release) in __spi_replace_transfers_release()
3346 rxfer->release(ctlr, msg, res); in __spi_replace_transfers_release()
3349 list_splice(&rxfer->replaced_transfers, rxfer->replaced_after); in __spi_replace_transfers_release()
3352 for (i = 0; i < rxfer->inserted; i++) in __spi_replace_transfers_release()
3353 list_del(&rxfer->inserted_transfers[i].transfer_list); in __spi_replace_transfers_release()
3380 struct spi_replaced_transfers *rxfer; in spi_replace_transfers() local
3385 rxfer = spi_res_alloc(msg->spi, __spi_replace_transfers_release, in spi_replace_transfers()
3386 struct_size(rxfer, inserted_transfers, insert) in spi_replace_transfers()
3389 if (!rxfer) in spi_replace_transfers()
3393 rxfer->release = release; in spi_replace_transfers()
3397 rxfer->extradata = in spi_replace_transfers()
3398 &rxfer->inserted_transfers[insert]; in spi_replace_transfers()
3401 INIT_LIST_HEAD(&rxfer->replaced_transfers); in spi_replace_transfers()
3407 rxfer->replaced_after = xfer_first->transfer_list.prev; in spi_replace_transfers()
3416 if (rxfer->replaced_after->next == &msg->transfers) { in spi_replace_transfers()
3420 list_splice(&rxfer->replaced_transfers, in spi_replace_transfers()
3421 rxfer->replaced_after); in spi_replace_transfers()
3424 spi_res_free(rxfer); in spi_replace_transfers()
3434 list_move_tail(rxfer->replaced_after->next, in spi_replace_transfers()
3435 &rxfer->replaced_transfers); in spi_replace_transfers()
3444 xfer = &rxfer->inserted_transfers[insert - 1 - i]; in spi_replace_transfers()
3450 list_add(&xfer->transfer_list, rxfer->replaced_after); in spi_replace_transfers()
3460 rxfer->inserted = insert; in spi_replace_transfers()
3463 spi_res_add(msg, rxfer); in spi_replace_transfers()
3465 return rxfer; in spi_replace_transfers()