aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJarkko Nikula <jarkko.nikula@linux.intel.com>2015-09-25 02:03:01 -0400
committerMark Brown <broonie@kernel.org>2015-09-25 14:02:50 -0400
commite8646580cc9a6ae24ab3d05f90e71334f50cdedf (patch)
tree9daabc353bdd0696f108eea66f87125aeb6ba26c
parent6ff33f3902c3b1c5d0db6b1e2c70b6d76fba357f (diff)
spi: atmel: Remove needless bits_per_word and speed_hz tests
SPI core validates both bits_per_word and speed_hz transfer parameters and defaults to spi->bits_per_word and spi->max_speed_hz in case these per transfer parameters are not set. This makes possible to remove two if statements and remove one code block that is never executed. Signed-off-by: Jarkko Nikula <jarkko.nikula@linux.intel.com> Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com> Signed-off-by: Mark Brown <broonie@kernel.org>
-rw-r--r--drivers/spi/spi-atmel.c21
1 files changed, 6 insertions, 15 deletions
diff --git a/drivers/spi/spi-atmel.c b/drivers/spi/spi-atmel.c
index bf9ed380bb1c..1cc1f1e0d17f 100644
--- a/drivers/spi/spi-atmel.c
+++ b/drivers/spi/spi-atmel.c
@@ -871,14 +871,7 @@ static int atmel_spi_set_xfer_speed(struct atmel_spi *as,
871 * Calculate the lowest divider that satisfies the 871 * Calculate the lowest divider that satisfies the
872 * constraint, assuming div32/fdiv/mbz == 0. 872 * constraint, assuming div32/fdiv/mbz == 0.
873 */ 873 */
874 if (xfer->speed_hz) 874 scbr = DIV_ROUND_UP(bus_hz, xfer->speed_hz);
875 scbr = DIV_ROUND_UP(bus_hz, xfer->speed_hz);
876 else
877 /*
878 * This can happend if max_speed is null.
879 * In this case, we set the lowest possible speed
880 */
881 scbr = 0xff;
882 875
883 /* 876 /*
884 * If the resulting divider doesn't fit into the 877 * If the resulting divider doesn't fit into the
@@ -1300,14 +1293,12 @@ static int atmel_spi_one_transfer(struct spi_master *master,
1300 return -EINVAL; 1293 return -EINVAL;
1301 } 1294 }
1302 1295
1303 if (xfer->bits_per_word) { 1296 asd = spi->controller_state;
1304 asd = spi->controller_state; 1297 bits = (asd->csr >> 4) & 0xf;
1305 bits = (asd->csr >> 4) & 0xf; 1298 if (bits != xfer->bits_per_word - 8) {
1306 if (bits != xfer->bits_per_word - 8) { 1299 dev_dbg(&spi->dev,
1307 dev_dbg(&spi->dev,
1308 "you can't yet change bits_per_word in transfers\n"); 1300 "you can't yet change bits_per_word in transfers\n");
1309 return -ENOPROTOOPT; 1301 return -ENOPROTOOPT;
1310 }
1311 } 1302 }
1312 1303
1313 /* 1304 /*