[PATCH] ARM: S3C64XX: Tidy up common code in s3c64xx_spi_set_info()

jassi brar jassisinghbrar at gmail.com
Thu Jan 21 01:11:05 EST 2010


On Thu, Jan 21, 2010 at 2:21 PM, Ben Dooks <ben-linux at fluff.org> wrote:
> The s3c64xx_spi_set_info() sets one of two platform data structures depending
> on which controller is being specified. Change to taking a pointer to the
> relevant platform data structure and then having one set of code to place
> the data into the area being pointed to.
>
> Cc: Jassi Brar <jassi.brar at samsung.com>
> Signed-off-by: Ben Dooks <ben-linux at fluff.org>
> ---
>  arch/arm/plat-s3c64xx/dev-spi.c |   15 +++++++++------
>  1 files changed, 9 insertions(+), 6 deletions(-)
>
> diff --git a/arch/arm/plat-s3c64xx/dev-spi.c b/arch/arm/plat-s3c64xx/dev-spi.c
> index 6b6d7af..ca10388 100644
> --- a/arch/arm/plat-s3c64xx/dev-spi.c
> +++ b/arch/arm/plat-s3c64xx/dev-spi.c
> @@ -18,6 +18,7 @@
>  #include <mach/gpio.h>
>
>  #include <plat/spi-clocks.h>
> +
>  #include <plat/s3c64xx-spi.h>
>  #include <plat/gpio-bank-c.h>
>  #include <plat/gpio-cfg.h>
> @@ -154,6 +155,8 @@ EXPORT_SYMBOL(s3c64xx_device_spi1);
>
>  void __init s3c64xx_spi_set_info(int cntrlr, int src_clk_nr, int num_cs)
>  {
> +       struct s3c64xx_spi_info *pd;
> +
>        /* Reject invalid configuration */
>        if (!num_cs || src_clk_nr < 0
>                        || src_clk_nr > S3C64XX_SPI_SRCCLK_48M) {
> @@ -163,18 +166,18 @@ void __init s3c64xx_spi_set_info(int cntrlr, int src_clk_nr, int num_cs)
>
>        switch (cntrlr) {
>        case 0:
> -               s3c64xx_spi0_pdata.num_cs = num_cs;
> -               s3c64xx_spi0_pdata.src_clk_nr = src_clk_nr;
> -               s3c64xx_spi0_pdata.src_clk_name = spi_src_clks[src_clk_nr];
> +               pd = &s3c64xx_spi0_pdata;
>                break;
>        case 1:
> -               s3c64xx_spi1_pdata.num_cs = num_cs;
> -               s3c64xx_spi1_pdata.src_clk_nr = src_clk_nr;
> -               s3c64xx_spi1_pdata.src_clk_name = spi_src_clks[src_clk_nr];
> +               pd = &s3c64xx_spi1_pdata;
>                break;
>        default:
>                printk(KERN_ERR "%s: Invalid SPI controller(%d)\n",
>                                                        __func__, cntrlr);
>                return;
>        }
> +
> +       pd->num_cs = num_cs;
> +       pd->src_clk_nr = src_clk_nr;
> +       pd->src_clk_name = spi_src_clks[src_clk_nr];
>  }
acked-by: Jassi Brar <jassi.brar at samsung.com>



More information about the linux-arm-kernel mailing list