diff --git a/software/spi-ocores/drivers/spi/spi-ocores.c b/software/spi-ocores/drivers/spi/spi-ocores.c index b879c1288a0372aef6e7a48ebe71d3cd6494acd3..1351d8f1021d2a6ee595723f9c664ffd842aa7a3 100644 --- a/software/spi-ocores/drivers/spi/spi-ocores.c +++ b/software/spi-ocores/drivers/spi/spi-ocores.c @@ -467,9 +467,11 @@ static int spi_ocores_sw_xfer_next_init(struct spi_ocores *sp) ctrl = sp->ctrl_base; if (sp->master->cur_msg->spi->mode & SPI_CPHA) { - ctrl |= SPI_OCORES_CTRL_Tx_NEG; ctrl |= SPI_OCORES_CTRL_Rx_NEG; } + else + ctrl |= SPI_OCORES_CTRL_Tx_NEG; + if (sp->master->cur_msg->spi->mode & SPI_LSB_FIRST) ctrl |= SPI_OCORES_CTRL_LSB; ctrl |= nbits;