spi: rspi: Clean up Bit Rate Division Setting handling
authorGeert Uytterhoeven <geert+renesas@glider.be>
Wed, 19 Aug 2020 12:58:59 +0000 (14:58 +0200)
committerMark Brown <broonie@kernel.org>
Thu, 20 Aug 2020 21:38:12 +0000 (22:38 +0100)
Add a macro for configuring the Bit Rate Division Setting field in
Command Registers, instead of open-coding the same operation using a
hardcoded shift.
Rename "div" to "brdv", as it is not a plain divider value, but controls
a power-of-two divider.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/20200819125904.20938-3-geert+renesas@glider.be
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/spi/spi-rspi.c

index 1b635d6..450a42e 100644 (file)
 #define SPCMD_SPRW             0x0010  /* SPI Read/Write Access (Dual/Quad) */
 #define SPCMD_SSLA(i)          ((i) << 4)      /* SSL Assert Signal Setting */
 #define SPCMD_BRDV_MASK                0x000c  /* Bit Rate Division Setting */
+#define SPCMD_BRDV(brdv)       ((brdv) << 2)
 #define SPCMD_CPOL             0x0002  /* Clock Polarity Setting */
 #define SPCMD_CPHA             0x0001  /* Clock Phase Setting */
 
@@ -290,24 +291,24 @@ static int rspi_set_config_register(struct rspi_data *rspi, int access_size)
 static int rspi_rz_set_config_register(struct rspi_data *rspi, int access_size)
 {
        int spbr;
-       int div = 0;
+       int brdv = 0;
        unsigned long clksrc;
 
        /* Sets output mode, MOSI signal, and (optionally) loopback */
        rspi_write8(rspi, rspi->sppcr, RSPI_SPPCR);
 
        clksrc = clk_get_rate(rspi->clk);
-       while (div < 3) {
+       while (brdv < 3) {
                if (rspi->speed_hz >= clksrc/4) /* 4=(CLK/2)/2 */
                        break;
-               div++;
+               brdv++;
                clksrc /= 2;
        }
 
        /* Sets transfer bit rate */
        spbr = DIV_ROUND_UP(clksrc, 2 * rspi->speed_hz) - 1;
        rspi_write8(rspi, clamp(spbr, 0, 255), RSPI_SPBR);
-       rspi->spcmd |= div << 2;
+       rspi->spcmd |= SPCMD_BRDV(brdv);
 
        /* Disable dummy transmission, set byte access */
        rspi_write8(rspi, SPDCR_SPLBYTE, RSPI_SPDCR);