diff options
-rw-r--r-- | target/linux/generic/patches-4.4/106-spi-use-gpio_set_value_cansleep-for-setting-chipsele.patch | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/target/linux/generic/patches-4.4/106-spi-use-gpio_set_value_cansleep-for-setting-chipsele.patch b/target/linux/generic/patches-4.4/106-spi-use-gpio_set_value_cansleep-for-setting-chipsele.patch new file mode 100644 index 0000000000..57c9475359 --- /dev/null +++ b/target/linux/generic/patches-4.4/106-spi-use-gpio_set_value_cansleep-for-setting-chipsele.patch @@ -0,0 +1,21 @@ +From: Felix Fietkau <nbd@nbd.name> +Date: Fri, 30 Dec 2016 14:53:45 +0100 +Subject: [PATCH] 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 +@@ -674,7 +674,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); + } |