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@xxxxxxxxxx > Cc: Lee Jones <lee.jones@xxxxxxxxxx> > Cc: Alexander Shiyan <shc_work@xxxxxxx> > Cc: Shawn Guo <shawnguo@xxxxxxxxxx> > Cc: Sascha Hauer <kernel@xxxxxxxxxxxxxx> > Cc: Tony Lindgren <tony@xxxxxxxxxxx> > Cc: Kukjin Kim <kgene@xxxxxxxxxx> > Cc: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx> > Cc: Alexandre Courbot <gnurou@xxxxxxxxx> > Cc: Gregory Fong <gregory.0xf0@xxxxxxxxx> > Cc: Brian Norris <computersforpeace@xxxxxxxxx> > Cc: Florian Fainelli <f.fainelli@xxxxxxxxx> > Cc: Liviu Dudau <liviu.dudau@xxxxxxx> > Cc: Sudeep Holla <sudeep.holla@xxxxxxx> > Cc: Lorenzo Pieralisi <lorenzo.pieralisi@xxxxxxx> > Cc: Nicolas Pitre <nicolas.pitre@xxxxxxxxxx> > Cc: Olof Johansson <olof@xxxxxxxxx> > Cc: Vladimir Zapolskiy <vladimir_zapolskiy@xxxxxxxxxx> > Cc: Rabin Vincent <rabin@xxxxxx> > Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx > Cc: linux-omap@xxxxxxxxxxxxxxx > Cc: linux-samsung-soc@xxxxxxxxxxxxxxx > Cc: bcm-kernel-feedback-list@xxxxxxxxxxxx > Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx> > --- > 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@xxxxxxxxxx> > 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 -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html