]> git.sur5r.net Git - u-boot/commitdiff
spi: sh_spi: Use sh_spi_clear_bit() instead of open-coded
authorAxel Lin <axel.lin@ingics.com>
Fri, 27 Dec 2013 05:51:55 +0000 (13:51 +0800)
committerJagannadha Sutradharudu Teki <jaganna@xilinx.com>
Sat, 11 Jan 2014 06:51:31 +0000 (12:21 +0530)
We have a sh_spi_clear_bit() function, there's no reason not to use it.

Signed-off-by: Axel Lin <axel.lin@ingics.com>
Acked-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
Reviewed-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
drivers/spi/sh_spi.c

index 744afe3295aebeca01ad9e1921ce387c0c823dbb..7ca5e363da707ae5fe63dc421e0811c11b41ef77 100644 (file)
@@ -151,7 +151,6 @@ static int sh_spi_send(struct sh_spi *ss, const unsigned char *tx_data,
 {
        int i, cur_len, ret = 0;
        int remain = (int)len;
-       unsigned long tmp;
 
        if (len >= SH_SPI_FIFO_SIZE)
                sh_spi_set_bit(SH_SPI_SSA, &ss->regs->cr1);
@@ -183,9 +182,7 @@ static int sh_spi_send(struct sh_spi *ss, const unsigned char *tx_data,
        }
 
        if (flags & SPI_XFER_END) {
-               tmp = sh_spi_read(&ss->regs->cr1);
-               tmp = tmp & ~(SH_SPI_SSD | SH_SPI_SSDB);
-               sh_spi_write(tmp, &ss->regs->cr1);
+               sh_spi_clear_bit(SH_SPI_SSD | SH_SPI_SSDB, &ss->regs->cr1);
                sh_spi_set_bit(SH_SPI_SSA, &ss->regs->cr1);
                udelay(100);
                write_fifo_empty_wait(ss);
@@ -198,16 +195,13 @@ static int sh_spi_receive(struct sh_spi *ss, unsigned char *rx_data,
                          unsigned int len, unsigned long flags)
 {
        int i;
-       unsigned long tmp;
 
        if (len > SH_SPI_MAX_BYTE)
                sh_spi_write(SH_SPI_MAX_BYTE, &ss->regs->cr3);
        else
                sh_spi_write(len, &ss->regs->cr3);
 
-       tmp = sh_spi_read(&ss->regs->cr1);
-       tmp = tmp & ~(SH_SPI_SSD | SH_SPI_SSDB);
-       sh_spi_write(tmp, &ss->regs->cr1);
+       sh_spi_clear_bit(SH_SPI_SSD | SH_SPI_SSDB, &ss->regs->cr1);
        sh_spi_set_bit(SH_SPI_SSA, &ss->regs->cr1);
 
        for (i = 0; i < len; i++) {