spi: spi-msm-geni: Use DMA mode for SPI responder requester

SPI Transfer mode selection is based on length but in SPI responder case
we get some latency for FIFO mode transfer that will cause some delay
in SPI responder transfer and we get "TX_FIFO_RD_ERR" interrupt. Moving
SPI responder to DMA mode for all transfer will not have this latency
issue and SPI requester/responder  will be in sync and we won't get any
error related to SPI requester/responder sync.

Change-Id: I6b9676aad2a4875a9ff6c4d998a45d2cd8a14cfa
Signed-off-by: Ashish Kori <akori@codeaurora.org>
Signed-off-by: Mehul Raninga <quic_mraninga@quicinc.com>
This commit is contained in:
Mehul Raninga 2023-02-28 11:53:27 +05:30 committed by Gerrit - the friendly Code Review server
parent 14bb37edb8
commit 0cedecdfb7

View File

@ -1527,7 +1527,9 @@ static int setup_fifo_xfer(struct spi_transfer *xfer,
* mode for transfers or select the mode dynamically based on
* size of data.
*/
mas->cur_xfer_mode = SE_DMA;
if (spi->slave)
mas->cur_xfer_mode = SE_DMA;
if (mas->disable_dma || trans_len <= fifo_size)
mas->cur_xfer_mode = FIFO_MODE;
geni_se_select_mode(mas->base, mas->cur_xfer_mode);