diff options
Diffstat (limited to 'drivers/spi/spi-dw.c')
-rw-r--r-- | drivers/spi/spi-dw.c | 14 |
1 files changed, 2 insertions, 12 deletions
diff --git a/drivers/spi/spi-dw.c b/drivers/spi/spi-dw.c index 749a831f26ce..c769c2a5da16 100644 --- a/drivers/spi/spi-dw.c +++ b/drivers/spi/spi-dw.c @@ -30,7 +30,6 @@ /* Slave spi_dev related */ struct chip_data { - u16 cr0; u8 cs; /* chip select pin */ u8 n_bytes; /* current is a 1/2/4 byte op */ u8 tmode; /* TR/TO/RO/EEPROM */ @@ -291,7 +290,7 @@ static int dw_spi_transfer_one(struct spi_master *master, u16 txlevel = 0; u16 clk_div = 0; u32 speed = 0; - u32 cr0 = 0; + u32 cr0; int ret; dws->dma_mapped = 0; @@ -306,8 +305,6 @@ static int dw_spi_transfer_one(struct spi_master *master, spi_enable_chip(dws, 0); - cr0 = chip->cr0; - /* Handle per transfer options for bpw and speed */ speed = chip->speed_hz; if ((transfer->speed_hz != speed) || !chip->clk_div) { @@ -328,6 +325,7 @@ static int dw_spi_transfer_one(struct spi_master *master, dws->n_bytes = 2; dws->dma_width = 2; } + /* Default SPI mode is SCPOL = 0, SCPH = 0 */ cr0 = (transfer->bits_per_word - 1) | (chip->type << SPI_FRF_OFFSET) | (spi->mode << SPI_MODE_OFFSET) @@ -449,14 +447,6 @@ static int dw_spi_setup(struct spi_device *spi) chip->bits_per_word = spi->bits_per_word; chip->tmode = 0; /* Tx & Rx */ - /* Default SPI mode is SCPOL = 0, SCPH = 0 */ - chip->cr0 = (chip->bits_per_word - 1) - | (chip->type << SPI_FRF_OFFSET) - | (spi->mode << SPI_MODE_OFFSET) - | (chip->tmode << SPI_TMOD_OFFSET); - - if (spi->mode & SPI_LOOP) - chip->cr0 |= 1 << SPI_SRL_OFFSET; if (gpio_is_valid(spi->cs_gpio)) { ret = gpio_direction_output(spi->cs_gpio, |