@@ -80,15 +80,9 @@ struct cpm2_gpio32_chip {
80
80
u32 cpdata ;
81
81
};
82
82
83
- static inline struct cpm2_gpio32_chip *
84
- to_cpm2_gpio32_chip (struct of_mm_gpio_chip * mm_gc )
85
- {
86
- return container_of (mm_gc , struct cpm2_gpio32_chip , mm_gc );
87
- }
88
-
89
83
static void cpm2_gpio32_save_regs (struct of_mm_gpio_chip * mm_gc )
90
84
{
91
- struct cpm2_gpio32_chip * cpm2_gc = to_cpm2_gpio32_chip ( mm_gc );
85
+ struct cpm2_gpio32_chip * cpm2_gc = gpiochip_get_data ( & mm_gc -> gc );
92
86
struct cpm2_ioports __iomem * iop = mm_gc -> regs ;
93
87
94
88
cpm2_gc -> cpdata = in_be32 (& iop -> dat );
@@ -108,7 +102,7 @@ static int cpm2_gpio32_get(struct gpio_chip *gc, unsigned int gpio)
108
102
static void __cpm2_gpio32_set (struct of_mm_gpio_chip * mm_gc , u32 pin_mask ,
109
103
int value )
110
104
{
111
- struct cpm2_gpio32_chip * cpm2_gc = to_cpm2_gpio32_chip ( mm_gc );
105
+ struct cpm2_gpio32_chip * cpm2_gc = gpiochip_get_data ( & mm_gc -> gc );
112
106
struct cpm2_ioports __iomem * iop = mm_gc -> regs ;
113
107
114
108
if (value )
@@ -122,7 +116,7 @@ static void __cpm2_gpio32_set(struct of_mm_gpio_chip *mm_gc, u32 pin_mask,
122
116
static void cpm2_gpio32_set (struct gpio_chip * gc , unsigned int gpio , int value )
123
117
{
124
118
struct of_mm_gpio_chip * mm_gc = to_of_mm_gpio_chip (gc );
125
- struct cpm2_gpio32_chip * cpm2_gc = to_cpm2_gpio32_chip ( mm_gc );
119
+ struct cpm2_gpio32_chip * cpm2_gc = gpiochip_get_data ( gc );
126
120
unsigned long flags ;
127
121
u32 pin_mask = 1 << (31 - gpio );
128
122
@@ -136,7 +130,7 @@ static void cpm2_gpio32_set(struct gpio_chip *gc, unsigned int gpio, int value)
136
130
static int cpm2_gpio32_dir_out (struct gpio_chip * gc , unsigned int gpio , int val )
137
131
{
138
132
struct of_mm_gpio_chip * mm_gc = to_of_mm_gpio_chip (gc );
139
- struct cpm2_gpio32_chip * cpm2_gc = to_cpm2_gpio32_chip ( mm_gc );
133
+ struct cpm2_gpio32_chip * cpm2_gc = gpiochip_get_data ( gc );
140
134
struct cpm2_ioports __iomem * iop = mm_gc -> regs ;
141
135
unsigned long flags ;
142
136
u32 pin_mask = 1 << (31 - gpio );
@@ -154,7 +148,7 @@ static int cpm2_gpio32_dir_out(struct gpio_chip *gc, unsigned int gpio, int val)
154
148
static int cpm2_gpio32_dir_in (struct gpio_chip * gc , unsigned int gpio )
155
149
{
156
150
struct of_mm_gpio_chip * mm_gc = to_of_mm_gpio_chip (gc );
157
- struct cpm2_gpio32_chip * cpm2_gc = to_cpm2_gpio32_chip ( mm_gc );
151
+ struct cpm2_gpio32_chip * cpm2_gc = gpiochip_get_data ( gc );
158
152
struct cpm2_ioports __iomem * iop = mm_gc -> regs ;
159
153
unsigned long flags ;
160
154
u32 pin_mask = 1 << (31 - gpio );
@@ -190,6 +184,6 @@ int cpm2_gpiochip_add32(struct device_node *np)
190
184
gc -> get = cpm2_gpio32_get ;
191
185
gc -> set = cpm2_gpio32_set ;
192
186
193
- return of_mm_gpiochip_add (np , mm_gc );
187
+ return of_mm_gpiochip_add_data (np , mm_gc , cpm2_gc );
194
188
}
195
189
#endif /* CONFIG_CPM2 || CONFIG_8xx_GPIO */
0 commit comments