mirror of https://gitee.com/openkylin/linux.git
58383c7842
The name .dev in a struct is normally reserved for a struct device that is let us say a superclass to the thing described by the struct. struct gpio_chip stands out by confusingly using a struct device *dev to point to the parent device (such as a platform_device) that represents the hardware. As we want to give gpio_chip:s real devices, this is not working. We need to rename this member to parent. This was done by two coccinelle scripts, I guess it is possible to combine them into one, but I don't know such stuff. They look like this: @@ struct gpio_chip *var; @@ -var->dev +var->parent and: @@ struct gpio_chip var; @@ -var.dev +var.parent and: @@ struct bgpio_chip *var; @@ -var->gc.dev +var->gc.parent Plus a few instances of bgpio that I couldn't figure out how to teach Coccinelle to rewrite. This patch hits all over the place, but I *strongly* prefer this solution to any piecemal approaches that just exercise patch mechanics all over the place. It mainly hits drivers/gpio and drivers/pinctrl which is my own backyard anyway. Cc: Haavard Skinnemoen <hskinnemoen@gmail.com> Cc: Rafał Miłecki <zajec5@gmail.com> Cc: Richard Purdie <rpurdie@rpsys.net> Cc: Mauro Carvalho Chehab <mchehab@osg.samsung.com> Cc: Alek Du <alek.du@intel.com> Cc: Jaroslav Kysela <perex@perex.cz> Cc: Takashi Iwai <tiwai@suse.com> Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Acked-by: Lee Jones <lee.jones@linaro.org> Acked-by: Jiri Kosina <jkosina@suse.cz> Acked-by: Hans-Christian Egtvedt <egtvedt@samfundet.no> Acked-by: Jacek Anaszewski <j.anaszewski@samsung.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org> |
||
---|---|---|
.. | ||
bcm | ||
berlin | ||
freescale | ||
intel | ||
mediatek | ||
meson | ||
mvebu | ||
nomadik | ||
qcom | ||
samsung | ||
sh-pfc | ||
sirf | ||
spear | ||
sunxi | ||
uniphier | ||
vt8500 | ||
Kconfig | ||
Makefile | ||
core.c | ||
core.h | ||
devicetree.c | ||
devicetree.h | ||
pinconf-generic.c | ||
pinconf.c | ||
pinconf.h | ||
pinctrl-adi2-bf54x.c | ||
pinctrl-adi2-bf60x.c | ||
pinctrl-adi2.c | ||
pinctrl-adi2.h | ||
pinctrl-amd.c | ||
pinctrl-amd.h | ||
pinctrl-as3722.c | ||
pinctrl-at91-pio4.c | ||
pinctrl-at91.c | ||
pinctrl-at91.h | ||
pinctrl-coh901.c | ||
pinctrl-coh901.h | ||
pinctrl-digicolor.c | ||
pinctrl-falcon.c | ||
pinctrl-lantiq.c | ||
pinctrl-lantiq.h | ||
pinctrl-lpc18xx.c | ||
pinctrl-palmas.c | ||
pinctrl-pistachio.c | ||
pinctrl-rockchip.c | ||
pinctrl-single.c | ||
pinctrl-st.c | ||
pinctrl-tb10x.c | ||
pinctrl-tegra-xusb.c | ||
pinctrl-tegra.c | ||
pinctrl-tegra.h | ||
pinctrl-tegra20.c | ||
pinctrl-tegra30.c | ||
pinctrl-tegra114.c | ||
pinctrl-tegra124.c | ||
pinctrl-tegra210.c | ||
pinctrl-tz1090-pdc.c | ||
pinctrl-tz1090.c | ||
pinctrl-u300.c | ||
pinctrl-utils.c | ||
pinctrl-utils.h | ||
pinctrl-xway.c | ||
pinctrl-zynq.c | ||
pinmux.c | ||
pinmux.h |