From: Felix Fietkau 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 --- --- 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); }