Skip to content

Commit

Permalink
hw/ssi/imx_spi: Removed unnecessary cast of rx data received from slave
Browse files Browse the repository at this point in the history
When inserting the value retrieved (rx) from the spi slave, rx is pushed to
rx_fifo after being cast to uint8_t. rx_fifo is a fifo32, and the rx
register the driver uses is also 32 bit. This zeroes the 24 most
significant bits of rx. This proved problematic with devices that expect to
use the whole 32 bits of the rx register.

Signed-off-by: Eden Mikitas <e.mikitas@gmail.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
  • Loading branch information
emikitas authored and pm215 committed Jun 5, 2020
1 parent 9c49c83 commit 6d68614
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion hw/ssi/imx_spi.c
Expand Up @@ -206,7 +206,7 @@ static void imx_spi_flush_txfifo(IMXSPIState *s)
if (fifo32_is_full(&s->rx_fifo)) {
s->regs[ECSPI_STATREG] |= ECSPI_STATREG_RO;
} else {
fifo32_push(&s->rx_fifo, (uint8_t)rx);
fifo32_push(&s->rx_fifo, rx);
}

if (s->burst_length <= 0) {
Expand Down

0 comments on commit 6d68614

Please sign in to comment.