From 2c2acee8f8b5b42acbf50679d0b4f7b2e6cfb445 Mon Sep 17 00:00:00 2001 From: Yi Liu Date: Thu, 27 Sep 2018 11:30:18 +0800 Subject: [PATCH] spi: rockchip: support to set lsb into ROCKCHIP_SPI_CTRLR0 Change-Id: I55421b4685c88fe55c928ac7d102abb7d39e902f Signed-off-by: Yi Liu Signed-off-by: Yifeng Zhao --- drivers/spi/spi-rockchip.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/spi/spi-rockchip.c b/drivers/spi/spi-rockchip.c index c7761c6e14d9..dcf72233ca51 100644 --- a/drivers/spi/spi-rockchip.c +++ b/drivers/spi/spi-rockchip.c @@ -534,6 +534,8 @@ static void rockchip_spi_config(struct rockchip_spi *rs) cr0 |= (rs->n_bytes << CR0_DFS_OFFSET); cr0 |= ((rs->mode & 0x3) << CR0_SCPH_OFFSET); + if (rs->mode & SPI_LSB_FIRST) + cr0 |= (1 << CR0_FBM_OFFSET);/* First Bit Mode */ cr0 |= (rs->tmode << CR0_XFM_OFFSET); cr0 |= (rs->type << CR0_FRF_OFFSET); @@ -763,7 +765,7 @@ static int rockchip_spi_probe(struct platform_device *pdev) master->auto_runtime_pm = true; master->bus_num = pdev->id; - master->mode_bits = SPI_CPOL | SPI_CPHA | SPI_LOOP; + master->mode_bits = SPI_CPOL | SPI_CPHA | SPI_LOOP | SPI_LSB_FIRST; master->num_chipselect = ROCKCHIP_SPI_MAX_CS_NUM; master->dev.of_node = pdev->dev.of_node; master->bits_per_word_mask = SPI_BPW_MASK(16) | SPI_BPW_MASK(8);