• Light Hsieh's avatar
    pinctrl: mediatek: Backward compatible to previous Mediatek's bias-pull usage · cafe19db
    Light Hsieh authored
    Refine mtk_pinconf_set()/mtk_pinconf_get() for backward compatibility to
    previous MediaTek's bias-pull usage.
    In PINCTRL_MTK that use pinctrl-mtk-common.c, bias-pull setting for pins
    with 2 pull resistors can be specified as value for bias-pull-up and
    bias-pull-down. For example:
        bias-pull-up = <MTK_PUPD_SET_R1R0_00>;
        bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
        bias-pull-up = <MTK_PUPD_SET_R1R0_10>;
        bias-pull-up = <MTK_PUPD_SET_R1R0_11>;
        bias-pull-down = <MTK_PUPD_SET_R1R0_00>;
        bias-pull-down = <MTK_PUPD_SET_R1R0_01>;
        bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
        bias-pull-down = <MTK_PUPD_SET_R1R0_11>;
    
    On the other hand, PINCTRL_MTK_PARIS use customized properties
    "mediatek,pull-up-adv" and "mediatek,pull-down-adv" to specify bias-pull
    setting for pins with 2 pull resistors.
    This introduce in-compatibility in device tree and increase porting
    effort to MediaTek's customer that had already used PINCTRL_MTK version.
    Besides, if customers are not aware of this change and still write devicetree
    for PINCTRL_MTK version, they may encounter runtime failure with pinctrl and
    spent time to debug.
    
    This patch adds backward compatible to previous MediaTek's bias-pull usage
    so that Mediatek's customer need not use a new devicetree property name.
    The rationale is that: changing driver implementation had better leave
    interface unchanged.
    Signed-off-by: default avatarLight Hsieh <light.hsieh@mediatek.com>
    Link: https://lore.kernel.org/r/1579675994-7001-5-git-send-email-light.hsieh@mediatek.comAcked-by: default avatarSean Wang <sean.wang@kernel.org>
    Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
    cafe19db
pinctrl-mtk-common-v2.c 20.6 KB