pinctrl: rockchip: separate different sub-types more
authorHeiko Stübner <heiko@sntech.de>
Tue, 15 Oct 2013 23:07:20 +0000 (01:07 +0200)
committerLinus Walleij <linus.walleij@linaro.org>
Wed, 16 Oct 2013 13:33:52 +0000 (15:33 +0200)
commita282926d658209ed1acee51a1ccc897ac169fb41
tree6b3427284d79b04f8be6a0b700205931577a1437
parent6d0a4ed2b90a12e1403d3e7d9d8c2cc7fdc301b5
pinctrl: rockchip: separate different sub-types more

Further investigation of the different Rockchip SoCs showed that
the differences especially in the pull settings are quite deep.
As further patches will show, the register layout for the pulls of
the rk3188 is quite strange. Also it is to assume, that later
Rockchip SoCs may introduce even more quirks in this regard, making
it hard to support all of those using the current generic pull_*
variables.

Therefore move the driver to hold the type of controller in an enum
and do the handling according to it in the necessary places. Also
instead of calculating the register in the get and set pull functions
move it to a type-specific callback.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
drivers/pinctrl/pinctrl-rockchip.c