diff options
author | Heiner Kallweit <hkallweit1@gmail.com> | 2016-09-13 23:15:45 +0200 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2016-09-14 18:24:46 +0100 |
commit | d198ebfb75adec5156b07b96dc21b6b9e5144018 (patch) | |
tree | acf2f5c2691596d3795acadc8338ebbb912982f0 /drivers/spi/spi-fsl-espi.c | |
parent | 38d003f1a43f3afd6b5e0da728f06dad07a85687 (diff) | |
download | lwn-d198ebfb75adec5156b07b96dc21b6b9e5144018.tar.gz lwn-d198ebfb75adec5156b07b96dc21b6b9e5144018.zip |
spi: fsl-espi: simplify fsl_espi_setup_transfer
If t is not null then the SPI core takes care that bits_per_word and
speed_hz are populated. This allows to simplify fsl_espi_setup_transfer.
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'drivers/spi/spi-fsl-espi.c')
-rw-r--r-- | drivers/spi/spi-fsl-espi.c | 16 |
1 files changed, 2 insertions, 14 deletions
diff --git a/drivers/spi/spi-fsl-espi.c b/drivers/spi/spi-fsl-espi.c index bef06762a770..060624f45ce0 100644 --- a/drivers/spi/spi-fsl-espi.c +++ b/drivers/spi/spi-fsl-espi.c @@ -176,23 +176,11 @@ static void fsl_espi_setup_transfer(struct spi_device *spi, struct spi_transfer *t) { struct mpc8xxx_spi *mpc8xxx_spi = spi_master_get_devdata(spi->master); - int bits_per_word = 0; + int bits_per_word = t ? t->bits_per_word : spi->bits_per_word; + u32 hz = t ? t->speed_hz : spi->max_speed_hz; u8 pm; - u32 hz = 0; struct spi_mpc8xxx_cs *cs = spi->controller_state; - if (t) { - bits_per_word = t->bits_per_word; - hz = t->speed_hz; - } - - /* spi_transfer level calls that work per-word */ - if (!bits_per_word) - bits_per_word = spi->bits_per_word; - - if (!hz) - hz = spi->max_speed_hz; - cs->rx_shift = 0; cs->tx_shift = 0; cs->get_rx = mpc8xxx_spi_rx_buf_u32; |