]> git.baikalelectronics.ru Git - kernel.git/commit
pinctrl: aspeed: Split out pinmux from general pinctrl
authorAndrew Jeffery <andrew@aj.id.au>
Fri, 28 Jun 2019 02:38:37 +0000 (12:08 +0930)
committerLinus Walleij <linus.walleij@linaro.org>
Wed, 3 Jul 2019 08:38:03 +0000 (10:38 +0200)
commitefa5623981b72f6b5f95933d1c36ed2518c2ee4e
tree269f167f4a8b5aa2d29027506455b4bb3e98c21b
parentd0d88b5c9ed7cdc8f7d49b153d4ddc1bf1d8eb99
pinctrl: aspeed: Split out pinmux from general pinctrl

ASPEED have completely rearranged the System Control Unit register
layout with the AST2600. The existing code took advantage of the fact
that the AST2400 and AST2500 had layouts that were similar enough to
have little impact on the pinmux infrastructure (though there is a wart
with read-modify-write vs write-1-clear semantics of the hardware
strapping registers between the two).

Given that any similarity has been thrown out with the AST2600, separate
out the function applying an expression state to be driver-specific.
With it, extract out the pinmux macro jungle to its own header and
implementation so the pieces can be composed without dependency cycles.

Cc: Johnny Huang <johnny_huang@aspeedtech.com>
Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
Link: https://lore.kernel.org/r/20190628023838.15426-8-andrew@aj.id.au
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
drivers/pinctrl/aspeed/Makefile
drivers/pinctrl/aspeed/pinctrl-aspeed-g4.c
drivers/pinctrl/aspeed/pinctrl-aspeed-g5.c
drivers/pinctrl/aspeed/pinctrl-aspeed.c
drivers/pinctrl/aspeed/pinctrl-aspeed.h
drivers/pinctrl/aspeed/pinmux-aspeed.c [new file with mode: 0644]
drivers/pinctrl/aspeed/pinmux-aspeed.h [new file with mode: 0644]