]> git.baikalelectronics.ru Git - kernel.git/commit
pinctrl: amlogic: Make driver independent from two-domain configuration
authorCarlo Caione <carlo@endlessm.com>
Tue, 1 Mar 2016 22:04:34 +0000 (23:04 +0100)
committerLinus Walleij <linus.walleij@linaro.org>
Wed, 9 Mar 2016 06:00:28 +0000 (13:00 +0700)
commit7c9089717a5596685d82c22611476645d63f4a0b
tree99f1a7baf782f0c59fb8d7aa5647b489e99d78e8
parentc3d1ec3fa9a5d75c0be738f73c52ac763a3285bc
pinctrl: amlogic: Make driver independent from two-domain configuration

In the Amlogic Meson8 / Meson8b platforms we have two different buses:
cbus and aobus, corresponding to 2 different power domains (regular and
always-on). On each bus a different set of registers is mapped to manage
muxes, GPIOs and in general to control a clear subset of the pins.

Considering this architecture, having two different pinctrl devices, one
for each bus / power domain, makes much more sense than just having one
single device.

Right now we have one single pin controller driver that uses two
different domains (represented by 'gpio' and 'gpio-ao' sub-nodes in the
DTS) to manage the set of registers on the two buses. This dual-domain
configuration is hardcoded into the driver that strictly requires one
domain for each bus in the same pin controller device.

With this patch we refactor the driver to allow splitting the driver in
two parts. This change is needed to have a proper description of the HW
in the device-tree where we want to introduce aobus and cbus.

Signed-off-by: Carlo Caione <carlo@endlessm.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
drivers/pinctrl/meson/pinctrl-meson.c
drivers/pinctrl/meson/pinctrl-meson.h
drivers/pinctrl/meson/pinctrl-meson8.c
drivers/pinctrl/meson/pinctrl-meson8b.c