1*4882a593Smuzhiyun /*
2*4882a593Smuzhiyun * (C) Copyright 2009 Samsung Electronics
3*4882a593Smuzhiyun * Minkyu Kang <mk7.kang@samsung.com>
4*4882a593Smuzhiyun *
5*4882a593Smuzhiyun * SPDX-License-Identifier: GPL-2.0+
6*4882a593Smuzhiyun */
7*4882a593Smuzhiyun
8*4882a593Smuzhiyun #ifndef __ASM_ARCH_GPIO_H
9*4882a593Smuzhiyun #define __ASM_ARCH_GPIO_H
10*4882a593Smuzhiyun
11*4882a593Smuzhiyun #ifndef __ASSEMBLY__
12*4882a593Smuzhiyun struct s5p_gpio_bank {
13*4882a593Smuzhiyun unsigned int con;
14*4882a593Smuzhiyun unsigned int dat;
15*4882a593Smuzhiyun unsigned int pull;
16*4882a593Smuzhiyun unsigned int drv;
17*4882a593Smuzhiyun unsigned int pdn_con;
18*4882a593Smuzhiyun unsigned int pdn_pull;
19*4882a593Smuzhiyun unsigned char res1[8];
20*4882a593Smuzhiyun };
21*4882a593Smuzhiyun
22*4882a593Smuzhiyun /* A list of valid GPIO numbers for the asm-generic/gpio.h interface */
23*4882a593Smuzhiyun enum s5pc100_gpio_pin {
24*4882a593Smuzhiyun S5PC100_GPIO_A00,
25*4882a593Smuzhiyun S5PC100_GPIO_A01,
26*4882a593Smuzhiyun S5PC100_GPIO_A02,
27*4882a593Smuzhiyun S5PC100_GPIO_A03,
28*4882a593Smuzhiyun S5PC100_GPIO_A04,
29*4882a593Smuzhiyun S5PC100_GPIO_A05,
30*4882a593Smuzhiyun S5PC100_GPIO_A06,
31*4882a593Smuzhiyun S5PC100_GPIO_A07,
32*4882a593Smuzhiyun S5PC100_GPIO_A10,
33*4882a593Smuzhiyun S5PC100_GPIO_A11,
34*4882a593Smuzhiyun S5PC100_GPIO_A12,
35*4882a593Smuzhiyun S5PC100_GPIO_A13,
36*4882a593Smuzhiyun S5PC100_GPIO_A14,
37*4882a593Smuzhiyun S5PC100_GPIO_A15,
38*4882a593Smuzhiyun S5PC100_GPIO_A16,
39*4882a593Smuzhiyun S5PC100_GPIO_A17,
40*4882a593Smuzhiyun S5PC100_GPIO_B0,
41*4882a593Smuzhiyun S5PC100_GPIO_B1,
42*4882a593Smuzhiyun S5PC100_GPIO_B2,
43*4882a593Smuzhiyun S5PC100_GPIO_B3,
44*4882a593Smuzhiyun S5PC100_GPIO_B4,
45*4882a593Smuzhiyun S5PC100_GPIO_B5,
46*4882a593Smuzhiyun S5PC100_GPIO_B6,
47*4882a593Smuzhiyun S5PC100_GPIO_B7,
48*4882a593Smuzhiyun S5PC100_GPIO_C0,
49*4882a593Smuzhiyun S5PC100_GPIO_C1,
50*4882a593Smuzhiyun S5PC100_GPIO_C2,
51*4882a593Smuzhiyun S5PC100_GPIO_C3,
52*4882a593Smuzhiyun S5PC100_GPIO_C4,
53*4882a593Smuzhiyun S5PC100_GPIO_C5,
54*4882a593Smuzhiyun S5PC100_GPIO_C6,
55*4882a593Smuzhiyun S5PC100_GPIO_C7,
56*4882a593Smuzhiyun S5PC100_GPIO_D0,
57*4882a593Smuzhiyun S5PC100_GPIO_D1,
58*4882a593Smuzhiyun S5PC100_GPIO_D2,
59*4882a593Smuzhiyun S5PC100_GPIO_D3,
60*4882a593Smuzhiyun S5PC100_GPIO_D4,
61*4882a593Smuzhiyun S5PC100_GPIO_D5,
62*4882a593Smuzhiyun S5PC100_GPIO_D6,
63*4882a593Smuzhiyun S5PC100_GPIO_D7,
64*4882a593Smuzhiyun S5PC100_GPIO_E00,
65*4882a593Smuzhiyun S5PC100_GPIO_E01,
66*4882a593Smuzhiyun S5PC100_GPIO_E02,
67*4882a593Smuzhiyun S5PC100_GPIO_E03,
68*4882a593Smuzhiyun S5PC100_GPIO_E04,
69*4882a593Smuzhiyun S5PC100_GPIO_E05,
70*4882a593Smuzhiyun S5PC100_GPIO_E06,
71*4882a593Smuzhiyun S5PC100_GPIO_E07,
72*4882a593Smuzhiyun S5PC100_GPIO_E10,
73*4882a593Smuzhiyun S5PC100_GPIO_E11,
74*4882a593Smuzhiyun S5PC100_GPIO_E12,
75*4882a593Smuzhiyun S5PC100_GPIO_E13,
76*4882a593Smuzhiyun S5PC100_GPIO_E14,
77*4882a593Smuzhiyun S5PC100_GPIO_E15,
78*4882a593Smuzhiyun S5PC100_GPIO_E16,
79*4882a593Smuzhiyun S5PC100_GPIO_E17,
80*4882a593Smuzhiyun S5PC100_GPIO_F00,
81*4882a593Smuzhiyun S5PC100_GPIO_F01,
82*4882a593Smuzhiyun S5PC100_GPIO_F02,
83*4882a593Smuzhiyun S5PC100_GPIO_F03,
84*4882a593Smuzhiyun S5PC100_GPIO_F04,
85*4882a593Smuzhiyun S5PC100_GPIO_F05,
86*4882a593Smuzhiyun S5PC100_GPIO_F06,
87*4882a593Smuzhiyun S5PC100_GPIO_F07,
88*4882a593Smuzhiyun S5PC100_GPIO_F10,
89*4882a593Smuzhiyun S5PC100_GPIO_F11,
90*4882a593Smuzhiyun S5PC100_GPIO_F12,
91*4882a593Smuzhiyun S5PC100_GPIO_F13,
92*4882a593Smuzhiyun S5PC100_GPIO_F14,
93*4882a593Smuzhiyun S5PC100_GPIO_F15,
94*4882a593Smuzhiyun S5PC100_GPIO_F16,
95*4882a593Smuzhiyun S5PC100_GPIO_F17,
96*4882a593Smuzhiyun S5PC100_GPIO_F20,
97*4882a593Smuzhiyun S5PC100_GPIO_F21,
98*4882a593Smuzhiyun S5PC100_GPIO_F22,
99*4882a593Smuzhiyun S5PC100_GPIO_F23,
100*4882a593Smuzhiyun S5PC100_GPIO_F24,
101*4882a593Smuzhiyun S5PC100_GPIO_F25,
102*4882a593Smuzhiyun S5PC100_GPIO_F26,
103*4882a593Smuzhiyun S5PC100_GPIO_F27,
104*4882a593Smuzhiyun S5PC100_GPIO_F30,
105*4882a593Smuzhiyun S5PC100_GPIO_F31,
106*4882a593Smuzhiyun S5PC100_GPIO_F32,
107*4882a593Smuzhiyun S5PC100_GPIO_F33,
108*4882a593Smuzhiyun S5PC100_GPIO_F34,
109*4882a593Smuzhiyun S5PC100_GPIO_F35,
110*4882a593Smuzhiyun S5PC100_GPIO_F36,
111*4882a593Smuzhiyun S5PC100_GPIO_F37,
112*4882a593Smuzhiyun S5PC100_GPIO_G00,
113*4882a593Smuzhiyun S5PC100_GPIO_G01,
114*4882a593Smuzhiyun S5PC100_GPIO_G02,
115*4882a593Smuzhiyun S5PC100_GPIO_G03,
116*4882a593Smuzhiyun S5PC100_GPIO_G04,
117*4882a593Smuzhiyun S5PC100_GPIO_G05,
118*4882a593Smuzhiyun S5PC100_GPIO_G06,
119*4882a593Smuzhiyun S5PC100_GPIO_G07,
120*4882a593Smuzhiyun S5PC100_GPIO_G10,
121*4882a593Smuzhiyun S5PC100_GPIO_G11,
122*4882a593Smuzhiyun S5PC100_GPIO_G12,
123*4882a593Smuzhiyun S5PC100_GPIO_G13,
124*4882a593Smuzhiyun S5PC100_GPIO_G14,
125*4882a593Smuzhiyun S5PC100_GPIO_G15,
126*4882a593Smuzhiyun S5PC100_GPIO_G16,
127*4882a593Smuzhiyun S5PC100_GPIO_G17,
128*4882a593Smuzhiyun S5PC100_GPIO_G20,
129*4882a593Smuzhiyun S5PC100_GPIO_G21,
130*4882a593Smuzhiyun S5PC100_GPIO_G22,
131*4882a593Smuzhiyun S5PC100_GPIO_G23,
132*4882a593Smuzhiyun S5PC100_GPIO_G24,
133*4882a593Smuzhiyun S5PC100_GPIO_G25,
134*4882a593Smuzhiyun S5PC100_GPIO_G26,
135*4882a593Smuzhiyun S5PC100_GPIO_G27,
136*4882a593Smuzhiyun S5PC100_GPIO_G30,
137*4882a593Smuzhiyun S5PC100_GPIO_G31,
138*4882a593Smuzhiyun S5PC100_GPIO_G32,
139*4882a593Smuzhiyun S5PC100_GPIO_G33,
140*4882a593Smuzhiyun S5PC100_GPIO_G34,
141*4882a593Smuzhiyun S5PC100_GPIO_G35,
142*4882a593Smuzhiyun S5PC100_GPIO_G36,
143*4882a593Smuzhiyun S5PC100_GPIO_G37,
144*4882a593Smuzhiyun S5PC100_GPIO_I0,
145*4882a593Smuzhiyun S5PC100_GPIO_I1,
146*4882a593Smuzhiyun S5PC100_GPIO_I2,
147*4882a593Smuzhiyun S5PC100_GPIO_I3,
148*4882a593Smuzhiyun S5PC100_GPIO_I4,
149*4882a593Smuzhiyun S5PC100_GPIO_I5,
150*4882a593Smuzhiyun S5PC100_GPIO_I6,
151*4882a593Smuzhiyun S5PC100_GPIO_I7,
152*4882a593Smuzhiyun S5PC100_GPIO_J00,
153*4882a593Smuzhiyun S5PC100_GPIO_J01,
154*4882a593Smuzhiyun S5PC100_GPIO_J02,
155*4882a593Smuzhiyun S5PC100_GPIO_J03,
156*4882a593Smuzhiyun S5PC100_GPIO_J04,
157*4882a593Smuzhiyun S5PC100_GPIO_J05,
158*4882a593Smuzhiyun S5PC100_GPIO_J06,
159*4882a593Smuzhiyun S5PC100_GPIO_J07,
160*4882a593Smuzhiyun S5PC100_GPIO_J10,
161*4882a593Smuzhiyun S5PC100_GPIO_J11,
162*4882a593Smuzhiyun S5PC100_GPIO_J12,
163*4882a593Smuzhiyun S5PC100_GPIO_J13,
164*4882a593Smuzhiyun S5PC100_GPIO_J14,
165*4882a593Smuzhiyun S5PC100_GPIO_J15,
166*4882a593Smuzhiyun S5PC100_GPIO_J16,
167*4882a593Smuzhiyun S5PC100_GPIO_J17,
168*4882a593Smuzhiyun S5PC100_GPIO_J20,
169*4882a593Smuzhiyun S5PC100_GPIO_J21,
170*4882a593Smuzhiyun S5PC100_GPIO_J22,
171*4882a593Smuzhiyun S5PC100_GPIO_J23,
172*4882a593Smuzhiyun S5PC100_GPIO_J24,
173*4882a593Smuzhiyun S5PC100_GPIO_J25,
174*4882a593Smuzhiyun S5PC100_GPIO_J26,
175*4882a593Smuzhiyun S5PC100_GPIO_J27,
176*4882a593Smuzhiyun S5PC100_GPIO_J30,
177*4882a593Smuzhiyun S5PC100_GPIO_J31,
178*4882a593Smuzhiyun S5PC100_GPIO_J32,
179*4882a593Smuzhiyun S5PC100_GPIO_J33,
180*4882a593Smuzhiyun S5PC100_GPIO_J34,
181*4882a593Smuzhiyun S5PC100_GPIO_J35,
182*4882a593Smuzhiyun S5PC100_GPIO_J36,
183*4882a593Smuzhiyun S5PC100_GPIO_J37,
184*4882a593Smuzhiyun S5PC100_GPIO_J40,
185*4882a593Smuzhiyun S5PC100_GPIO_J41,
186*4882a593Smuzhiyun S5PC100_GPIO_J42,
187*4882a593Smuzhiyun S5PC100_GPIO_J43,
188*4882a593Smuzhiyun S5PC100_GPIO_J44,
189*4882a593Smuzhiyun S5PC100_GPIO_J45,
190*4882a593Smuzhiyun S5PC100_GPIO_J46,
191*4882a593Smuzhiyun S5PC100_GPIO_J47,
192*4882a593Smuzhiyun S5PC100_GPIO_K00,
193*4882a593Smuzhiyun S5PC100_GPIO_K01,
194*4882a593Smuzhiyun S5PC100_GPIO_K02,
195*4882a593Smuzhiyun S5PC100_GPIO_K03,
196*4882a593Smuzhiyun S5PC100_GPIO_K04,
197*4882a593Smuzhiyun S5PC100_GPIO_K05,
198*4882a593Smuzhiyun S5PC100_GPIO_K06,
199*4882a593Smuzhiyun S5PC100_GPIO_K07,
200*4882a593Smuzhiyun S5PC100_GPIO_K10,
201*4882a593Smuzhiyun S5PC100_GPIO_K11,
202*4882a593Smuzhiyun S5PC100_GPIO_K12,
203*4882a593Smuzhiyun S5PC100_GPIO_K13,
204*4882a593Smuzhiyun S5PC100_GPIO_K14,
205*4882a593Smuzhiyun S5PC100_GPIO_K15,
206*4882a593Smuzhiyun S5PC100_GPIO_K16,
207*4882a593Smuzhiyun S5PC100_GPIO_K17,
208*4882a593Smuzhiyun S5PC100_GPIO_K20,
209*4882a593Smuzhiyun S5PC100_GPIO_K21,
210*4882a593Smuzhiyun S5PC100_GPIO_K22,
211*4882a593Smuzhiyun S5PC100_GPIO_K23,
212*4882a593Smuzhiyun S5PC100_GPIO_K24,
213*4882a593Smuzhiyun S5PC100_GPIO_K25,
214*4882a593Smuzhiyun S5PC100_GPIO_K26,
215*4882a593Smuzhiyun S5PC100_GPIO_K27,
216*4882a593Smuzhiyun S5PC100_GPIO_K30,
217*4882a593Smuzhiyun S5PC100_GPIO_K31,
218*4882a593Smuzhiyun S5PC100_GPIO_K32,
219*4882a593Smuzhiyun S5PC100_GPIO_K33,
220*4882a593Smuzhiyun S5PC100_GPIO_K34,
221*4882a593Smuzhiyun S5PC100_GPIO_K35,
222*4882a593Smuzhiyun S5PC100_GPIO_K36,
223*4882a593Smuzhiyun S5PC100_GPIO_K37,
224*4882a593Smuzhiyun S5PC100_GPIO_L00,
225*4882a593Smuzhiyun S5PC100_GPIO_L01,
226*4882a593Smuzhiyun S5PC100_GPIO_L02,
227*4882a593Smuzhiyun S5PC100_GPIO_L03,
228*4882a593Smuzhiyun S5PC100_GPIO_L04,
229*4882a593Smuzhiyun S5PC100_GPIO_L05,
230*4882a593Smuzhiyun S5PC100_GPIO_L06,
231*4882a593Smuzhiyun S5PC100_GPIO_L07,
232*4882a593Smuzhiyun S5PC100_GPIO_L10,
233*4882a593Smuzhiyun S5PC100_GPIO_L11,
234*4882a593Smuzhiyun S5PC100_GPIO_L12,
235*4882a593Smuzhiyun S5PC100_GPIO_L13,
236*4882a593Smuzhiyun S5PC100_GPIO_L14,
237*4882a593Smuzhiyun S5PC100_GPIO_L15,
238*4882a593Smuzhiyun S5PC100_GPIO_L16,
239*4882a593Smuzhiyun S5PC100_GPIO_L17,
240*4882a593Smuzhiyun S5PC100_GPIO_L20,
241*4882a593Smuzhiyun S5PC100_GPIO_L21,
242*4882a593Smuzhiyun S5PC100_GPIO_L22,
243*4882a593Smuzhiyun S5PC100_GPIO_L23,
244*4882a593Smuzhiyun S5PC100_GPIO_L24,
245*4882a593Smuzhiyun S5PC100_GPIO_L25,
246*4882a593Smuzhiyun S5PC100_GPIO_L26,
247*4882a593Smuzhiyun S5PC100_GPIO_L27,
248*4882a593Smuzhiyun S5PC100_GPIO_L30,
249*4882a593Smuzhiyun S5PC100_GPIO_L31,
250*4882a593Smuzhiyun S5PC100_GPIO_L32,
251*4882a593Smuzhiyun S5PC100_GPIO_L33,
252*4882a593Smuzhiyun S5PC100_GPIO_L34,
253*4882a593Smuzhiyun S5PC100_GPIO_L35,
254*4882a593Smuzhiyun S5PC100_GPIO_L36,
255*4882a593Smuzhiyun S5PC100_GPIO_L37,
256*4882a593Smuzhiyun S5PC100_GPIO_L40,
257*4882a593Smuzhiyun S5PC100_GPIO_L41,
258*4882a593Smuzhiyun S5PC100_GPIO_L42,
259*4882a593Smuzhiyun S5PC100_GPIO_L43,
260*4882a593Smuzhiyun S5PC100_GPIO_L44,
261*4882a593Smuzhiyun S5PC100_GPIO_L45,
262*4882a593Smuzhiyun S5PC100_GPIO_L46,
263*4882a593Smuzhiyun S5PC100_GPIO_L47,
264*4882a593Smuzhiyun S5PC100_GPIO_H00,
265*4882a593Smuzhiyun S5PC100_GPIO_H01,
266*4882a593Smuzhiyun S5PC100_GPIO_H02,
267*4882a593Smuzhiyun S5PC100_GPIO_H03,
268*4882a593Smuzhiyun S5PC100_GPIO_H04,
269*4882a593Smuzhiyun S5PC100_GPIO_H05,
270*4882a593Smuzhiyun S5PC100_GPIO_H06,
271*4882a593Smuzhiyun S5PC100_GPIO_H07,
272*4882a593Smuzhiyun S5PC100_GPIO_H10,
273*4882a593Smuzhiyun S5PC100_GPIO_H11,
274*4882a593Smuzhiyun S5PC100_GPIO_H12,
275*4882a593Smuzhiyun S5PC100_GPIO_H13,
276*4882a593Smuzhiyun S5PC100_GPIO_H14,
277*4882a593Smuzhiyun S5PC100_GPIO_H15,
278*4882a593Smuzhiyun S5PC100_GPIO_H16,
279*4882a593Smuzhiyun S5PC100_GPIO_H17,
280*4882a593Smuzhiyun S5PC100_GPIO_H20,
281*4882a593Smuzhiyun S5PC100_GPIO_H21,
282*4882a593Smuzhiyun S5PC100_GPIO_H22,
283*4882a593Smuzhiyun S5PC100_GPIO_H23,
284*4882a593Smuzhiyun S5PC100_GPIO_H24,
285*4882a593Smuzhiyun S5PC100_GPIO_H25,
286*4882a593Smuzhiyun S5PC100_GPIO_H26,
287*4882a593Smuzhiyun S5PC100_GPIO_H27,
288*4882a593Smuzhiyun S5PC100_GPIO_H30,
289*4882a593Smuzhiyun S5PC100_GPIO_H31,
290*4882a593Smuzhiyun S5PC100_GPIO_H32,
291*4882a593Smuzhiyun S5PC100_GPIO_H33,
292*4882a593Smuzhiyun S5PC100_GPIO_H34,
293*4882a593Smuzhiyun S5PC100_GPIO_H35,
294*4882a593Smuzhiyun S5PC100_GPIO_H36,
295*4882a593Smuzhiyun S5PC100_GPIO_H37,
296*4882a593Smuzhiyun
297*4882a593Smuzhiyun S5PC100_GPIO_MAX_PORT
298*4882a593Smuzhiyun };
299*4882a593Smuzhiyun
300*4882a593Smuzhiyun enum s5pc110_gpio_pin {
301*4882a593Smuzhiyun S5PC110_GPIO_A00,
302*4882a593Smuzhiyun S5PC110_GPIO_A01,
303*4882a593Smuzhiyun S5PC110_GPIO_A02,
304*4882a593Smuzhiyun S5PC110_GPIO_A03,
305*4882a593Smuzhiyun S5PC110_GPIO_A04,
306*4882a593Smuzhiyun S5PC110_GPIO_A05,
307*4882a593Smuzhiyun S5PC110_GPIO_A06,
308*4882a593Smuzhiyun S5PC110_GPIO_A07,
309*4882a593Smuzhiyun S5PC110_GPIO_A10,
310*4882a593Smuzhiyun S5PC110_GPIO_A11,
311*4882a593Smuzhiyun S5PC110_GPIO_A12,
312*4882a593Smuzhiyun S5PC110_GPIO_A13,
313*4882a593Smuzhiyun S5PC110_GPIO_A14,
314*4882a593Smuzhiyun S5PC110_GPIO_A15,
315*4882a593Smuzhiyun S5PC110_GPIO_A16,
316*4882a593Smuzhiyun S5PC110_GPIO_A17,
317*4882a593Smuzhiyun S5PC110_GPIO_B0,
318*4882a593Smuzhiyun S5PC110_GPIO_B1,
319*4882a593Smuzhiyun S5PC110_GPIO_B2,
320*4882a593Smuzhiyun S5PC110_GPIO_B3,
321*4882a593Smuzhiyun S5PC110_GPIO_B4,
322*4882a593Smuzhiyun S5PC110_GPIO_B5,
323*4882a593Smuzhiyun S5PC110_GPIO_B6,
324*4882a593Smuzhiyun S5PC110_GPIO_B7,
325*4882a593Smuzhiyun S5PC110_GPIO_C00,
326*4882a593Smuzhiyun S5PC110_GPIO_C01,
327*4882a593Smuzhiyun S5PC110_GPIO_C02,
328*4882a593Smuzhiyun S5PC110_GPIO_C03,
329*4882a593Smuzhiyun S5PC110_GPIO_C04,
330*4882a593Smuzhiyun S5PC110_GPIO_C05,
331*4882a593Smuzhiyun S5PC110_GPIO_C06,
332*4882a593Smuzhiyun S5PC110_GPIO_C07,
333*4882a593Smuzhiyun S5PC110_GPIO_C10,
334*4882a593Smuzhiyun S5PC110_GPIO_C11,
335*4882a593Smuzhiyun S5PC110_GPIO_C12,
336*4882a593Smuzhiyun S5PC110_GPIO_C13,
337*4882a593Smuzhiyun S5PC110_GPIO_C14,
338*4882a593Smuzhiyun S5PC110_GPIO_C15,
339*4882a593Smuzhiyun S5PC110_GPIO_C16,
340*4882a593Smuzhiyun S5PC110_GPIO_C17,
341*4882a593Smuzhiyun S5PC110_GPIO_D00,
342*4882a593Smuzhiyun S5PC110_GPIO_D01,
343*4882a593Smuzhiyun S5PC110_GPIO_D02,
344*4882a593Smuzhiyun S5PC110_GPIO_D03,
345*4882a593Smuzhiyun S5PC110_GPIO_D04,
346*4882a593Smuzhiyun S5PC110_GPIO_D05,
347*4882a593Smuzhiyun S5PC110_GPIO_D06,
348*4882a593Smuzhiyun S5PC110_GPIO_D07,
349*4882a593Smuzhiyun S5PC110_GPIO_D10,
350*4882a593Smuzhiyun S5PC110_GPIO_D11,
351*4882a593Smuzhiyun S5PC110_GPIO_D12,
352*4882a593Smuzhiyun S5PC110_GPIO_D13,
353*4882a593Smuzhiyun S5PC110_GPIO_D14,
354*4882a593Smuzhiyun S5PC110_GPIO_D15,
355*4882a593Smuzhiyun S5PC110_GPIO_D16,
356*4882a593Smuzhiyun S5PC110_GPIO_D17,
357*4882a593Smuzhiyun S5PC110_GPIO_E00,
358*4882a593Smuzhiyun S5PC110_GPIO_E01,
359*4882a593Smuzhiyun S5PC110_GPIO_E02,
360*4882a593Smuzhiyun S5PC110_GPIO_E03,
361*4882a593Smuzhiyun S5PC110_GPIO_E04,
362*4882a593Smuzhiyun S5PC110_GPIO_E05,
363*4882a593Smuzhiyun S5PC110_GPIO_E06,
364*4882a593Smuzhiyun S5PC110_GPIO_E07,
365*4882a593Smuzhiyun S5PC110_GPIO_E10,
366*4882a593Smuzhiyun S5PC110_GPIO_E11,
367*4882a593Smuzhiyun S5PC110_GPIO_E12,
368*4882a593Smuzhiyun S5PC110_GPIO_E13,
369*4882a593Smuzhiyun S5PC110_GPIO_E14,
370*4882a593Smuzhiyun S5PC110_GPIO_E15,
371*4882a593Smuzhiyun S5PC110_GPIO_E16,
372*4882a593Smuzhiyun S5PC110_GPIO_E17,
373*4882a593Smuzhiyun S5PC110_GPIO_F00,
374*4882a593Smuzhiyun S5PC110_GPIO_F01,
375*4882a593Smuzhiyun S5PC110_GPIO_F02,
376*4882a593Smuzhiyun S5PC110_GPIO_F03,
377*4882a593Smuzhiyun S5PC110_GPIO_F04,
378*4882a593Smuzhiyun S5PC110_GPIO_F05,
379*4882a593Smuzhiyun S5PC110_GPIO_F06,
380*4882a593Smuzhiyun S5PC110_GPIO_F07,
381*4882a593Smuzhiyun S5PC110_GPIO_F10,
382*4882a593Smuzhiyun S5PC110_GPIO_F11,
383*4882a593Smuzhiyun S5PC110_GPIO_F12,
384*4882a593Smuzhiyun S5PC110_GPIO_F13,
385*4882a593Smuzhiyun S5PC110_GPIO_F14,
386*4882a593Smuzhiyun S5PC110_GPIO_F15,
387*4882a593Smuzhiyun S5PC110_GPIO_F16,
388*4882a593Smuzhiyun S5PC110_GPIO_F17,
389*4882a593Smuzhiyun S5PC110_GPIO_F20,
390*4882a593Smuzhiyun S5PC110_GPIO_F21,
391*4882a593Smuzhiyun S5PC110_GPIO_F22,
392*4882a593Smuzhiyun S5PC110_GPIO_F23,
393*4882a593Smuzhiyun S5PC110_GPIO_F24,
394*4882a593Smuzhiyun S5PC110_GPIO_F25,
395*4882a593Smuzhiyun S5PC110_GPIO_F26,
396*4882a593Smuzhiyun S5PC110_GPIO_F27,
397*4882a593Smuzhiyun S5PC110_GPIO_F30,
398*4882a593Smuzhiyun S5PC110_GPIO_F31,
399*4882a593Smuzhiyun S5PC110_GPIO_F32,
400*4882a593Smuzhiyun S5PC110_GPIO_F33,
401*4882a593Smuzhiyun S5PC110_GPIO_F34,
402*4882a593Smuzhiyun S5PC110_GPIO_F35,
403*4882a593Smuzhiyun S5PC110_GPIO_F36,
404*4882a593Smuzhiyun S5PC110_GPIO_F37,
405*4882a593Smuzhiyun S5PC110_GPIO_G00,
406*4882a593Smuzhiyun S5PC110_GPIO_G01,
407*4882a593Smuzhiyun S5PC110_GPIO_G02,
408*4882a593Smuzhiyun S5PC110_GPIO_G03,
409*4882a593Smuzhiyun S5PC110_GPIO_G04,
410*4882a593Smuzhiyun S5PC110_GPIO_G05,
411*4882a593Smuzhiyun S5PC110_GPIO_G06,
412*4882a593Smuzhiyun S5PC110_GPIO_G07,
413*4882a593Smuzhiyun S5PC110_GPIO_G10,
414*4882a593Smuzhiyun S5PC110_GPIO_G11,
415*4882a593Smuzhiyun S5PC110_GPIO_G12,
416*4882a593Smuzhiyun S5PC110_GPIO_G13,
417*4882a593Smuzhiyun S5PC110_GPIO_G14,
418*4882a593Smuzhiyun S5PC110_GPIO_G15,
419*4882a593Smuzhiyun S5PC110_GPIO_G16,
420*4882a593Smuzhiyun S5PC110_GPIO_G17,
421*4882a593Smuzhiyun S5PC110_GPIO_G20,
422*4882a593Smuzhiyun S5PC110_GPIO_G21,
423*4882a593Smuzhiyun S5PC110_GPIO_G22,
424*4882a593Smuzhiyun S5PC110_GPIO_G23,
425*4882a593Smuzhiyun S5PC110_GPIO_G24,
426*4882a593Smuzhiyun S5PC110_GPIO_G25,
427*4882a593Smuzhiyun S5PC110_GPIO_G26,
428*4882a593Smuzhiyun S5PC110_GPIO_G27,
429*4882a593Smuzhiyun S5PC110_GPIO_G30,
430*4882a593Smuzhiyun S5PC110_GPIO_G31,
431*4882a593Smuzhiyun S5PC110_GPIO_G32,
432*4882a593Smuzhiyun S5PC110_GPIO_G33,
433*4882a593Smuzhiyun S5PC110_GPIO_G34,
434*4882a593Smuzhiyun S5PC110_GPIO_G35,
435*4882a593Smuzhiyun S5PC110_GPIO_G36,
436*4882a593Smuzhiyun S5PC110_GPIO_G37,
437*4882a593Smuzhiyun S5PC110_GPIO_I0,
438*4882a593Smuzhiyun S5PC110_GPIO_I1,
439*4882a593Smuzhiyun S5PC110_GPIO_I2,
440*4882a593Smuzhiyun S5PC110_GPIO_I3,
441*4882a593Smuzhiyun S5PC110_GPIO_I4,
442*4882a593Smuzhiyun S5PC110_GPIO_I5,
443*4882a593Smuzhiyun S5PC110_GPIO_I6,
444*4882a593Smuzhiyun S5PC110_GPIO_I7,
445*4882a593Smuzhiyun S5PC110_GPIO_J00,
446*4882a593Smuzhiyun S5PC110_GPIO_J01,
447*4882a593Smuzhiyun S5PC110_GPIO_J02,
448*4882a593Smuzhiyun S5PC110_GPIO_J03,
449*4882a593Smuzhiyun S5PC110_GPIO_J04,
450*4882a593Smuzhiyun S5PC110_GPIO_J05,
451*4882a593Smuzhiyun S5PC110_GPIO_J06,
452*4882a593Smuzhiyun S5PC110_GPIO_J07,
453*4882a593Smuzhiyun S5PC110_GPIO_J10,
454*4882a593Smuzhiyun S5PC110_GPIO_J11,
455*4882a593Smuzhiyun S5PC110_GPIO_J12,
456*4882a593Smuzhiyun S5PC110_GPIO_J13,
457*4882a593Smuzhiyun S5PC110_GPIO_J14,
458*4882a593Smuzhiyun S5PC110_GPIO_J15,
459*4882a593Smuzhiyun S5PC110_GPIO_J16,
460*4882a593Smuzhiyun S5PC110_GPIO_J17,
461*4882a593Smuzhiyun S5PC110_GPIO_J20,
462*4882a593Smuzhiyun S5PC110_GPIO_J21,
463*4882a593Smuzhiyun S5PC110_GPIO_J22,
464*4882a593Smuzhiyun S5PC110_GPIO_J23,
465*4882a593Smuzhiyun S5PC110_GPIO_J24,
466*4882a593Smuzhiyun S5PC110_GPIO_J25,
467*4882a593Smuzhiyun S5PC110_GPIO_J26,
468*4882a593Smuzhiyun S5PC110_GPIO_J27,
469*4882a593Smuzhiyun S5PC110_GPIO_J30,
470*4882a593Smuzhiyun S5PC110_GPIO_J31,
471*4882a593Smuzhiyun S5PC110_GPIO_J32,
472*4882a593Smuzhiyun S5PC110_GPIO_J33,
473*4882a593Smuzhiyun S5PC110_GPIO_J34,
474*4882a593Smuzhiyun S5PC110_GPIO_J35,
475*4882a593Smuzhiyun S5PC110_GPIO_J36,
476*4882a593Smuzhiyun S5PC110_GPIO_J37,
477*4882a593Smuzhiyun S5PC110_GPIO_J40,
478*4882a593Smuzhiyun S5PC110_GPIO_J41,
479*4882a593Smuzhiyun S5PC110_GPIO_J42,
480*4882a593Smuzhiyun S5PC110_GPIO_J43,
481*4882a593Smuzhiyun S5PC110_GPIO_J44,
482*4882a593Smuzhiyun S5PC110_GPIO_J45,
483*4882a593Smuzhiyun S5PC110_GPIO_J46,
484*4882a593Smuzhiyun S5PC110_GPIO_J47,
485*4882a593Smuzhiyun S5PC110_GPIO_MP010,
486*4882a593Smuzhiyun S5PC110_GPIO_MP011,
487*4882a593Smuzhiyun S5PC110_GPIO_MP012,
488*4882a593Smuzhiyun S5PC110_GPIO_MP013,
489*4882a593Smuzhiyun S5PC110_GPIO_MP014,
490*4882a593Smuzhiyun S5PC110_GPIO_MP015,
491*4882a593Smuzhiyun S5PC110_GPIO_MP016,
492*4882a593Smuzhiyun S5PC110_GPIO_MP017,
493*4882a593Smuzhiyun S5PC110_GPIO_MP020,
494*4882a593Smuzhiyun S5PC110_GPIO_MP021,
495*4882a593Smuzhiyun S5PC110_GPIO_MP022,
496*4882a593Smuzhiyun S5PC110_GPIO_MP023,
497*4882a593Smuzhiyun S5PC110_GPIO_MP024,
498*4882a593Smuzhiyun S5PC110_GPIO_MP025,
499*4882a593Smuzhiyun S5PC110_GPIO_MP026,
500*4882a593Smuzhiyun S5PC110_GPIO_MP027,
501*4882a593Smuzhiyun S5PC110_GPIO_MP030,
502*4882a593Smuzhiyun S5PC110_GPIO_MP031,
503*4882a593Smuzhiyun S5PC110_GPIO_MP032,
504*4882a593Smuzhiyun S5PC110_GPIO_MP033,
505*4882a593Smuzhiyun S5PC110_GPIO_MP034,
506*4882a593Smuzhiyun S5PC110_GPIO_MP035,
507*4882a593Smuzhiyun S5PC110_GPIO_MP036,
508*4882a593Smuzhiyun S5PC110_GPIO_MP037,
509*4882a593Smuzhiyun S5PC110_GPIO_MP040,
510*4882a593Smuzhiyun S5PC110_GPIO_MP041,
511*4882a593Smuzhiyun S5PC110_GPIO_MP042,
512*4882a593Smuzhiyun S5PC110_GPIO_MP043,
513*4882a593Smuzhiyun S5PC110_GPIO_MP044,
514*4882a593Smuzhiyun S5PC110_GPIO_MP045,
515*4882a593Smuzhiyun S5PC110_GPIO_MP046,
516*4882a593Smuzhiyun S5PC110_GPIO_MP047,
517*4882a593Smuzhiyun S5PC110_GPIO_MP050,
518*4882a593Smuzhiyun S5PC110_GPIO_MP051,
519*4882a593Smuzhiyun S5PC110_GPIO_MP052,
520*4882a593Smuzhiyun S5PC110_GPIO_MP053,
521*4882a593Smuzhiyun S5PC110_GPIO_MP054,
522*4882a593Smuzhiyun S5PC110_GPIO_MP055,
523*4882a593Smuzhiyun S5PC110_GPIO_MP056,
524*4882a593Smuzhiyun S5PC110_GPIO_MP057,
525*4882a593Smuzhiyun S5PC110_GPIO_MP060,
526*4882a593Smuzhiyun S5PC110_GPIO_MP061,
527*4882a593Smuzhiyun S5PC110_GPIO_MP062,
528*4882a593Smuzhiyun S5PC110_GPIO_MP063,
529*4882a593Smuzhiyun S5PC110_GPIO_MP064,
530*4882a593Smuzhiyun S5PC110_GPIO_MP065,
531*4882a593Smuzhiyun S5PC110_GPIO_MP066,
532*4882a593Smuzhiyun S5PC110_GPIO_MP067,
533*4882a593Smuzhiyun S5PC110_GPIO_MP070,
534*4882a593Smuzhiyun S5PC110_GPIO_MP071,
535*4882a593Smuzhiyun S5PC110_GPIO_MP072,
536*4882a593Smuzhiyun S5PC110_GPIO_MP073,
537*4882a593Smuzhiyun S5PC110_GPIO_MP074,
538*4882a593Smuzhiyun S5PC110_GPIO_MP075,
539*4882a593Smuzhiyun S5PC110_GPIO_MP076,
540*4882a593Smuzhiyun S5PC110_GPIO_MP077,
541*4882a593Smuzhiyun S5PC110_GPIO_MP100,
542*4882a593Smuzhiyun S5PC110_GPIO_MP101,
543*4882a593Smuzhiyun S5PC110_GPIO_MP102,
544*4882a593Smuzhiyun S5PC110_GPIO_MP103,
545*4882a593Smuzhiyun S5PC110_GPIO_MP104,
546*4882a593Smuzhiyun S5PC110_GPIO_MP105,
547*4882a593Smuzhiyun S5PC110_GPIO_MP106,
548*4882a593Smuzhiyun S5PC110_GPIO_MP107,
549*4882a593Smuzhiyun S5PC110_GPIO_MP110,
550*4882a593Smuzhiyun S5PC110_GPIO_MP111,
551*4882a593Smuzhiyun S5PC110_GPIO_MP112,
552*4882a593Smuzhiyun S5PC110_GPIO_MP113,
553*4882a593Smuzhiyun S5PC110_GPIO_MP114,
554*4882a593Smuzhiyun S5PC110_GPIO_MP115,
555*4882a593Smuzhiyun S5PC110_GPIO_MP116,
556*4882a593Smuzhiyun S5PC110_GPIO_MP117,
557*4882a593Smuzhiyun S5PC110_GPIO_MP120,
558*4882a593Smuzhiyun S5PC110_GPIO_MP121,
559*4882a593Smuzhiyun S5PC110_GPIO_MP122,
560*4882a593Smuzhiyun S5PC110_GPIO_MP123,
561*4882a593Smuzhiyun S5PC110_GPIO_MP124,
562*4882a593Smuzhiyun S5PC110_GPIO_MP125,
563*4882a593Smuzhiyun S5PC110_GPIO_MP126,
564*4882a593Smuzhiyun S5PC110_GPIO_MP127,
565*4882a593Smuzhiyun S5PC110_GPIO_MP130,
566*4882a593Smuzhiyun S5PC110_GPIO_MP131,
567*4882a593Smuzhiyun S5PC110_GPIO_MP132,
568*4882a593Smuzhiyun S5PC110_GPIO_MP133,
569*4882a593Smuzhiyun S5PC110_GPIO_MP134,
570*4882a593Smuzhiyun S5PC110_GPIO_MP135,
571*4882a593Smuzhiyun S5PC110_GPIO_MP136,
572*4882a593Smuzhiyun S5PC110_GPIO_MP137,
573*4882a593Smuzhiyun S5PC110_GPIO_MP140,
574*4882a593Smuzhiyun S5PC110_GPIO_MP141,
575*4882a593Smuzhiyun S5PC110_GPIO_MP142,
576*4882a593Smuzhiyun S5PC110_GPIO_MP143,
577*4882a593Smuzhiyun S5PC110_GPIO_MP144,
578*4882a593Smuzhiyun S5PC110_GPIO_MP145,
579*4882a593Smuzhiyun S5PC110_GPIO_MP146,
580*4882a593Smuzhiyun S5PC110_GPIO_MP147,
581*4882a593Smuzhiyun S5PC110_GPIO_MP150,
582*4882a593Smuzhiyun S5PC110_GPIO_MP151,
583*4882a593Smuzhiyun S5PC110_GPIO_MP152,
584*4882a593Smuzhiyun S5PC110_GPIO_MP153,
585*4882a593Smuzhiyun S5PC110_GPIO_MP154,
586*4882a593Smuzhiyun S5PC110_GPIO_MP155,
587*4882a593Smuzhiyun S5PC110_GPIO_MP156,
588*4882a593Smuzhiyun S5PC110_GPIO_MP157,
589*4882a593Smuzhiyun S5PC110_GPIO_MP160,
590*4882a593Smuzhiyun S5PC110_GPIO_MP161,
591*4882a593Smuzhiyun S5PC110_GPIO_MP162,
592*4882a593Smuzhiyun S5PC110_GPIO_MP163,
593*4882a593Smuzhiyun S5PC110_GPIO_MP164,
594*4882a593Smuzhiyun S5PC110_GPIO_MP165,
595*4882a593Smuzhiyun S5PC110_GPIO_MP166,
596*4882a593Smuzhiyun S5PC110_GPIO_MP167,
597*4882a593Smuzhiyun S5PC110_GPIO_MP170,
598*4882a593Smuzhiyun S5PC110_GPIO_MP171,
599*4882a593Smuzhiyun S5PC110_GPIO_MP172,
600*4882a593Smuzhiyun S5PC110_GPIO_MP173,
601*4882a593Smuzhiyun S5PC110_GPIO_MP174,
602*4882a593Smuzhiyun S5PC110_GPIO_MP175,
603*4882a593Smuzhiyun S5PC110_GPIO_MP176,
604*4882a593Smuzhiyun S5PC110_GPIO_MP177,
605*4882a593Smuzhiyun S5PC110_GPIO_MP180,
606*4882a593Smuzhiyun S5PC110_GPIO_MP181,
607*4882a593Smuzhiyun S5PC110_GPIO_MP182,
608*4882a593Smuzhiyun S5PC110_GPIO_MP183,
609*4882a593Smuzhiyun S5PC110_GPIO_MP184,
610*4882a593Smuzhiyun S5PC110_GPIO_MP185,
611*4882a593Smuzhiyun S5PC110_GPIO_MP186,
612*4882a593Smuzhiyun S5PC110_GPIO_MP187,
613*4882a593Smuzhiyun S5PC110_GPIO_MP200,
614*4882a593Smuzhiyun S5PC110_GPIO_MP201,
615*4882a593Smuzhiyun S5PC110_GPIO_MP202,
616*4882a593Smuzhiyun S5PC110_GPIO_MP203,
617*4882a593Smuzhiyun S5PC110_GPIO_MP204,
618*4882a593Smuzhiyun S5PC110_GPIO_MP205,
619*4882a593Smuzhiyun S5PC110_GPIO_MP206,
620*4882a593Smuzhiyun S5PC110_GPIO_MP207,
621*4882a593Smuzhiyun S5PC110_GPIO_MP210,
622*4882a593Smuzhiyun S5PC110_GPIO_MP211,
623*4882a593Smuzhiyun S5PC110_GPIO_MP212,
624*4882a593Smuzhiyun S5PC110_GPIO_MP213,
625*4882a593Smuzhiyun S5PC110_GPIO_MP214,
626*4882a593Smuzhiyun S5PC110_GPIO_MP215,
627*4882a593Smuzhiyun S5PC110_GPIO_MP216,
628*4882a593Smuzhiyun S5PC110_GPIO_MP217,
629*4882a593Smuzhiyun S5PC110_GPIO_MP220,
630*4882a593Smuzhiyun S5PC110_GPIO_MP221,
631*4882a593Smuzhiyun S5PC110_GPIO_MP222,
632*4882a593Smuzhiyun S5PC110_GPIO_MP223,
633*4882a593Smuzhiyun S5PC110_GPIO_MP224,
634*4882a593Smuzhiyun S5PC110_GPIO_MP225,
635*4882a593Smuzhiyun S5PC110_GPIO_MP226,
636*4882a593Smuzhiyun S5PC110_GPIO_MP227,
637*4882a593Smuzhiyun S5PC110_GPIO_MP230,
638*4882a593Smuzhiyun S5PC110_GPIO_MP231,
639*4882a593Smuzhiyun S5PC110_GPIO_MP232,
640*4882a593Smuzhiyun S5PC110_GPIO_MP233,
641*4882a593Smuzhiyun S5PC110_GPIO_MP234,
642*4882a593Smuzhiyun S5PC110_GPIO_MP235,
643*4882a593Smuzhiyun S5PC110_GPIO_MP236,
644*4882a593Smuzhiyun S5PC110_GPIO_MP237,
645*4882a593Smuzhiyun S5PC110_GPIO_MP240,
646*4882a593Smuzhiyun S5PC110_GPIO_MP241,
647*4882a593Smuzhiyun S5PC110_GPIO_MP242,
648*4882a593Smuzhiyun S5PC110_GPIO_MP243,
649*4882a593Smuzhiyun S5PC110_GPIO_MP244,
650*4882a593Smuzhiyun S5PC110_GPIO_MP245,
651*4882a593Smuzhiyun S5PC110_GPIO_MP246,
652*4882a593Smuzhiyun S5PC110_GPIO_MP247,
653*4882a593Smuzhiyun S5PC110_GPIO_MP250,
654*4882a593Smuzhiyun S5PC110_GPIO_MP251,
655*4882a593Smuzhiyun S5PC110_GPIO_MP252,
656*4882a593Smuzhiyun S5PC110_GPIO_MP253,
657*4882a593Smuzhiyun S5PC110_GPIO_MP254,
658*4882a593Smuzhiyun S5PC110_GPIO_MP255,
659*4882a593Smuzhiyun S5PC110_GPIO_MP256,
660*4882a593Smuzhiyun S5PC110_GPIO_MP257,
661*4882a593Smuzhiyun S5PC110_GPIO_MP260,
662*4882a593Smuzhiyun S5PC110_GPIO_MP261,
663*4882a593Smuzhiyun S5PC110_GPIO_MP262,
664*4882a593Smuzhiyun S5PC110_GPIO_MP263,
665*4882a593Smuzhiyun S5PC110_GPIO_MP264,
666*4882a593Smuzhiyun S5PC110_GPIO_MP265,
667*4882a593Smuzhiyun S5PC110_GPIO_MP266,
668*4882a593Smuzhiyun S5PC110_GPIO_MP267,
669*4882a593Smuzhiyun S5PC110_GPIO_MP270,
670*4882a593Smuzhiyun S5PC110_GPIO_MP271,
671*4882a593Smuzhiyun S5PC110_GPIO_MP272,
672*4882a593Smuzhiyun S5PC110_GPIO_MP273,
673*4882a593Smuzhiyun S5PC110_GPIO_MP274,
674*4882a593Smuzhiyun S5PC110_GPIO_MP275,
675*4882a593Smuzhiyun S5PC110_GPIO_MP276,
676*4882a593Smuzhiyun S5PC110_GPIO_MP277,
677*4882a593Smuzhiyun S5PC110_GPIO_MP280,
678*4882a593Smuzhiyun S5PC110_GPIO_MP281,
679*4882a593Smuzhiyun S5PC110_GPIO_MP282,
680*4882a593Smuzhiyun S5PC110_GPIO_MP283,
681*4882a593Smuzhiyun S5PC110_GPIO_MP284,
682*4882a593Smuzhiyun S5PC110_GPIO_MP285,
683*4882a593Smuzhiyun S5PC110_GPIO_MP286,
684*4882a593Smuzhiyun S5PC110_GPIO_MP287,
685*4882a593Smuzhiyun S5PC110_GPIO_H00,
686*4882a593Smuzhiyun S5PC110_GPIO_H01,
687*4882a593Smuzhiyun S5PC110_GPIO_H02,
688*4882a593Smuzhiyun S5PC110_GPIO_H03,
689*4882a593Smuzhiyun S5PC110_GPIO_H04,
690*4882a593Smuzhiyun S5PC110_GPIO_H05,
691*4882a593Smuzhiyun S5PC110_GPIO_H06,
692*4882a593Smuzhiyun S5PC110_GPIO_H07,
693*4882a593Smuzhiyun S5PC110_GPIO_H10,
694*4882a593Smuzhiyun S5PC110_GPIO_H11,
695*4882a593Smuzhiyun S5PC110_GPIO_H12,
696*4882a593Smuzhiyun S5PC110_GPIO_H13,
697*4882a593Smuzhiyun S5PC110_GPIO_H14,
698*4882a593Smuzhiyun S5PC110_GPIO_H15,
699*4882a593Smuzhiyun S5PC110_GPIO_H16,
700*4882a593Smuzhiyun S5PC110_GPIO_H17,
701*4882a593Smuzhiyun S5PC110_GPIO_H20,
702*4882a593Smuzhiyun S5PC110_GPIO_H21,
703*4882a593Smuzhiyun S5PC110_GPIO_H22,
704*4882a593Smuzhiyun S5PC110_GPIO_H23,
705*4882a593Smuzhiyun S5PC110_GPIO_H24,
706*4882a593Smuzhiyun S5PC110_GPIO_H25,
707*4882a593Smuzhiyun S5PC110_GPIO_H26,
708*4882a593Smuzhiyun S5PC110_GPIO_H27,
709*4882a593Smuzhiyun S5PC110_GPIO_H30,
710*4882a593Smuzhiyun S5PC110_GPIO_H31,
711*4882a593Smuzhiyun S5PC110_GPIO_H32,
712*4882a593Smuzhiyun S5PC110_GPIO_H33,
713*4882a593Smuzhiyun S5PC110_GPIO_H34,
714*4882a593Smuzhiyun S5PC110_GPIO_H35,
715*4882a593Smuzhiyun S5PC110_GPIO_H36,
716*4882a593Smuzhiyun S5PC110_GPIO_H37,
717*4882a593Smuzhiyun
718*4882a593Smuzhiyun S5PC110_GPIO_MAX_PORT
719*4882a593Smuzhiyun };
720*4882a593Smuzhiyun
721*4882a593Smuzhiyun struct gpio_info {
722*4882a593Smuzhiyun unsigned int reg_addr; /* Address of register for this part */
723*4882a593Smuzhiyun unsigned int max_gpio; /* Maximum GPIO in this part */
724*4882a593Smuzhiyun };
725*4882a593Smuzhiyun
726*4882a593Smuzhiyun #define S5PC100_GPIO_NUM_PARTS 1
727*4882a593Smuzhiyun static struct gpio_info s5pc100_gpio_data[S5PC100_GPIO_NUM_PARTS] = {
728*4882a593Smuzhiyun { S5PC100_GPIO_BASE, S5PC100_GPIO_MAX_PORT },
729*4882a593Smuzhiyun };
730*4882a593Smuzhiyun
731*4882a593Smuzhiyun #define S5PC110_GPIO_NUM_PARTS 1
732*4882a593Smuzhiyun static struct gpio_info s5pc110_gpio_data[S5PC110_GPIO_NUM_PARTS] = {
733*4882a593Smuzhiyun { S5PC110_GPIO_BASE, S5PC110_GPIO_MAX_PORT },
734*4882a593Smuzhiyun };
735*4882a593Smuzhiyun
get_gpio_data(void)736*4882a593Smuzhiyun static inline struct gpio_info *get_gpio_data(void)
737*4882a593Smuzhiyun {
738*4882a593Smuzhiyun if (cpu_is_s5pc100())
739*4882a593Smuzhiyun return s5pc100_gpio_data;
740*4882a593Smuzhiyun else if (cpu_is_s5pc110())
741*4882a593Smuzhiyun return s5pc110_gpio_data;
742*4882a593Smuzhiyun
743*4882a593Smuzhiyun return NULL;
744*4882a593Smuzhiyun }
745*4882a593Smuzhiyun
get_bank_num(void)746*4882a593Smuzhiyun static inline unsigned int get_bank_num(void)
747*4882a593Smuzhiyun {
748*4882a593Smuzhiyun if (cpu_is_s5pc100())
749*4882a593Smuzhiyun return S5PC100_GPIO_NUM_PARTS;
750*4882a593Smuzhiyun else if (cpu_is_s5pc110())
751*4882a593Smuzhiyun return S5PC110_GPIO_NUM_PARTS;
752*4882a593Smuzhiyun
753*4882a593Smuzhiyun return 0;
754*4882a593Smuzhiyun }
755*4882a593Smuzhiyun
756*4882a593Smuzhiyun /*
757*4882a593Smuzhiyun * This structure helps mapping symbolic GPIO names into indices from
758*4882a593Smuzhiyun * exynos5_gpio_pin/exynos5420_gpio_pin enums.
759*4882a593Smuzhiyun *
760*4882a593Smuzhiyun * By convention, symbolic GPIO name is defined as follows:
761*4882a593Smuzhiyun *
762*4882a593Smuzhiyun * g[p]<bank><set><bit>, where
763*4882a593Smuzhiyun * p is optional
764*4882a593Smuzhiyun * <bank> - a single character bank name, as defined by the SOC
765*4882a593Smuzhiyun * <set> - a single digit set number
766*4882a593Smuzhiyun * <bit> - bit number within the set (in 0..7 range).
767*4882a593Smuzhiyun *
768*4882a593Smuzhiyun * <set><bit> essentially form an octal number of the GPIO pin within the bank
769*4882a593Smuzhiyun * space. On the 5420 architecture some banks' sets do not start not from zero
770*4882a593Smuzhiyun * ('d' starts from 1 and 'j' starts from 4). To compensate for that and
771*4882a593Smuzhiyun * maintain flat number space withoout holes, those banks use offsets to be
772*4882a593Smuzhiyun * deducted from the pin number.
773*4882a593Smuzhiyun */
774*4882a593Smuzhiyun struct gpio_name_num_table {
775*4882a593Smuzhiyun char bank; /* bank name symbol */
776*4882a593Smuzhiyun u8 bank_size; /* total number of pins in the bank */
777*4882a593Smuzhiyun char bank_offset; /* offset of the first bank's pin */
778*4882a593Smuzhiyun unsigned int base; /* index of the first bank's pin in the enum */
779*4882a593Smuzhiyun };
780*4882a593Smuzhiyun
781*4882a593Smuzhiyun #define GPIO_PER_BANK 8
782*4882a593Smuzhiyun #define GPIO_ENTRY(name, base, top, offset) { name, top - base, offset, base }
783*4882a593Smuzhiyun static const struct gpio_name_num_table s5pc100_gpio_table[] = {
784*4882a593Smuzhiyun GPIO_ENTRY('a', S5PC100_GPIO_A00, S5PC100_GPIO_B0, 0),
785*4882a593Smuzhiyun GPIO_ENTRY('b', S5PC100_GPIO_B0, S5PC100_GPIO_C0, 0),
786*4882a593Smuzhiyun GPIO_ENTRY('c', S5PC100_GPIO_C0, S5PC100_GPIO_D0, 0),
787*4882a593Smuzhiyun GPIO_ENTRY('d', S5PC100_GPIO_D0, S5PC100_GPIO_E00, 0),
788*4882a593Smuzhiyun GPIO_ENTRY('e', S5PC100_GPIO_E00, S5PC100_GPIO_F00, 0),
789*4882a593Smuzhiyun GPIO_ENTRY('f', S5PC100_GPIO_F00, S5PC100_GPIO_G00, 0),
790*4882a593Smuzhiyun GPIO_ENTRY('g', S5PC100_GPIO_G00, S5PC100_GPIO_I0, 0),
791*4882a593Smuzhiyun GPIO_ENTRY('i', S5PC100_GPIO_I0, S5PC100_GPIO_J00, 0),
792*4882a593Smuzhiyun GPIO_ENTRY('j', S5PC100_GPIO_J00, S5PC100_GPIO_K00, 0),
793*4882a593Smuzhiyun GPIO_ENTRY('k', S5PC100_GPIO_K00, S5PC100_GPIO_L00, 0),
794*4882a593Smuzhiyun GPIO_ENTRY('l', S5PC100_GPIO_L00, S5PC100_GPIO_H00, 0),
795*4882a593Smuzhiyun GPIO_ENTRY('h', S5PC100_GPIO_H00, S5PC100_GPIO_MAX_PORT, 0),
796*4882a593Smuzhiyun { 0 }
797*4882a593Smuzhiyun };
798*4882a593Smuzhiyun
799*4882a593Smuzhiyun static const struct gpio_name_num_table s5pc110_gpio_table[] = {
800*4882a593Smuzhiyun GPIO_ENTRY('a', S5PC110_GPIO_A00, S5PC110_GPIO_B0, 0),
801*4882a593Smuzhiyun GPIO_ENTRY('b', S5PC110_GPIO_B0, S5PC110_GPIO_C00, 0),
802*4882a593Smuzhiyun GPIO_ENTRY('c', S5PC110_GPIO_C00, S5PC110_GPIO_D00, 0),
803*4882a593Smuzhiyun GPIO_ENTRY('d', S5PC110_GPIO_D00, S5PC110_GPIO_E00, 0),
804*4882a593Smuzhiyun GPIO_ENTRY('e', S5PC110_GPIO_E00, S5PC110_GPIO_F00, 0),
805*4882a593Smuzhiyun GPIO_ENTRY('f', S5PC110_GPIO_F00, S5PC110_GPIO_G00, 0),
806*4882a593Smuzhiyun GPIO_ENTRY('g', S5PC110_GPIO_G00, S5PC110_GPIO_I0, 0),
807*4882a593Smuzhiyun GPIO_ENTRY('i', S5PC110_GPIO_I0, S5PC110_GPIO_J00, 0),
808*4882a593Smuzhiyun GPIO_ENTRY('j', S5PC110_GPIO_J00, S5PC110_GPIO_MP010, 0),
809*4882a593Smuzhiyun GPIO_ENTRY('h', S5PC110_GPIO_H00, S5PC110_GPIO_MAX_PORT, 0),
810*4882a593Smuzhiyun { 0 }
811*4882a593Smuzhiyun };
812*4882a593Smuzhiyun
813*4882a593Smuzhiyun /* functions */
814*4882a593Smuzhiyun void gpio_cfg_pin(int gpio, int cfg);
815*4882a593Smuzhiyun void gpio_set_pull(int gpio, int mode);
816*4882a593Smuzhiyun void gpio_set_drv(int gpio, int mode);
817*4882a593Smuzhiyun void gpio_set_rate(int gpio, int mode);
818*4882a593Smuzhiyun int s5p_gpio_get_pin(unsigned gpio);
819*4882a593Smuzhiyun
820*4882a593Smuzhiyun /* GPIO pins per bank */
821*4882a593Smuzhiyun #define GPIO_PER_BANK 8
822*4882a593Smuzhiyun #endif
823*4882a593Smuzhiyun
824*4882a593Smuzhiyun /* Pin configurations */
825*4882a593Smuzhiyun #define S5P_GPIO_INPUT 0x0
826*4882a593Smuzhiyun #define S5P_GPIO_OUTPUT 0x1
827*4882a593Smuzhiyun #define S5P_GPIO_IRQ 0xf
828*4882a593Smuzhiyun #define S5P_GPIO_FUNC(x) (x)
829*4882a593Smuzhiyun
830*4882a593Smuzhiyun /* Pull mode */
831*4882a593Smuzhiyun #define S5P_GPIO_PULL_NONE 0x0
832*4882a593Smuzhiyun #define S5P_GPIO_PULL_DOWN 0x1
833*4882a593Smuzhiyun #define S5P_GPIO_PULL_UP 0x2
834*4882a593Smuzhiyun
835*4882a593Smuzhiyun /* Drive Strength level */
836*4882a593Smuzhiyun #define S5P_GPIO_DRV_1X 0x0
837*4882a593Smuzhiyun #define S5P_GPIO_DRV_3X 0x1
838*4882a593Smuzhiyun #define S5P_GPIO_DRV_2X 0x2
839*4882a593Smuzhiyun #define S5P_GPIO_DRV_4X 0x3
840*4882a593Smuzhiyun #define S5P_GPIO_DRV_FAST 0x0
841*4882a593Smuzhiyun #define S5P_GPIO_DRV_SLOW 0x1
842*4882a593Smuzhiyun
843*4882a593Smuzhiyun #endif
844