Since commit 543bb25 "spi: add ability to validate xfer->bits_per_word in SPI
core", the driver can set bits_per_word_mask for the master then the SPI core
will reject transfers that attempt to use an unsupported bits_per_word value.
So we can remove the bits_per_word checking in sc18is602_check_transfer() and
let SPI core handle the checking.

Signed-off-by: Axel Lin <[email protected]>
---
 drivers/spi/spi-sc18is602.c | 8 +-------
 1 file changed, 1 insertion(+), 7 deletions(-)

diff --git a/drivers/spi/spi-sc18is602.c b/drivers/spi/spi-sc18is602.c
index c1a01d1..c981d21 100644
--- a/drivers/spi/spi-sc18is602.c
+++ b/drivers/spi/spi-sc18is602.c
@@ -183,18 +183,11 @@ static int sc18is602_setup_transfer(struct sc18is602 *hw, 
u32 hz, u8 mode)
 static int sc18is602_check_transfer(struct spi_device *spi,
                                    struct spi_transfer *t, int tlen)
 {
-       int bpw;
        uint32_t hz;
 
        if (t && t->len + tlen > SC18IS602_BUFSIZ)
                return -EINVAL;
 
-       bpw = spi->bits_per_word;
-       if (t && t->bits_per_word)
-               bpw = t->bits_per_word;
-       if (bpw != 8)
-               return -EINVAL;
-
        hz = spi->max_speed_hz;
        if (t && t->speed_hz)
                hz = t->speed_hz;
@@ -315,6 +308,7 @@ static int sc18is602_probe(struct i2c_client *client,
        }
        master->bus_num = client->adapter->nr;
        master->mode_bits = SPI_CPHA | SPI_CPOL | SPI_LSB_FIRST;
+       master->bits_per_word_mask = SPI_BPW_MASK(8);
        master->setup = sc18is602_setup;
        master->transfer_one_message = sc18is602_transfer_one;
        master->dev.of_node = np;
-- 
1.8.1.2



--
To unsubscribe from this list: send the line "unsubscribe linux-spi" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to