pinctrl: mediatek: use generic EINT register maps for each SoC
authorSean Wang <sean.wang@mediatek.com>
Sun, 20 May 2018 17:01:50 +0000 (01:01 +0800)
committerLinus Walleij <linus.walleij@linaro.org>
Thu, 24 May 2018 07:39:25 +0000 (09:39 +0200)
So far, EINT on each SoC all used exactly identical register map and thus
it's better that we apply generic register map already supported in EINT
library and stop copy-n-pasting the same data block and filling into its
platform data.

Signed-off-by: Sean Wang <sean.wang@mediatek.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
drivers/pinctrl/mediatek/pinctrl-mt2701.c
drivers/pinctrl/mediatek/pinctrl-mt2712.c
drivers/pinctrl/mediatek/pinctrl-mt8127.c
drivers/pinctrl/mediatek/pinctrl-mt8135.c
drivers/pinctrl/mediatek/pinctrl-mt8173.c
drivers/pinctrl/mediatek/pinctrl-mtk-common.c
drivers/pinctrl/mediatek/pinctrl-mtk-common.h

index e0963c6..db22250 100644 (file)
@@ -538,26 +538,6 @@ static const struct mtk_pinctrl_devdata mt2701_pinctrl_data = {
                .ap_num    = 169,
                .db_cnt    = 16,
        },
-       .eint_regs = {
-               .stat      = 0x000,
-               .ack       = 0x040,
-               .mask      = 0x080,
-               .mask_set  = 0x0c0,
-               .mask_clr  = 0x100,
-               .sens      = 0x140,
-               .sens_set  = 0x180,
-               .sens_clr  = 0x1c0,
-               .soft      = 0x200,
-               .soft_set  = 0x240,
-               .soft_clr  = 0x280,
-               .pol       = 0x300,
-               .pol_set   = 0x340,
-               .pol_clr   = 0x380,
-               .dom_en    = 0x400,
-               .dbnc_ctrl = 0x500,
-               .dbnc_set  = 0x600,
-               .dbnc_clr  = 0x700,
-       },
 };
 
 static int mt2701_pinctrl_probe(struct platform_device *pdev)
index 02aff28..6e2acef 100644 (file)
@@ -583,26 +583,6 @@ static const struct mtk_pinctrl_devdata mt2712_pinctrl_data = {
                .ap_num    = 229,
                .db_cnt    = 40,
        },
-       .eint_regs = {
-               .stat      = 0x000,
-               .ack       = 0x040,
-               .mask      = 0x080,
-               .mask_set  = 0x0c0,
-               .mask_clr  = 0x100,
-               .sens      = 0x140,
-               .sens_set  = 0x180,
-               .sens_clr  = 0x1c0,
-               .soft      = 0x200,
-               .soft_set  = 0x240,
-               .soft_clr  = 0x280,
-               .pol       = 0x300,
-               .pol_set   = 0x340,
-               .pol_clr   = 0x380,
-               .dom_en    = 0x400,
-               .dbnc_ctrl = 0x500,
-               .dbnc_set  = 0x600,
-               .dbnc_clr  = 0x700,
-       },
 };
 
 static int mt2712_pinctrl_probe(struct platform_device *pdev)
index 71f6258..949a235 100644 (file)
@@ -307,26 +307,6 @@ static const struct mtk_pinctrl_devdata mt8127_pinctrl_data = {
                .ap_num    = 143,
                .db_cnt    = 16,
        },
-       .eint_regs = {
-               .stat      = 0x000,
-               .ack       = 0x040,
-               .mask      = 0x080,
-               .mask_set  = 0x0c0,
-               .mask_clr  = 0x100,
-               .sens      = 0x140,
-               .sens_set  = 0x180,
-               .sens_clr  = 0x1c0,
-               .soft      = 0x200,
-               .soft_set  = 0x240,
-               .soft_clr  = 0x280,
-               .pol       = 0x300,
-               .pol_set   = 0x340,
-               .pol_clr   = 0x380,
-               .dom_en    = 0x400,
-               .dbnc_ctrl = 0x500,
-               .dbnc_set  = 0x600,
-               .dbnc_clr  = 0x700,
-       },
 };
 
 static int mt8127_pinctrl_probe(struct platform_device *pdev)
index fdfa357..974a1f4 100644 (file)
@@ -320,26 +320,6 @@ static const struct mtk_pinctrl_devdata mt8135_pinctrl_data = {
                .ap_num    = 192,
                .db_cnt    = 16,
        },
-       .eint_regs = {
-               .stat      = 0x000,
-               .ack       = 0x040,
-               .mask      = 0x080,
-               .mask_set  = 0x0c0,
-               .mask_clr  = 0x100,
-               .sens      = 0x140,
-               .sens_set  = 0x180,
-               .sens_clr  = 0x1c0,
-               .soft      = 0x200,
-               .soft_set  = 0x240,
-               .soft_clr  = 0x280,
-               .pol       = 0x300,
-               .pol_set   = 0x340,
-               .pol_clr   = 0x380,
-               .dom_en    = 0x400,
-               .dbnc_ctrl = 0x500,
-               .dbnc_set  = 0x600,
-               .dbnc_clr  = 0x700,
-       },
 };
 
 static int mt8135_pinctrl_probe(struct platform_device *pdev)
index 1466c95..a836cee 100644 (file)
@@ -347,26 +347,6 @@ static const struct mtk_pinctrl_devdata mt8173_pinctrl_data = {
                .ap_num    = 224,
                .db_cnt    = 16,
        },
-       .eint_regs = {
-               .stat      = 0x000,
-               .ack       = 0x040,
-               .mask      = 0x080,
-               .mask_set  = 0x0c0,
-               .mask_clr  = 0x100,
-               .sens      = 0x140,
-               .sens_set  = 0x180,
-               .sens_clr  = 0x1c0,
-               .soft      = 0x200,
-               .soft_set  = 0x240,
-               .soft_clr  = 0x280,
-               .pol       = 0x300,
-               .pol_set   = 0x340,
-               .pol_clr   = 0x380,
-               .dom_en    = 0x400,
-               .dbnc_ctrl = 0x500,
-               .dbnc_set  = 0x600,
-               .dbnc_clr  = 0x700,
-       },
 };
 
 static int mt8173_pinctrl_probe(struct platform_device *pdev)
index 11e0d0f..b379969 100644 (file)
@@ -1014,7 +1014,11 @@ static int mtk_eint_init(struct mtk_pinctrl *pctl, struct platform_device *pdev)
                return -EINVAL;
 
        pctl->eint->dev = &pdev->dev;
-       pctl->eint->regs = &pctl->devdata->eint_regs;
+       /*
+        * If pctl->eint->regs == NULL, it would fall back into using a generic
+        * register map in mtk_eint_do_init calls.
+        */
+       pctl->eint->regs = pctl->devdata->eint_regs;
        pctl->eint->hw = &pctl->devdata->eint_hw;
        pctl->eint->pctl = pctl;
        pctl->eint->gpio_xlate = &mtk_eint_xt;
index 346e3db..bf13eb0 100644 (file)
@@ -261,7 +261,7 @@ struct mtk_pinctrl_devdata {
        unsigned char  port_mask;
        unsigned char  port_align;
        struct mtk_eint_hw eint_hw;
-       struct mtk_eint_regs eint_regs;
+       struct mtk_eint_regs *eint_regs;
 };
 
 struct mtk_pinctrl {