Lines Matching refs:rxfer
3050 struct spi_replaced_transfers *rxfer = res; in __spi_replace_transfers_release() local
3054 if (rxfer->release) in __spi_replace_transfers_release()
3055 rxfer->release(ctlr, msg, res); in __spi_replace_transfers_release()
3058 list_splice(&rxfer->replaced_transfers, rxfer->replaced_after); in __spi_replace_transfers_release()
3061 for (i = 0; i < rxfer->inserted; i++) in __spi_replace_transfers_release()
3062 list_del(&rxfer->inserted_transfers[i].transfer_list); in __spi_replace_transfers_release()
3089 struct spi_replaced_transfers *rxfer; in spi_replace_transfers() local
3094 rxfer = spi_res_alloc(msg->spi, __spi_replace_transfers_release, in spi_replace_transfers()
3095 struct_size(rxfer, inserted_transfers, insert) in spi_replace_transfers()
3098 if (!rxfer) in spi_replace_transfers()
3102 rxfer->release = release; in spi_replace_transfers()
3106 rxfer->extradata = in spi_replace_transfers()
3107 &rxfer->inserted_transfers[insert]; in spi_replace_transfers()
3110 INIT_LIST_HEAD(&rxfer->replaced_transfers); in spi_replace_transfers()
3115 rxfer->replaced_after = xfer_first->transfer_list.prev; in spi_replace_transfers()
3123 if (rxfer->replaced_after->next == &msg->transfers) { in spi_replace_transfers()
3127 list_splice(&rxfer->replaced_transfers, in spi_replace_transfers()
3128 rxfer->replaced_after); in spi_replace_transfers()
3131 spi_res_free(rxfer); in spi_replace_transfers()
3140 list_move_tail(rxfer->replaced_after->next, in spi_replace_transfers()
3141 &rxfer->replaced_transfers); in spi_replace_transfers()
3149 xfer = &rxfer->inserted_transfers[insert - 1 - i]; in spi_replace_transfers()
3155 list_add(&xfer->transfer_list, rxfer->replaced_after); in spi_replace_transfers()
3166 rxfer->inserted = insert; in spi_replace_transfers()
3169 spi_res_add(msg, rxfer); in spi_replace_transfers()
3171 return rxfer; in spi_replace_transfers()