summaryrefslogtreecommitdiffstats
path: root/drivers/spi/spi-rockchip.c
diff options
context:
space:
mode:
authorEmil Renner Berthing <kernel@esmil.dk>2018-10-31 06:57:00 -0400
committerMark Brown <broonie@kernel.org>2018-11-05 06:41:58 -0500
commit2410d6a3c3070e205169a1a741aa78898e30a642 (patch)
tree3a5cb17da7d033f7a3b05b99e9ba9a3bec89031b /drivers/spi/spi-rockchip.c
parent31bcb57be12fd815a9051f07d64334809b8cb472 (diff)
spi: rockchip: always use SPI mode
The hardware supports 3 different variants of SPI and there were some code around it, but nothing to actually set it to anything but "Motorola SPI". Just drop that code and always use that mode. Signed-off-by: Emil Renner Berthing <kernel@esmil.dk> Tested-by: Heiko Stuebner <heiko@sntech.de> Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'drivers/spi/spi-rockchip.c')
-rw-r--r--drivers/spi/spi-rockchip.c17
1 files changed, 4 insertions, 13 deletions
diff --git a/drivers/spi/spi-rockchip.c b/drivers/spi/spi-rockchip.c
index 87d1b9837d94..7fac4253075e 100644
--- a/drivers/spi/spi-rockchip.c
+++ b/drivers/spi/spi-rockchip.c
@@ -156,12 +156,6 @@
156 156
157#define ROCKCHIP_SPI_MAX_CS_NUM 2 157#define ROCKCHIP_SPI_MAX_CS_NUM 2
158 158
159enum rockchip_ssi_type {
160 SSI_MOTO_SPI = 0,
161 SSI_TI_SSP,
162 SSI_NS_MICROWIRE,
163};
164
165struct rockchip_spi_dma_data { 159struct rockchip_spi_dma_data {
166 struct dma_chan *ch; 160 struct dma_chan *ch;
167 dma_addr_t addr; 161 dma_addr_t addr;
@@ -179,8 +173,6 @@ struct rockchip_spi {
179 u32 fifo_len; 173 u32 fifo_len;
180 /* max bus freq supported */ 174 /* max bus freq supported */
181 u32 max_freq; 175 u32 max_freq;
182 /* supported slave numbers */
183 enum rockchip_ssi_type type;
184 176
185 u16 mode; 177 u16 mode;
186 u8 tmode; 178 u8 tmode;
@@ -525,14 +517,14 @@ static void rockchip_spi_config(struct rockchip_spi *rs)
525 u32 dmacr = 0; 517 u32 dmacr = 0;
526 int rsd = 0; 518 int rsd = 0;
527 519
528 u32 cr0 = (CR0_BHT_8BIT << CR0_BHT_OFFSET) 520 u32 cr0 = CR0_FRF_SPI << CR0_FRF_OFFSET
529 | (CR0_SSD_ONE << CR0_SSD_OFFSET) 521 | CR0_BHT_8BIT << CR0_BHT_OFFSET
530 | (CR0_EM_BIG << CR0_EM_OFFSET); 522 | CR0_SSD_ONE << CR0_SSD_OFFSET
523 | CR0_EM_BIG << CR0_EM_OFFSET;
531 524
532 cr0 |= (rs->n_bytes << CR0_DFS_OFFSET); 525 cr0 |= (rs->n_bytes << CR0_DFS_OFFSET);
533 cr0 |= ((rs->mode & 0x3) << CR0_SCPH_OFFSET); 526 cr0 |= ((rs->mode & 0x3) << CR0_SCPH_OFFSET);
534 cr0 |= (rs->tmode << CR0_XFM_OFFSET); 527 cr0 |= (rs->tmode << CR0_XFM_OFFSET);
535 cr0 |= (rs->type << CR0_FRF_OFFSET);
536 528
537 if (rs->use_dma) { 529 if (rs->use_dma) {
538 if (rs->tx) 530 if (rs->tx)
@@ -709,7 +701,6 @@ static int rockchip_spi_probe(struct platform_device *pdev)
709 701
710 spi_enable_chip(rs, false); 702 spi_enable_chip(rs, false);
711 703
712 rs->type = SSI_MOTO_SPI;
713 rs->master = master; 704 rs->master = master;
714 rs->dev = &pdev->dev; 705 rs->dev = &pdev->dev;
715 rs->max_freq = clk_get_rate(rs->spiclk); 706 rs->max_freq = clk_get_rate(rs->spiclk);