Lines Matching defs:transfer

38 		 "time in us to run a transfer in polling mode\n");
53 /* The maximum bytes that a sdma BD can transfer. */
56 /* The maximum bytes that IMX53_ECSPI can transfer in target mode.*/
234 struct spi_transfer *transfer)
247 if (transfer->len < spi_imx->devtype_data->fifo_size)
1275 * Initialize the functions for transfer. To transfer non byte-aligned
1393 /* Time with actual data transfer and CS change delay related to HW */
1404 struct spi_transfer *transfer)
1410 struct sg_table *tx = &transfer->tx_sg, *rx = &transfer->rx_sg;
1416 bytes_per_word = spi_imx_bytes_per_word(transfer->bits_per_word);
1439 * The TX DMA setup starts the transfer, so make sure RX is configured
1471 transfer_timeout = spi_imx_calculate_timeout(spi_imx, transfer->len);
1473 /* Wait SDMA to finish the data transfer.*/
1495 transfer->error |= SPI_TRANS_FAIL_NO_START;
1500 struct spi_transfer *transfer)
1506 spi_imx->tx_buf = transfer->tx_buf;
1507 spi_imx->rx_buf = transfer->rx_buf;
1508 spi_imx->count = transfer->len;
1518 transfer_timeout = spi_imx_calculate_timeout(spi_imx, transfer->len);
1532 struct spi_transfer *transfer)
1537 spi_imx->tx_buf = transfer->tx_buf;
1538 spi_imx->rx_buf = transfer->rx_buf;
1539 spi_imx->count = transfer->len;
1549 timeout = spi_imx_calculate_timeout(spi_imx, transfer->len) + jiffies;
1572 return spi_imx_pio_transfer(spi, transfer);
1580 struct spi_transfer *transfer)
1586 transfer->len > MX53_MAX_TRANSFER_BYTES) {
1592 spi_imx->tx_buf = transfer->tx_buf;
1593 spi_imx->rx_buf = transfer->rx_buf;
1594 spi_imx->count = transfer->len;
1615 * transfer completes
1625 struct spi_transfer *transfer)
1630 spi_imx_setupxfer(spi, transfer);
1631 transfer->effective_speed_hz = spi_imx->spi_bus_clk;
1633 /* flush rxfifo before transfer */
1638 return spi_imx_pio_transfer_target(spi, transfer);
1642 * transfer, the SPI transfer has already been mapped, so we
1643 * have to do the DMA transfer here.
1646 return spi_imx_dma_transfer(spi_imx, transfer);
1648 * Calculate the estimated time in us the transfer runs. Find
1652 byte_limit = hz_per_byte ? transfer->effective_speed_hz / hz_per_byte : 1;
1655 if (transfer->len < byte_limit)
1656 return spi_imx_poll_transfer(spi, transfer);
1658 return spi_imx_pio_transfer(spi, transfer);