summaryrefslogtreecommitdiffstats
path: root/drivers/spi
diff options
context:
space:
mode:
authorKrishna Yarlagadda <kyarlagadda@nvidia.com>2022-10-01 14:21:44 +0200
committerMark Brown <broonie@kernel.org>2022-10-03 17:27:52 +0200
commit8777dd9dff4020bba66654ec92e4b0ab6367ad30 (patch)
treeae544647d592b01880060998caf3440ec0ed3927 /drivers/spi
parentspi: Ensure that sg_table won't be used after being freed (diff)
downloadlinux-8777dd9dff4020bba66654ec92e4b0ab6367ad30.tar.xz
linux-8777dd9dff4020bba66654ec92e4b0ab6367ad30.zip
spi: tegra210-quad: Fix combined sequence
Return value should be updated to zero in combined sequence routine if transfer is completed successfully. Currently it holds timeout value resulting in errors. Signed-off-by: Krishna Yarlagadda <kyarlagadda@nvidia.com> Link: https://lore.kernel.org/r/20221001122148.9158-1-kyarlagadda@nvidia.com Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'drivers/spi')
-rw-r--r--drivers/spi/spi-tegra210-quad.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/spi/spi-tegra210-quad.c b/drivers/spi/spi-tegra210-quad.c
index c89592b21ffc..904972606bd4 100644
--- a/drivers/spi/spi-tegra210-quad.c
+++ b/drivers/spi/spi-tegra210-quad.c
@@ -1157,6 +1157,11 @@ static int tegra_qspi_combined_seq_xfer(struct tegra_qspi *tqspi,
msg->actual_length += xfer->len;
transfer_phase++;
}
+ if (!xfer->cs_change) {
+ tegra_qspi_transfer_end(spi);
+ spi_transfer_delay_exec(xfer);
+ }
+ ret = 0;
exit:
msg->status = ret;