mediatek: add support for the new MT7623 Arm SoC
[openwrt.git] / target / linux / mediatek / patches / 0050-pinctrl-mediatek-data-struct-optimize-and-remove-unu.patch
1 From 3eeb897a627e26083472f14e7512f53276a5e7ce Mon Sep 17 00:00:00 2001
2 From: Yingjoe Chen <yingjoe.chen@mediatek.com>
3 Date: Mon, 18 May 2015 23:11:14 -0700
4 Subject: [PATCH 50/76] pinctrl: mediatek: data struct optimize and remove
5  unused member
6
7 struct mtk_desc_pin.chip, mtk_pinctrl_devdata.invser_offset
8 and mtk_pinctrl_devdata.chip_type are never used in code.
9 Remove them.
10
11 Some per-pin data are using int for pin number and offsets.
12 Change to short and rearrange to reduce const data size.
13
14 Signed-off-by: Yingjoe Chen <yingjoe.chen@mediatek.com>
15 Signed-off-by: Hongzhou Yang <hongzhou.yang@mediatek.com>
16 ---
17  drivers/pinctrl/mediatek/pinctrl-mt8135.c     |   10 ++++------
18  drivers/pinctrl/mediatek/pinctrl-mtk-common.h |   10 ++--------
19  2 files changed, 6 insertions(+), 14 deletions(-)
20
21 diff --git a/drivers/pinctrl/mediatek/pinctrl-mt8135.c b/drivers/pinctrl/mediatek/pinctrl-mt8135.c
22 index f1e1e18..8e6abd5 100644
23 --- a/drivers/pinctrl/mediatek/pinctrl-mt8135.c
24 +++ b/drivers/pinctrl/mediatek/pinctrl-mt8135.c
25 @@ -32,12 +32,12 @@
26  #define R1_BASE2                               0x250
27  
28  struct mtk_spec_pull_set {
29 -       unsigned int pin;
30 -       unsigned int pupd_offset;
31 +       unsigned char pin;
32         unsigned char pupd_bit;
33 -       unsigned int r0_offset;
34 +       unsigned short pupd_offset;
35 +       unsigned short r0_offset;
36 +       unsigned short r1_offset;
37         unsigned char r0_bit;
38 -       unsigned int r1_offset;
39         unsigned char r1_bit;
40  };
41  
42 @@ -305,7 +305,6 @@ static const struct mtk_pinctrl_devdata mt8135_pinctrl_data = {
43         .pullen_offset = 0x0200,
44         .smt_offset = 0x0300,
45         .pullsel_offset = 0x0400,
46 -       .invser_offset = 0x0600,
47         .dout_offset = 0x0800,
48         .din_offset = 0x0A00,
49         .pinmux_offset = 0x0C00,
50 @@ -314,7 +313,6 @@ static const struct mtk_pinctrl_devdata mt8135_pinctrl_data = {
51         .port_shf = 4,
52         .port_mask = 0xf,
53         .port_align = 4,
54 -       .chip_type = MTK_CHIP_TYPE_BASE,
55         .eint_offsets = {
56                 .name = "mt8135_eint",
57                 .stat      = 0x000,
58 diff --git a/drivers/pinctrl/mediatek/pinctrl-mtk-common.h b/drivers/pinctrl/mediatek/pinctrl-mtk-common.h
59 index 375771d..1508849 100644
60 --- a/drivers/pinctrl/mediatek/pinctrl-mtk-common.h
61 +++ b/drivers/pinctrl/mediatek/pinctrl-mtk-common.h
62 @@ -19,8 +19,6 @@
63  #include <linux/regmap.h>
64  
65  #define NO_EINT_SUPPORT    255
66 -#define MTK_CHIP_TYPE_BASE     0
67 -#define MTK_CHIP_TYPE_PMIC     1
68  #define MT_EDGE_SENSITIVE           0
69  #define MT_LEVEL_SENSITIVE          1
70  #define EINT_DBNC_SET_DBNC_BITS     4
71 @@ -39,7 +37,6 @@ struct mtk_desc_eint {
72  
73  struct mtk_desc_pin {
74         struct pinctrl_pin_desc pin;
75 -       const char *chip;
76         const struct mtk_desc_eint eint;
77         const struct mtk_desc_function  *functions;
78  };
79 @@ -47,7 +44,6 @@ struct mtk_desc_pin {
80  #define MTK_PIN(_pin, _pad, _chip, _eint, ...)         \
81         {                                                       \
82                 .pin = _pin,                                    \
83 -               .chip = _chip,                                  \
84                 .eint = _eint,                                  \
85                 .functions = (struct mtk_desc_function[]){      \
86                         __VA_ARGS__, { } },                     \
87 @@ -107,8 +103,8 @@ struct mtk_drv_group_desc {
88   * @grp: The group for this pin belongs to.
89   */
90  struct mtk_pin_drv_grp {
91 -       unsigned int pin;
92 -       unsigned int offset;
93 +       unsigned short pin;
94 +       unsigned short offset;
95         unsigned char bit;
96         unsigned char grp;
97  };
98 @@ -193,7 +189,6 @@ struct mtk_pinctrl_devdata {
99         unsigned int pullen_offset;
100         unsigned int pullsel_offset;
101         unsigned int drv_offset;
102 -       unsigned int invser_offset;
103         unsigned int dout_offset;
104         unsigned int din_offset;
105         unsigned int pinmux_offset;
106 @@ -202,7 +197,6 @@ struct mtk_pinctrl_devdata {
107         unsigned char  port_shf;
108         unsigned char  port_mask;
109         unsigned char  port_align;
110 -       unsigned char   chip_type;
111         struct mtk_eint_offsets eint_offsets;
112         unsigned int    ap_num;
113         unsigned int    db_cnt;
114 -- 
115 1.7.10.4
116