Commit 35f3f850 authored by Andy Shevchenko's avatar Andy Shevchenko Committed by Mark Brown

spi: Switch to signed types for *_native_cs SPI controller fields

While fixing undefined behaviour the commit f60d7270 ("spi: Avoid
undefined behaviour when counting unused native CSs") missed the case
when all CSs are GPIOs and thus unused_native_cs will be evaluated to
-1 in unsigned representation. This will falsely trigger a condition
in the spi_get_gpio_descs().

Switch to signed types for *_native_cs SPI controller fields to fix above.

Fixes: f60d7270 ("spi: Avoid undefined behaviour when counting unused native CSs")
Signed-off-by: default avatarAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20210510131242.49455-1-andriy.shevchenko@linux.intel.comSigned-off-by: default avatarMark Brown <broonie@kernel.org>
parent dc5fa590
...@@ -644,8 +644,8 @@ struct spi_controller { ...@@ -644,8 +644,8 @@ struct spi_controller {
int *cs_gpios; int *cs_gpios;
struct gpio_desc **cs_gpiods; struct gpio_desc **cs_gpiods;
bool use_gpio_descriptors; bool use_gpio_descriptors;
u8 unused_native_cs; s8 unused_native_cs;
u8 max_native_cs; s8 max_native_cs;
/* statistics */ /* statistics */
struct spi_statistics statistics; struct spi_statistics statistics;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment