aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/spi/spi-pxa2xx.c
diff options
context:
space:
mode:
authorJarkko Nikula <jarkko.nikula@linux.intel.com>2015-09-15 09:26:26 -0400
committerMark Brown <broonie@kernel.org>2015-09-17 13:36:14 -0400
commit4f1474b3b786305d77c93c232f65d40018043e9f (patch)
treeb563167dd70fe9e06d0e7f7330c1512c179d1f55 /drivers/spi/spi-pxa2xx.c
parent6ff33f3902c3b1c5d0db6b1e2c70b6d76fba357f (diff)
spi: pxa2xx: Remove two variables from struct chip_data
There is no need to carry spi->max_speed_hz and spi->bits_per_word from setup() in "struct chip_data" since pump_transfers() will anyway take the transfer parameters from "struct spi_transfer". This is since 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. Signed-off-by: Jarkko Nikula <jarkko.nikula@linux.intel.com> Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'drivers/spi/spi-pxa2xx.c')
-rw-r--r--drivers/spi/spi-pxa2xx.c12
1 files changed, 2 insertions, 10 deletions
diff --git a/drivers/spi/spi-pxa2xx.c b/drivers/spi/spi-pxa2xx.c
index fdd791977041..dc6f3f1ceb15 100644
--- a/drivers/spi/spi-pxa2xx.c
+++ b/drivers/spi/spi-pxa2xx.c
@@ -921,14 +921,8 @@ static void pump_transfers(unsigned long data)
921 cr0 = chip->cr0; 921 cr0 = chip->cr0;
922 if (transfer->speed_hz || transfer->bits_per_word) { 922 if (transfer->speed_hz || transfer->bits_per_word) {
923 923
924 bits = chip->bits_per_word; 924 bits = transfer->bits_per_word;
925 speed = chip->speed_hz; 925 speed = transfer->speed_hz;
926
927 if (transfer->speed_hz)
928 speed = transfer->speed_hz;
929
930 if (transfer->bits_per_word)
931 bits = transfer->bits_per_word;
932 926
933 clk_div = pxa2xx_ssp_get_clk_div(drv_data, chip, speed); 927 clk_div = pxa2xx_ssp_get_clk_div(drv_data, chip, speed);
934 928
@@ -1200,7 +1194,6 @@ static int setup(struct spi_device *spi)
1200 } 1194 }
1201 1195
1202 clk_div = pxa2xx_ssp_get_clk_div(drv_data, chip, spi->max_speed_hz); 1196 clk_div = pxa2xx_ssp_get_clk_div(drv_data, chip, spi->max_speed_hz);
1203 chip->speed_hz = spi->max_speed_hz;
1204 1197
1205 chip->cr0 = pxa2xx_configure_sscr0(drv_data, clk_div, 1198 chip->cr0 = pxa2xx_configure_sscr0(drv_data, clk_div,
1206 spi->bits_per_word); 1199 spi->bits_per_word);
@@ -1251,7 +1244,6 @@ static int setup(struct spi_device *spi)
1251 chip->read = u32_reader; 1244 chip->read = u32_reader;
1252 chip->write = u32_writer; 1245 chip->write = u32_writer;
1253 } 1246 }
1254 chip->bits_per_word = spi->bits_per_word;
1255 1247
1256 spi_set_ctldata(spi, chip); 1248 spi_set_ctldata(spi, chip);
1257 1249