]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/commit - drivers/pinctrl/mediatek/pinctrl-mtk-common.c
pinctrl: mediatek: Fix multiple registration issue.
authorHongzhou Yang <hongzhou.yang@mediatek.com>
Wed, 26 Aug 2015 00:32:45 +0000 (17:32 -0700)
committerLinus Walleij <linus.walleij@linaro.org>
Wed, 26 Aug 2015 12:37:44 +0000 (14:37 +0200)
commitd48c2c02645392483f2b88b050d21ce1db6997b3
tree2d8066941940c7ebbe422ecb434df8d04af5f6d5
parent580a7ee93317b901358f497c2de34f7a66066963
pinctrl: mediatek: Fix multiple registration issue.

Since our common driver need support main chip and PMU
at the same time, that means it will register two
pinctrl device, and the pinctrl_desc structure should
be used two times.

But pinctrl_desc use global static definition, then
the latest registered pinctrl device will overwrite
the old one's, all members in pinctrl_desc will set to
the new one's, such as name, pins and pins numbers, etc.
This is a bug.

Move pinctrl_desc into mtk_pinctrl, assign new value for
each pinctrl device to fix it.

Cc: stable@vger.kernel.org # v4.1+
Signed-off-by: Hongzhou Yang <hongzhou.yang@mediatek.com>
Reviewed-by: Axel Lin <axel.lin@ingics.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
drivers/pinctrl/mediatek/pinctrl-mtk-common.c
drivers/pinctrl/mediatek/pinctrl-mtk-common.h