spi: spi-geni-qcom: Simplify setup_fifo_xfer()
authorStephen Boyd <swboyd@chromium.org>
Sat, 20 Jun 2020 02:22:32 +0000 (19:22 -0700)
committerMark Brown <broonie@kernel.org>
Mon, 22 Jun 2020 14:58:31 +0000 (15:58 +0100)
The definition of SPI_FULL_DUPLEX (3) is really SPI_TX_ONLY (1) ORed
with SPI_RX_ONLY (2). Let's drop the define and simplify the code here a
bit by collapsing the setting of 'm_cmd' into conditions that are the
same.

This is a non-functional change, just cleanup to consolidate code.

Signed-off-by: Stephen Boyd <swboyd@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Link: https://lore.kernel.org/r/20200620022233.64716-2-swboyd@chromium.org
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/spi/spi-geni-qcom.c

index 0c534d1..d8f03ff 100644 (file)
@@ -51,7 +51,6 @@
 /* M_CMD OP codes for SPI */
 #define SPI_TX_ONLY            1
 #define SPI_RX_ONLY            2
-#define SPI_FULL_DUPLEX                3
 #define SPI_TX_RX              7
 #define SPI_CS_ASSERT          8
 #define SPI_CS_DEASSERT                9
@@ -353,12 +352,6 @@ static void setup_fifo_xfer(struct spi_transfer *xfer,
 
        mas->tx_rem_bytes = 0;
        mas->rx_rem_bytes = 0;
-       if (xfer->tx_buf && xfer->rx_buf)
-               m_cmd = SPI_FULL_DUPLEX;
-       else if (xfer->tx_buf)
-               m_cmd = SPI_TX_ONLY;
-       else if (xfer->rx_buf)
-               m_cmd = SPI_RX_ONLY;
 
        spi_tx_cfg &= ~CS_TOGGLE;
 
@@ -369,12 +362,14 @@ static void setup_fifo_xfer(struct spi_transfer *xfer,
        len &= TRANS_LEN_MSK;
 
        mas->cur_xfer = xfer;
-       if (m_cmd & SPI_TX_ONLY) {
+       if (xfer->tx_buf) {
+               m_cmd |= SPI_TX_ONLY;
                mas->tx_rem_bytes = xfer->len;
                writel(len, se->base + SE_SPI_TX_TRANS_LEN);
        }
 
-       if (m_cmd & SPI_RX_ONLY) {
+       if (xfer->rx_buf) {
+               m_cmd |= SPI_RX_ONLY;
                writel(len, se->base + SE_SPI_RX_TRANS_LEN);
                mas->rx_rem_bytes = xfer->len;
        }