spi: stm32: Fix logical error in stm32_spi_prepare_mbr()

stm32_spi_prepare_mbr() is returning an error value when div is less
than SPI_MBR_DIV_MIN *and* greater than SPI_MBR_DIV_MAX, which always
evaluates to false. This should change to use *or*.

Signed-off-by: Christos Gkekas <chris.gekas@gmail.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
Christos Gkekas 2017-09-10 14:55:29 +01:00 committed by Mark Brown
parent ecb478bf86
commit 8b5d729a3a

View file

@ -263,8 +263,8 @@ static int stm32_spi_prepare_mbr(struct stm32_spi *spi, u32 speed_hz)
* no need to check it there. * no need to check it there.
* However, we need to ensure the following calculations. * However, we need to ensure the following calculations.
*/ */
if ((div < SPI_MBR_DIV_MIN) && if (div < SPI_MBR_DIV_MIN ||
(div > SPI_MBR_DIV_MAX)) div > SPI_MBR_DIV_MAX)
return -EINVAL; return -EINVAL;
/* Determine the first power of 2 greater than or equal to div */ /* Determine the first power of 2 greater than or equal to div */