[PATCH 3/8] gpio: 74x164: Remove platform data and use dynamic gpio number assignment
Florian Fainelli
florian at openwrt.org
Wed Sep 5 04:48:14 EDT 2012
On Wednesday 05 September 2012 10:40:52 Maxime Ripard wrote:
> Signed-off-by: Maxime Ripard <maxime.ripard at free-electrons.com>
No, please don't do it that way, rather check if the platform_data pointer is
null, and if it is, fall-back to dynamic gpio base assignment. There is a
currently out of tree user of this for which it matters to be able to set a
specific gpio base numbering.
> ---
> drivers/gpio/gpio-74x164.c | 10 +---------
> include/linux/spi/74x164.h | 9 ---------
> 2 files changed, 1 insertion(+), 18 deletions(-)
> delete mode 100644 include/linux/spi/74x164.h
>
> diff --git a/drivers/gpio/gpio-74x164.c b/drivers/gpio/gpio-74x164.c
> index 604b998..24cfe4c 100644
> --- a/drivers/gpio/gpio-74x164.c
> +++ b/drivers/gpio/gpio-74x164.c
> @@ -12,7 +12,6 @@
> #include <linux/init.h>
> #include <linux/mutex.h>
> #include <linux/spi/spi.h>
> -#include <linux/spi/74x164.h>
> #include <linux/gpio.h>
> #include <linux/slab.h>
> #include <linux/module.h>
> @@ -72,15 +71,8 @@ static int gen_74x164_direction_output(struct gpio_chip
*gc,
> static int __devinit gen_74x164_probe(struct spi_device *spi)
> {
> struct gen_74x164_chip *chip;
> - struct gen_74x164_chip_platform_data *pdata;
> int ret;
>
> - pdata = spi->dev.platform_data;
> - if (!pdata || !pdata->base) {
> - dev_dbg(&spi->dev, "incorrect or missing platform data\n");
> - return -EINVAL;
> - }
> -
> /*
> * bits_per_word cannot be configured in platform data
> */
> @@ -104,7 +96,7 @@ static int __devinit gen_74x164_probe(struct spi_device
*spi)
> chip->gpio_chip.direction_output = gen_74x164_direction_output;
> chip->gpio_chip.get = gen_74x164_get_value;
> chip->gpio_chip.set = gen_74x164_set_value;
> - chip->gpio_chip.base = pdata->base;
> + chip->gpio_chip.base = -1;
> chip->gpio_chip.ngpio = 8;
> chip->gpio_chip.can_sleep = 1;
> chip->gpio_chip.dev = &spi->dev;
> diff --git a/include/linux/spi/74x164.h b/include/linux/spi/74x164.h
> deleted file mode 100644
> index 0aa6acc..0000000
> --- a/include/linux/spi/74x164.h
> +++ /dev/null
> @@ -1,9 +0,0 @@
> -#ifndef LINUX_SPI_74X164_H
> -#define LINUX_SPI_74X164_H
> -
> -struct gen_74x164_chip_platform_data {
> - /* number assigned to the first GPIO */
> - unsigned base;
> -};
> -
> -#endif
> --
> 1.7.9.5
>
>
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
More information about the linux-arm-kernel
mailing list