Commit bd961699 authored by Uwe Kleine-König's avatar Uwe Kleine-König Committed by Mark Brown

spi: imx: Simplify logic in spi_imx_push()

For each usage of fifo_words it is clear if ->dynamic_burst is true or
not. This can be used to simplify the function a bit.
Signed-off-by: default avatarUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reviewed-by: default avatarFabio Estevam <festevam@gmail.com>
Link: https://lore.kernel.org/r/20210716173927.2050620-1-u.kleine-koenig@pengutronix.deSigned-off-by: default avatarMark Brown <broonie@kernel.org>
parent 3bbdc083
...@@ -1038,12 +1038,8 @@ static void spi_imx_set_burst_len(struct spi_imx_data *spi_imx, int n_bits) ...@@ -1038,12 +1038,8 @@ static void spi_imx_set_burst_len(struct spi_imx_data *spi_imx, int n_bits)
static void spi_imx_push(struct spi_imx_data *spi_imx) static void spi_imx_push(struct spi_imx_data *spi_imx)
{ {
unsigned int burst_len, fifo_words; unsigned int burst_len;
if (spi_imx->dynamic_burst)
fifo_words = 4;
else
fifo_words = spi_imx_bytes_per_word(spi_imx->bits_per_word);
/* /*
* Reload the FIFO when the remaining bytes to be transferred in the * Reload the FIFO when the remaining bytes to be transferred in the
* current burst is 0. This only applies when bits_per_word is a * current burst is 0. This only applies when bits_per_word is a
...@@ -1062,7 +1058,7 @@ static void spi_imx_push(struct spi_imx_data *spi_imx) ...@@ -1062,7 +1058,7 @@ static void spi_imx_push(struct spi_imx_data *spi_imx)
spi_imx->remainder = burst_len; spi_imx->remainder = burst_len;
} else { } else {
spi_imx->remainder = fifo_words; spi_imx->remainder = spi_imx_bytes_per_word(spi_imx->bits_per_word);
} }
} }
...@@ -1070,8 +1066,7 @@ static void spi_imx_push(struct spi_imx_data *spi_imx) ...@@ -1070,8 +1066,7 @@ static void spi_imx_push(struct spi_imx_data *spi_imx)
if (!spi_imx->count) if (!spi_imx->count)
break; break;
if (spi_imx->dynamic_burst && if (spi_imx->dynamic_burst &&
spi_imx->txfifo >= DIV_ROUND_UP(spi_imx->remainder, spi_imx->txfifo >= DIV_ROUND_UP(spi_imx->remainder, 4))
fifo_words))
break; break;
spi_imx->tx(spi_imx); spi_imx->tx(spi_imx);
spi_imx->txfifo++; spi_imx->txfifo++;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment