openwrtv3/target/linux/generic/pending-4.9/131-spi-use-gpio_set_value_cansleep-for-setting-chipsele.patch
Stijn Tintel 2d02a4f5bd kernel: update 4.9 to 4.9.44
Refresh patches.
Adapt 704-phy-no-genphy-soft-reset.patch.
Remove brcm2708/950-0005-mm-Remove-the-PFN-busy-warning.patch.
Compile-tested on brcm2708/bcm2708 and x86/64.
Runtime-tested on brcm2708/bcm2708 and x86/64.

Fixes the following vulnerabilities:
- CVE-2017-7533
- CVE-2017-1000111
- CVE-2017-1000112

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-08-17 12:34:34 +02:00

20 lines
592 B
Diff

From: Felix Fietkau <nbd@nbd.name>
Subject: spi: use gpio_set_value_cansleep for setting chipselect GPIO
Sleeping is safe inside spi_transfer_one_message, and some GPIO chips
need to sleep for setting values
Signed-off-by: Felix Fietkau <nbd@nbd.name>
---
--- a/drivers/spi/spi.c
+++ b/drivers/spi/spi.c
@@ -700,7 +700,7 @@ static void spi_set_cs(struct spi_device
enable = !enable;
if (gpio_is_valid(spi->cs_gpio))
- gpio_set_value(spi->cs_gpio, !enable);
+ gpio_set_value_cansleep(spi->cs_gpio, !enable);
else if (spi->master->set_cs)
spi->master->set_cs(spi, !enable);
}