aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/ath79/patches-5.10/0054-spi-always-write-cs.patch
diff options
context:
space:
mode:
authorDavid Bauer <mail@david-bauer.net>2021-03-03 17:23:16 +0100
committerDavid Bauer <mail@david-bauer.net>2021-03-05 00:03:47 +0100
commit82b9713ce8f5ff90d1d89dbf667aeab5b0aec358 (patch)
tree341c0a8c08d342d3628fd29df2cf4f6dd39affb9 /target/linux/ath79/patches-5.10/0054-spi-always-write-cs.patch
parentf3f630145aeca0c366ec54a9f5b1f4956374ad1e (diff)
downloadupstream-82b9713ce8f5ff90d1d89dbf667aeab5b0aec358.tar.gz
upstream-82b9713ce8f5ff90d1d89dbf667aeab5b0aec358.tar.bz2
upstream-82b9713ce8f5ff90d1d89dbf667aeab5b0aec358.zip
ath79: replace chipselect workaround with a proper patch
Debugging the SPI CS issue with kernel 5.10 resulted in a better understanding for the root cause and a proper patch with a better explanation. Exchange the old hack patch with a more efficient (and upstreamable) solution. Signed-off-by: David Bauer <mail@david-bauer.net>
Diffstat (limited to 'target/linux/ath79/patches-5.10/0054-spi-always-write-cs.patch')
-rw-r--r--target/linux/ath79/patches-5.10/0054-spi-always-write-cs.patch31
1 files changed, 0 insertions, 31 deletions
diff --git a/target/linux/ath79/patches-5.10/0054-spi-always-write-cs.patch b/target/linux/ath79/patches-5.10/0054-spi-always-write-cs.patch
deleted file mode 100644
index 1e461cee0a..0000000000
--- a/target/linux/ath79/patches-5.10/0054-spi-always-write-cs.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-Upstream commit d40f0b6f2e21 ("spi: Avoid settingthe chip select if
-we don't need to") causes the SPI CS only to be asserted once and not
-if it's state stays the same.
-
-This seems to cause problems with the SPI on the AR724x and the AR913x
-(but not the AR71xx). AR934x and subsequent chips do not look affected.
-
-ToDo:
- - Analyze if this is a hardware bug or a bug in the software.
- - Send a cleaned up patch upstream.
-
-Signed-off-by: David Bauer <mail@david-bauer.net>
-
---- a/drivers/spi/spi.c
-+++ b/drivers/spi/spi.c
-@@ -791,6 +791,7 @@ static void spi_set_cs(struct spi_device
- {
- bool enable1 = enable;
-
-+#if 0
- /*
- * Avoid calling into the driver (or doing delays) if the chip select
- * isn't actually changing from the last time this was called.
-@@ -801,6 +802,7 @@ static void spi_set_cs(struct spi_device
-
- spi->controller->last_cs_enable = enable;
- spi->controller->last_cs_mode_high = spi->mode & SPI_CS_HIGH;
-+#endif
-
- if (!spi->controller->set_cs_timing) {
- if (enable1)