[PATCH 004/182] gpio: generic: factor into gpio_chip struct
Lee Jones
lee.jones at linaro.org
Thu Dec 10 00:06:32 PST 2015
On Wed, 09 Dec 2015, Linus Walleij wrote:
> The separate struct bgpio_chip has been a pain to handle, both
> by being confusingly similar in name to struct gpio_chip and
> for being contained inside a struct so that struct gpio_chip
> is contained in a struct contained in a struct, making several
> steps of dereferencing necessary.
>
> Make things simpler: include the fields directly into
> <linux/gpio/driver.h>, #ifdef:ed for CONFIG_GENERIC_GPIO, and
> get rid of the <linux/basic_mmio_gpio.h> altogether. Prefix
> some of the member variables with bgpio_* and add proper
> kerneldoc while we're at it.
>
> Modify all users to handle the change and use a struct
> gpio_chip directly. And while we're at it: replace all
> container_of() dereferencing by gpiochip_get_data() and
> registering the gpio_chip with gpiochip_add_data().
>
> Cc: arm at kernel.org
> Cc: Lee Jones <lee.jones at linaro.org>
> Cc: Alexander Shiyan <shc_work at mail.ru>
> Cc: Shawn Guo <shawnguo at kernel.org>
> Cc: Sascha Hauer <kernel at pengutronix.de>
> Cc: Tony Lindgren <tony at atomide.com>
> Cc: Kukjin Kim <kgene at kernel.org>
> Cc: Krzysztof Kozlowski <k.kozlowski at samsung.com>
> Cc: Alexandre Courbot <gnurou at gmail.com>
> Cc: Gregory Fong <gregory.0xf0 at gmail.com>
> Cc: Brian Norris <computersforpeace at gmail.com>
> Cc: Florian Fainelli <f.fainelli at gmail.com>
> Cc: Liviu Dudau <liviu.dudau at arm.com>
> Cc: Sudeep Holla <sudeep.holla at arm.com>
> Cc: Lorenzo Pieralisi <lorenzo.pieralisi at arm.com>
> Cc: Nicolas Pitre <nicolas.pitre at linaro.org>
> Cc: Olof Johansson <olof at lixom.net>
> Cc: Vladimir Zapolskiy <vladimir_zapolskiy at mentor.com>
> Cc: Rabin Vincent <rabin at rab.in>
> Cc: linux-arm-kernel at lists.infradead.org
> Cc: linux-omap at vger.kernel.org
> Cc: linux-samsung-soc at vger.kernel.org
> Cc: bcm-kernel-feedback-list at broadcom.com
> Signed-off-by: Linus Walleij <linus.walleij at linaro.org>
> ---
> ARM SoC folks and Lee: it would be great if you could
> ACK the few lines hitting arch/arm/* and drivers/mfd/* in this
> so I can take it through the GPIO tree.
> ---
> arch/arm/mach-clps711x/board-autcpu12.c | 2 +-
> arch/arm/mach-clps711x/board-p720t.c | 2 +-
> arch/arm/mach-imx/mach-mx21ads.c | 2 +-
> arch/arm/mach-omap1/board-ams-delta.c | 2 +-
> arch/arm/mach-s3c64xx/mach-crag6410.c | 2 +-
> drivers/gpio/gpio-74xx-mmio.c | 37 ++--
> drivers/gpio/gpio-brcmstb.c | 80 ++++-----
> drivers/gpio/gpio-clps711x.c | 28 +--
> drivers/gpio/gpio-dwapb.c | 92 +++++-----
> drivers/gpio/gpio-ep93xx.c | 25 +--
> drivers/gpio/gpio-etraxfs.c | 49 +++---
> drivers/gpio/gpio-ge.c | 24 +--
> drivers/gpio/gpio-generic.c | 292 +++++++++++++++-----------------
> drivers/gpio/gpio-grgpio.c | 73 ++++----
> drivers/gpio/gpio-moxart.c | 29 ++--
> drivers/gpio/gpio-mxc.c | 27 ++-
> drivers/gpio/gpio-mxs.c | 33 ++--
> drivers/gpio/gpio-sodaville.c | 13 +-
> drivers/gpio/gpio-xgene-sb.c | 40 ++---
> drivers/mfd/vexpress-sysreg.c | 8 +-
Acked-by: Lee Jones <lee.jones at linaro.org>
> include/linux/basic_mmio_gpio.h | 80 ---------
> include/linux/gpio/driver.h | 54 ++++++
> 22 files changed, 442 insertions(+), 552 deletions(-)
> delete mode 100644 include/linux/basic_mmio_gpio.h
[...]
--
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog
More information about the linux-arm-kernel
mailing list