spi: sh-msiof: Remove sh_msiof_spi_priv.chipdata
authorGeert Uytterhoeven <geert+renesas@glider.be>
Wed, 22 Jun 2016 12:50:03 +0000 (14:50 +0200)
committerMark Brown <broonie@kernel.org>
Wed, 22 Jun 2016 13:14:38 +0000 (14:14 +0100)
After probe time, the pointer to the sh_msiof_chipdata structure in the
sh_msiof_spi_priv structure is used only for checking the SPI master flags.
As these are also available in the spi_master structure, convert the
users to access those, and remove the pointer.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/spi/spi-sh-msiof.c

index a7934ab00b96505f3753fa38266238f3abcc6f64..0f83ad1d5a5858dd6ff808773fe359479a54b796 100644 (file)
@@ -45,7 +45,6 @@ struct sh_msiof_spi_priv {
        void __iomem *mapbase;
        struct clk *clk;
        struct platform_device *pdev;
-       const struct sh_msiof_chipdata *chipdata;
        struct sh_msiof_spi_info *info;
        struct completion done;
        unsigned int tx_fifo_size;
@@ -271,7 +270,7 @@ static void sh_msiof_spi_set_clk_regs(struct sh_msiof_spi_priv *p,
 
        scr = sh_msiof_spi_div_table[k].brdv | SCR_BRPS(brps);
        sh_msiof_write(p, TSCR, scr);
-       if (!(p->chipdata->master_flags & SPI_MASTER_MUST_TX))
+       if (!(p->master->flags & SPI_MASTER_MUST_TX))
                sh_msiof_write(p, RSCR, scr);
 }
 
@@ -336,7 +335,7 @@ static void sh_msiof_spi_set_pin_regs(struct sh_msiof_spi_priv *p,
        tmp |= lsb_first << MDR1_BITLSB_SHIFT;
        tmp |= sh_msiof_spi_get_dtdl_and_syncdl(p);
        sh_msiof_write(p, TMDR1, tmp | MDR1_TRMD | TMDR1_PCON);
-       if (p->chipdata->master_flags & SPI_MASTER_MUST_TX) {
+       if (p->master->flags & SPI_MASTER_MUST_TX) {
                /* These bits are reserved if RX needs TX */
                tmp &= ~0x0000ffff;
        }
@@ -360,7 +359,7 @@ static void sh_msiof_spi_set_mode_regs(struct sh_msiof_spi_priv *p,
 {
        u32 dr2 = MDR2_BITLEN1(bits) | MDR2_WDLEN1(words);
 
-       if (tx_buf || (p->chipdata->master_flags & SPI_MASTER_MUST_TX))
+       if (tx_buf || (p->master->flags & SPI_MASTER_MUST_TX))
                sh_msiof_write(p, TMDR2, dr2);
        else
                sh_msiof_write(p, TMDR2, dr2 | MDR2_GRPMASK1);
@@ -1152,6 +1151,7 @@ static int sh_msiof_spi_probe(struct platform_device *pdev)
 {
        struct resource *r;
        struct spi_master *master;
+       const struct sh_msiof_chipdata *chipdata;
        const struct of_device_id *of_id;
        struct sh_msiof_spi_priv *p;
        int i;
@@ -1170,10 +1170,10 @@ static int sh_msiof_spi_probe(struct platform_device *pdev)
 
        of_id = of_match_device(sh_msiof_match, &pdev->dev);
        if (of_id) {
-               p->chipdata = of_id->data;
+               chipdata = of_id->data;
                p->info = sh_msiof_spi_parse_dt(&pdev->dev);
        } else {
-               p->chipdata = (const void *)pdev->id_entry->driver_data;
+               chipdata = (const void *)pdev->id_entry->driver_data;
                p->info = dev_get_platdata(&pdev->dev);
        }
 
@@ -1217,8 +1217,8 @@ static int sh_msiof_spi_probe(struct platform_device *pdev)
        pm_runtime_enable(&pdev->dev);
 
        /* Platform data may override FIFO sizes */
-       p->tx_fifo_size = p->chipdata->tx_fifo_size;
-       p->rx_fifo_size = p->chipdata->rx_fifo_size;
+       p->tx_fifo_size = chipdata->tx_fifo_size;
+       p->rx_fifo_size = chipdata->rx_fifo_size;
        if (p->info->tx_fifo_override)
                p->tx_fifo_size = p->info->tx_fifo_override;
        if (p->info->rx_fifo_override)
@@ -1227,7 +1227,7 @@ static int sh_msiof_spi_probe(struct platform_device *pdev)
        /* init master code */
        master->mode_bits = SPI_CPOL | SPI_CPHA | SPI_CS_HIGH;
        master->mode_bits |= SPI_LSB_FIRST | SPI_3WIRE;
-       master->flags = p->chipdata->master_flags;
+       master->flags = chipdata->master_flags;
        master->bus_num = pdev->id;
        master->dev.of_node = pdev->dev.of_node;
        master->num_chipselect = p->info->num_chipselect;