[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20130207160821.GA22224@lizard.gateway.2wire.net>
Date: Thu, 7 Feb 2013 08:08:21 -0800
From: Anton Vorontsov <anton@...msg.org>
To: Andreas Larsson <andreas@...sler.com>
Cc: Grant Likely <grant.likely@...retlab.ca>,
Mark Brown <broonie@...nsource.wolfsonmicro.com>,
spi-devel-general@...ts.sourceforge.net,
Mingkai Hu <Mingkai.hu@...escale.com>,
Joakim Tjernlund <Joakim.Tjernlund@...nsmode.se>,
Kumar Gala <galak@...nel.crashing.org>,
Peter Korsgaard <jacmet@...site.dk>,
linux-kernel@...r.kernel.org, software@...sler.com
Subject: Re: [PATCH v2 7/7] spi: spi-fsl-spi: Add support for gpio
chipselects for GRLIB type cores
On Thu, Feb 07, 2013 at 02:12:11PM +0100, Andreas Larsson wrote:
> This relies upon of_spi_register_master to find out which gpios to use.
>
> Signed-off-by: Andreas Larsson <andreas@...sler.com>
> ---
> drivers/spi/spi-fsl-lib.h | 1 +
> drivers/spi/spi-fsl-spi.c | 53 +++++++++++++++++++++++++++++++++++++++-----
> 2 files changed, 48 insertions(+), 6 deletions(-)
Just a couple of minor nits...
> diff --git a/drivers/spi/spi-fsl-lib.h b/drivers/spi/spi-fsl-lib.h
> index d5c788b..52db693 100644
> --- a/drivers/spi/spi-fsl-lib.h
> +++ b/drivers/spi/spi-fsl-lib.h
> @@ -71,6 +71,7 @@ struct mpc8xxx_spi {
>
> #ifdef CONFIG_SPI_FSL_SPI
> int type;
> + int native_chipselects;
> u8 max_bits_per_word;
>
> void (*set_shifts)(u32 *rx_shift, u32 *tx_shift,
> diff --git a/drivers/spi/spi-fsl-spi.c b/drivers/spi/spi-fsl-spi.c
> index 55652e6..2befe16 100644
> --- a/drivers/spi/spi-fsl-spi.c
> +++ b/drivers/spi/spi-fsl-spi.c
> @@ -418,7 +418,7 @@ static int fsl_spi_setup(struct spi_device *spi)
> {
> struct mpc8xxx_spi *mpc8xxx_spi;
> struct fsl_spi_reg *reg_base;
> - int retval;
> + int retval, desel;
We don't usually place variable declarations on the same line, unless the
variables are closely related.
> u32 hw_mode;
> struct spi_mpc8xxx_cs *cs = spi->controller_state;
>
> @@ -456,12 +456,45 @@ static int fsl_spi_setup(struct spi_device *spi)
> return retval;
> }
>
> + if (mpc8xxx_spi->type == TYPE_GRLIB) {
> + if (gpio_is_valid(spi->cs_gpio)) {
<- You can place the 'int desel;' here, limiting the visibility for it.
> + retval = gpio_request(spi->cs_gpio,
> + dev_name(&spi->dev));
> + if (retval)
> + return retval;
> +
> + desel = !(spi->mode & SPI_CS_HIGH);
> + desel ^= !!(spi->cs_gpio_flags & OF_GPIO_ACTIVE_LOW);
> + retval = gpio_direction_output(spi->cs_gpio, desel);
> + if (retval) {
> + gpio_free(spi->cs_gpio);
> + return retval;
> + }
Thanks,
Anton
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists