| From 8616e054b4ba9a5accf01cdd61f0decb8a823549 Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Wed, 16 Apr 2025 11:06:03 +0000 |
| Subject: spi: tegra210-quad: modify chip select (CS) deactivation |
| |
| From: Vishwaroop A <va@nvidia.com> |
| |
| [ Upstream commit d8966b65413390d1b5b706886987caac05fbe024 ] |
| |
| Modify the chip select (CS) deactivation and inter-transfer delay |
| execution only during the DATA_TRANSFER phase when the cs_change |
| flag is not set. This ensures proper CS handling and timing between |
| transfers while eliminating redundant operations. |
| |
| Fixes: 1b8342cc4a38 ("spi: tegra210-quad: combined sequence mode") |
| Signed-off-by: Vishwaroop A <va@nvidia.com> |
| Link: https://patch.msgid.link/20250416110606.2737315-4-va@nvidia.com |
| Signed-off-by: Mark Brown <broonie@kernel.org> |
| Stable-dep-of: b4e002d8a7ce ("spi: tegra210-quad: Fix timeout handling") |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| drivers/spi/spi-tegra210-quad.c | 4 ++++ |
| 1 file changed, 4 insertions(+) |
| |
| diff --git a/drivers/spi/spi-tegra210-quad.c b/drivers/spi/spi-tegra210-quad.c |
| index ff6a2c297b8af..50243a520158c 100644 |
| --- a/drivers/spi/spi-tegra210-quad.c |
| +++ b/drivers/spi/spi-tegra210-quad.c |
| @@ -1148,6 +1148,10 @@ static int tegra_qspi_combined_seq_xfer(struct tegra_qspi *tqspi, |
| goto exit; |
| } |
| msg->actual_length += xfer->len; |
| + if (!xfer->cs_change && transfer_phase == DATA_TRANSFER) { |
| + tegra_qspi_transfer_end(spi); |
| + spi_transfer_delay_exec(xfer); |
| + } |
| transfer_phase++; |
| } |
| |
| -- |
| 2.51.0 |
| |