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>
cr0 = chip->cr0;
if (transfer->speed_hz || transfer->bits_per_word) {
cr0 = chip->cr0;
if (transfer->speed_hz || transfer->bits_per_word) {
- bits = chip->bits_per_word;
- speed = chip->speed_hz;
-
- if (transfer->speed_hz)
- speed = transfer->speed_hz;
-
- if (transfer->bits_per_word)
- bits = transfer->bits_per_word;
+ bits = transfer->bits_per_word;
+ speed = transfer->speed_hz;
clk_div = pxa2xx_ssp_get_clk_div(drv_data, chip, speed);
clk_div = pxa2xx_ssp_get_clk_div(drv_data, chip, speed);
}
clk_div = pxa2xx_ssp_get_clk_div(drv_data, chip, spi->max_speed_hz);
}
clk_div = pxa2xx_ssp_get_clk_div(drv_data, chip, spi->max_speed_hz);
- chip->speed_hz = spi->max_speed_hz;
chip->cr0 = pxa2xx_configure_sscr0(drv_data, clk_div,
spi->bits_per_word);
chip->cr0 = pxa2xx_configure_sscr0(drv_data, clk_div,
spi->bits_per_word);
chip->read = u32_reader;
chip->write = u32_writer;
}
chip->read = u32_reader;
chip->write = u32_writer;
}
- chip->bits_per_word = spi->bits_per_word;
spi_set_ctldata(spi, chip);
spi_set_ctldata(spi, chip);
u16 lpss_rx_threshold;
u16 lpss_tx_threshold;
u8 enable_dma;
u16 lpss_rx_threshold;
u16 lpss_tx_threshold;
u8 enable_dma;
- u8 bits_per_word;
- u32 speed_hz;
union {
int gpio_cs;
unsigned int frm;
union {
int gpio_cs;
unsigned int frm;