From 9d101a46bb58f1f91877004d59d0ac5c0c9626fd Mon Sep 17 00:00:00 2001 From: Vishwaroop A Date: Tue, 11 Apr 2023 21:00:18 +0000 Subject: [PATCH] spi: use non combined seq for split xfers Add check to switch to non combined sequence for transfers if transfer length is greater than DMA buffer size. Combined sequence cannot handle split transfers so anything above dma_buf_size fails. In case the transfers are beyond 64KB add a mechanism to switch to non combined sequence of transfers. Bug 3754288 Change-Id: I4d4eda56dcefdd9e35c19cdaf770783b99650c2c Signed-off-by: Vishwaroop A Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/2886311 Reviewed-by: svc-mobile-coverity Reviewed-by: svc-mobile-cert Reviewed-by: Laxman Dewangan GVS: Gerrit_Virtual_Submit --- drivers/spi/spi-tegra210-quad.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/spi/spi-tegra210-quad.c b/drivers/spi/spi-tegra210-quad.c index b33ec61b..be434c39 100644 --- a/drivers/spi/spi-tegra210-quad.c +++ b/drivers/spi/spi-tegra210-quad.c @@ -1355,6 +1355,9 @@ static bool tegra_qspi_validate_cmb_seq(struct tegra_qspi *tqspi, if (!tqspi->soc_data->dma_mode && xfer->len > (QSPI_FIFO_DEPTH << 2)) return false; + if (xfer->len > tqspi->dma_buf_size) + return false; + return true; }