From: Linus Walleij <linus.wall...@linaro.org> This is the sixth iteration of the controller subsystem, most changes are described in the first patch, copied here for reference:
ChangeLog v5->v6: - Create an abstract pin group concept that can sort pins into named and enumerated groups no matter what the use of these groups may be, one possible usecase is a group of pins being muxed in or so. The intention is however to also use these groups for other pin control activities. - Make it compulsory for pinmux functions to associate with at least one group, so the abstract pin group concept is used to define the groups of pins affected by a pinmux function. The pinmux driver interface has been altered so as to enforce a function to list applicable groups per function. - Provide an optional .group entry in the pinmux machine map so the map can select beteween different available groups to be used with a certain function. - Consequent changes all over the place so that e.g. debugfs present reasonable information about the world. - Drop the per-pin mux (*config) function in the pinmux_ops struct - I was afraid that this would start to be used for things totally unrelated to muxing, we can introduce that to the generic struct pinctrl_ops if needed. I want to keep muxing orthogonal to other pin control subjects and not mix these things up. Linus Walleij (4): drivers: create a pin control subsystem v6 pinmux: add a driver for the U300 pinmux amba: request muxing for PrimeCell devices mach-u300: activate pinmux driver, delete old padmux driver Documentation/ABI/testing/sysfs-class-pinmux | 11 + Documentation/pinctrl.txt | 876 ++++++++++++++++++++++++ MAINTAINERS | 5 + arch/arm/mach-u300/Kconfig | 2 + arch/arm/mach-u300/Makefile | 2 +- arch/arm/mach-u300/core.c | 38 +- arch/arm/mach-u300/include/mach/syscon.h | 136 ---- arch/arm/mach-u300/mmc.c | 16 - arch/arm/mach-u300/padmux.c | 367 ---------- arch/arm/mach-u300/padmux.h | 39 -- arch/arm/mach-u300/regulator.c | 16 + arch/arm/mach-u300/spi.c | 20 - drivers/Kconfig | 4 + drivers/Makefile | 2 + drivers/amba/bus.c | 49 ++- drivers/pinctrl/Kconfig | 36 + drivers/pinctrl/Makefile | 7 + drivers/pinctrl/core.c | 599 +++++++++++++++++ drivers/pinctrl/core.h | 24 + drivers/pinctrl/pinmux-u300.c | 931 ++++++++++++++++++++++++++ drivers/pinctrl/pinmux-u300.h | 141 ++++ drivers/pinctrl/pinmux.c | 822 +++++++++++++++++++++++ drivers/pinctrl/pinmux.h | 4 + include/linux/amba/bus.h | 2 + include/linux/pinctrl/machine.h | 73 ++ include/linux/pinctrl/pinctrl.h | 172 +++++ include/linux/pinctrl/pinmux.h | 124 ++++ 27 files changed, 3935 insertions(+), 583 deletions(-) create mode 100644 Documentation/ABI/testing/sysfs-class-pinmux create mode 100644 Documentation/pinctrl.txt delete mode 100644 arch/arm/mach-u300/padmux.c delete mode 100644 arch/arm/mach-u300/padmux.h create mode 100644 drivers/pinctrl/Kconfig create mode 100644 drivers/pinctrl/Makefile create mode 100644 drivers/pinctrl/core.c create mode 100644 drivers/pinctrl/core.h create mode 100644 drivers/pinctrl/pinmux-u300.c create mode 100644 drivers/pinctrl/pinmux-u300.h create mode 100644 drivers/pinctrl/pinmux.c create mode 100644 drivers/pinctrl/pinmux.h create mode 100644 include/linux/pinctrl/machine.h create mode 100644 include/linux/pinctrl/pinctrl.h create mode 100644 include/linux/pinctrl/pinmux.h -- 1.7.3.2 _______________________________________________ linaro-dev mailing list linaro-dev@lists.linaro.org http://lists.linaro.org/mailman/listinfo/linaro-dev