aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-exynos/include/mach/gpio-rev00-m0.h
blob: cd778f2926c4401da2a9205ab5b92d122efff977 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
#ifndef __MACH_GPIO_MIDAS_H
#define __MACH_GPIO_MIDAS_H __FILE__

#include <mach/gpio.h>

extern void midas_config_gpio_table(void);
extern void midas_config_sleep_gpio_table(void);

#define GPIO_eMMC_EN		EXYNOS4_GPK0(2)

#define GPIO_BOOT_MODE		EXYNOS4_GPX0(3)

#define GPIO_FM_I2S_CLK		EXYSNO4_GPC0(0)
#define GPIO_FM_I2S_SYNC	EXYSNO4_GPC0(2)
#define GPIO_FM_I2S_DI		EXYSNO4_GPC0(3)
#define GPIO_FM_I2S_DO		EXYSNO4_GPC0(4)

#define GPIO_IF_PMIC_SDA	EXYNOS4212_GPM2(0)
#define GPIO_IF_PMIC_SCL	EXYNOS4212_GPM2(1)
#define GPIO_PMIC_SDA		EXYNOS4_GPB(2)
#define GPIO_PMIC_SCL		EXYNOS4_GPB(3)

#define GPIO_FM_SCL		EXYNOS4_GPY0(2)
#define GPIO_FM_SDA		EXYNOS4_GPY0(3)
#define GPIO_ADC_INT		EXYNOS4_GPX2(4)	/* rev0.0, 0.1 */

#define GPIO_CAM_SPI_SCLK	EXYNOS4_GPB(4)
#define GPIO_CAM_SPI_SSN	EXYNOS4_GPB(5)
#define GPIO_CAM_SPI_MISO	EXYNOS4_GPB(6)
#define GPIO_CAM_SPI_MOSI	EXYNOS4_GPB(7)

#define GPIO_CAM_MCLK		EXYNOS4212_GPJ1(3)
#define GPIO_VTCAM_MCLK		EXYNOS4212_GPM2(2)

#define GPIO_ISP_STANDBY	EXYNOS4212_GPM0(1)
#define GPIO_CAM_IO_EN		EXYNOS4212_GPM0(2)
#define GPIO_ISP_CORE_EN	EXYNOS4212_GPM0(3)
#define GPIO_CAM_AF_EN		EXYNOS4212_GPM0(4)
#define GPIO_CAM_VT_nRST	EXYNOS4212_GPM1(6)

#if 1
#define GPIO_8M_CAM_SCL_18V	EXYNOS4_GPD1(0)
#define GPIO_8M_CAM_SDA_18V	EXYNOS4_GPD1(1)
#else
#define GPIO_8M_CAM_SCL_18V	EXYNOS4212_GPM4(0)
#define GPIO_8M_CAM_SDA_18V	EXYNOS4212_GPM4(1)
#define GPIO_8M_CAM_SCL_18V_00	EXYNOS4_GPD1(0)
#define GPIO_8M_CAM_SDA_18V_00	EXYNOS4_GPD1(1)
#endif

#define GPIO_VT_CAM_SCL_18V	EXYNOS4212_GPM4(2)
#define GPIO_VT_CAM_SDA_18V	EXYNOS4212_GPM4(3)
#define GPIO_VT_CAM_ID		EXYNOS4_GPF1(2)

/* Sensors & NFC*/
#define GPIO_PS_ALS_EN		EXYNOS4212_GPJ0(5)
#define GPIO_PS_ALS_SDA_28V	EXYNOS4_GPK1(1)
#define GPIO_PS_ALS_SCL_28V	EXYNOS4_GPK2(2)
#define GPIO_PS_ALS_INT		EXYNOS4_GPX0(2)

#define GPIO_ACC_INT		EXYNOS4_GPX0(0)

#define GPIO_GYRO_DE		EXYNOS4_GPL2(0)
#define GPIO_GPS_nRST		EXYNOS4_GPL2(1)
#define GPIO_GPS_PWR_EN		EXYNOS4_GPL2(2)

#define GPIO_GYRO_INT		EXYNOS4_GPF0(3)
#define GPIO_GSENSE_SDA_18V	EXYNOS4_GPD1(2)
#define GPIO_GSENSE_SCL_18V	EXYNOS4_GPD1(3)

#define GPIO_MSENSOR_INT	EXYNOS4212_GPJ0(7)
#define GPIO_MSENSOR_SDA_18V	EXYNOS4_GPY2(4)
#define GPIO_MSENSOR_SCL_18V	EXYNOS4_GPY2(5)
#define GPIO_MSENSE_RST_N	EXYNOS4_GPC1(1)

#define GPIO_BENSE_SCL_18V	EXYNOS4_GPY2(3)
#define GPIO_BSENSE_SDA_18V	EXYNOS4_GPY2(2)
#define GPIO_BARO_INT		EXYNOS4_GPF0(5)

#define GPIO_TF_EN		EXYNOS4_GPY2(0)
#define GPIO_NFC_SCL_18V	EXYNOS4_GPZ(6)
#define GPIO_NFC_SDA_18V	EXYNOS4_GPZ(5)
#define GPIO_NFC_SCL_18V_00	EXYNOS4_GPB(3)
#define GPIO_NFC_SDA_18V_00	EXYNOS4_GPB(2)
#define GPIO_NFC_IRQ		EXYNOS4_GPX1(7)
#define GPIO_NFC_EN		EXYNOS4_GPL2(6)
#define GPIO_NFC_FIRMWARE	EXYNOS4_GPL2(7)
#define GPIO_NFC_CLK_REQ	EXYNOS4212_GPM0(0)
/* Sensors & NFC*/

#define GPIO_DET_35		EXYNOS4_GPX0(1)

#define GPIO_MIC_BIAS_EN	EXYNOS4_GPF1(7)
#define GPIO_SUB_MIC_BIAS_EN	EXYNOS4_GPF2(0)
#define GPIO_THIRD_MIC_BIAS_EN	EXYNOS4212_GPJ0(2)

#define GPIO_PMU_RST		EXYNOS4_GPX3(2)

#define GPIO_PMIC_IRQ		EXYNOS4_GPX0(7)
#define GPIO_IF_PMIC_IRQ	EXYNOS4_GPX1(5)

#define GPIO_TSP_INT		EXYNOS4212_GPM2(3)
#define GPIO_TSP_SDA_18V	EXYNOS4_GPA1(2)
#define GPIO_TSP_SCL_18V	EXYNOS4_GPA1(3)

#define GPIO_BT_EN		EXYNOS4_GPL0(6)
#define GPIO_BT_WAKE		EXYNOS4_GPX3(1)
#define GPIO_BT_HOST_WAKE	EXYNOS4_GPX2(6)
#define IRQ_BT_HOST_WAKE	IRQ_EINT(22)

#define GPIO_BT_RXD		EXYNOS4_GPA0(0)
#define GPIO_BT_RXD_AF		2

#define GPIO_BT_TXD		EXYNOS4_GPA0(1)
#define GPIO_BT_TXD_AF		2

#define GPIO_BT_CTS		EXYNOS4_GPA0(2)
#define GPIO_BT_CTS_AF		2

#define GPIO_BT_RTS		EXYNOS4_GPA0(3)
#define GPIO_BT_RTS_AF		2

#define GPIO_GPS_RXD		EXYNOS4_GPA0(4)
#define GPIO_GPS_RXD_AF		2

#define GPIO_GPS_TXD		EXYNOS4_GPA0(5)
#define GPIO_GPS_TXD_AF		2

#define GPIO_GPS_CTS		EXYNOS4_GPA0(6)
#define GPIO_GPS_CTS_AF		2

#define GPIO_GPS_RTS		EXYNOS4_GPA0(7)
#define GPIO_GPS_RTS_AF		2

#define GPIO_FLM_RXD		EXYNOS4_GPA1(4)
#define GPIO_FLM_RXD_AF		2

#define GPIO_FLM_TXD		EXYNOS4_GPA1(5)
#define GPIO_FLM_TXD_AF		2

#define GPIO_3_TOUCH_SCL	EXYNOS4_GPL0(1)
#define GPIO_3_TOUCH_SDA	EXYNOS4_GPL0(2)
#define GPIO_HDMI_EN		EXYNOS4_GPL0(4)
#define GPIO_3_TOUCH_INT	EXYNOS4212_GPJ0(3)
#define GPIO_3_TOUCH_EN		EXYNOS4212_GPM0(0)

#define GPIO_PWM0		EXYNOS4_GPD0(0)
#define GPIO_PWM1		EXYNOS4_GPD0(1)
#define GPIO_PWM2		EXYNOS4_GPD0(2)
#define GPIO_PWM3		EXYNOS4_GPD0(3)

#define GPIO_VIBTONE_EN		EXYNOS4212_GPJ0(6)

#define GPIO_WLAN_EN		EXYNOS4212_GPJ0(0)
#define GPIO_WLAN_EN_AF		1
#define GPIO_WLAN_HOST_WAKE	EXYNOS4_GPX2(5)
#define GPIO_WLAN_HOST_WAKE_AF	0xF
#define GPIO_WLAN_SDIO_CLK	EXYNOS4_GPK3(0)
#define GPIO_WLAN_SDIO_CLK_AF	2
#define GPIO_WLAN_SDIO_CMD	EXYNOS4_GPK3(1)
#define GPIO_WLAN_SDIO_CMD_AF	2
#define GPIO_WLAN_SDIO_D0	EXYNOS4_GPK3(3)
#define GPIO_WLAN_SDIO_D0_AF	2
#define GPIO_WLAN_SDIO_D1	EXYNOS4_GPK3(4)
#define GPIO_WLAN_SDIO_D1_AF	2
#define GPIO_WLAN_SDIO_D2	EXYNOS4_GPK3(5)
#define GPIO_WLAN_SDIO_D2_AF	2
#define GPIO_WLAN_SDIO_D3	EXYNOS4_GPK3(6)
#define GPIO_WLAN_SDIO_D3_AF	2

#define GPIO_USB_SEL		EXYNOS4212_GPJ0(1)

#define GPIO_LCD_22V_EN		EXYNOS4212_GPM4(4)
#define GPIO_LCD_22V_EN_00		EXYNOS4_GPC0(1)

#define GPIO_ISP_TXD		EXYNOS4212_GPM4(5)
#define GPIO_ISP_RXD		EXYNOS4212_GPM4(6)

#define GPIO_TA_EN		EXYNOS4_GPL2(2)

#define GPIO_MHL_SEL		EXYNOS4_GPL0(3)

#define GPIO_MHL_SDA_1_8V	EXYNOS4_GPF0(4)
#define GPIO_MHL_SCL_1_8V	EXYNOS4_GPF0(6)
#define GPIO_MHL_SDA_1_8V_00	EXYNOS4_GPB(2)
#define GPIO_MHL_SCL_1_8V_00	EXYNOS4_GPB(3)

#define GPIO_OTG_EN		EXYNOS4_GPF0(7)

#define GPIO_OLED_ID		EXYNOS4_GPF1(0)
#define GPIO_ISP_RESET		EXYNOS4_GPF1(3)
#define GPIO_FUEL_SCL		EXYNOS4_GPF1(4)
#define GPIO_FUEL_SDA		EXYNOS4_GPF1(5)

#define GPIO_MLCD_RST		EXYNOS4_GPF2(1)
#define GPIO_UART_SEL		EXYNOS4_GPF2(3)
#define GPIO_S_LED_I2C_SCL	EXYNOS4_GPF2(6)
#define GPIO_S_LED_I2C_SDA	EXYNOS4_GPF2(7)
#define GPIO_OLED_DET		EXYNOS4_GPF3(0)

#define GPIO_PMIC_DVS1		EXYNOS4212_GPM3(0)
#define GPIO_PMIC_DVS2		EXYNOS4212_GPM3(1)

/* Definitions for Sii 9244B0 */
#define GPIO_PMIC_DVS3		EXYNOS4212_GPM3(2)
#define GPIO_BUCK2_SEL		EXYNOS4_GPF3(1)
#define GPIO_BUCK3_SEL		EXYNOS4_GPF3(2)
#define GPIO_BUCK4_SEL		EXYNOS4_GPF3(3)
#define GPIO_MHL_RST		EXYNOS4_GPF3(4)
#define GPIO_MHL_INT		EXYNOS4_GPF3(5)
#define GPIO_MHL_INT_AF		S3C_GPIO_SFN(0xF)
#define GPIO_MHL_WAKE_UP	EXYNOS4212_GPJ1(4)

#define GPIO_RGB_SDA_1_8V	EXYNOS4_GPF0(0)
#define GPIO_RGB_SCL_1_8V	EXYNOS4_GPF0(1)
#define GPIO_RGB_INT		EXYNOS4_GPX2(2)
#define GPIO_VOL_UP		EXYNOS4212_GPJ1(1)
#define GPIO_VOL_DOWN		EXYNOS4212_GPJ1(2)
#define GPIO_VOL_UP_00		EXYNOS4_GPX2(2)
#define GPIO_VOL_DOWN_00	EXYNOS4_GPX3(3)

#define GPIO_CAM_SW_EN		EXYNOS4212_GPJ1(0)
#define GPIO_TORCH_EN		EXYNOS4212_GPJ1(1)
#define GPIO_TORCH_SET		EXYNOS4212_GPJ1(2)

#define GPIO_MHL_DSCL_2_8V	EXYNOS4_GPK1(0)
#define GPIO_MHL_DSDA_2_8V	EXYNOS4_GPK1(2)

#define MHL_INT_IRQ		gpio_to_irq(GPIO_MHL_INT)
#define MHL_WAKEUP_IRQ		gpio_to_irq(GPIO_MHL_WAKE_UP)

#define GPIO_HDMI_CEC		EXYNOS4_GPX3(6)
#define GPIO_HDMI_HPD		EXYNOS4_GPX3(7)

#define GPIO_nPOWER		EXYNOS4_GPX2(7)
#define GPIO_OK_KEY		EXYNOS4_GPX3(5)

#define GPIO_FUEL_ALERT		EXYNOS4_GPX2(3)

#define GPIO_V_BUS_INT		EXYNOS4_GPX2(4)	/* rev0.9 ~ */
#define GPIO_WPC_INT		EXYNOS4_GPX3(0)

#define GPIO_VIBTONE_PWM	EXYNOS4_GPD0(1)

#define GPIO_VIBTONE_PWM	EXYNOS4_GPD0(1)

#define GPIO_CODEC_SDA_18V	EXYNOS4_GPD0(2)
#define GPIO_CODEC_SCL_18V	EXYNOS4_GPD0(3)
#define GPIO_CODEC_SDA_18V_00		EXYNOS4_GPB(0)
#define GPIO_CODEC_SCL_18V_00		EXYNOS4_GPB(1)


#define GPIO_CODEC_LDO_EN	EXYNOS4212_GPJ0(4)

#define GPIO_WM8994_LDO		EXYNOS4212_GPJ0(4)

/* Modem Interface GPIOs - M0 HSIC */
#if !defined(CONFIG_SEC_MODEM_M0_TD)
#define GPIO_ACTIVE_STATE	EXYNOS4_GPF1(1)
#define GPIO_PDA_ACTIVE		EXYNOS4_GPF1(6)
#define GPIO_PHONE_ON		EXYNOS4_GPL2(5)
#define GPIO_SUSPEND_REQUEST	EXYNOS4212_GPM2(4)
#define GPIO_CP_REQ_RESET	EXYNOS4212_GPM3(3)
#define GPIO_GPS_CNTL		EXYNOS4212_GPM3(4)
#define GPIO_IPC_SLAVE_WAKEUP	EXYNOS4_GPX1(0)
#define GPIO_IPC_HOST_WAKEUP	EXYNOS4_GPX1(1)
#define GPIO_CP_DUMP_INT	EXYNOS4_GPX1(2)
#define GPIO_PHONE_ACTIVE	EXYNOS4_GPX1(6)
#define GPIO_CP_RST		EXYNOS4_GPX3(2)
#define GPIO_AP_DUMP_INT	EXYNOS4212_GPJ0(1)

#define GPIO_FM_RST EXYNOS4_GPC1(1)
#else

/* Modem Interface GPIOs - M0 SPI */
#define GPIO_PDA_ACTIVE	EXYNOS4_GPF1(6)
#define GPIO_PHONE_ON	EXYNOS4_GPL2(5)
#define GPIO_PHONE_ACTIVE	EXYNOS4_GPX1(6)
#define GPIO_AP_CP_INT1	EXYNOS4_GPX0(5)
#define GPIO_AP_CP_INT2	EXYNOS4_GPX3(5)
#define GPIO_CP_DUMP_INT	EXYNOS4_GPX1(2)
#define GPIO_IPC_MRDY	EXYNOS4_GPX0(4)
#define GPIO_IPC_SRDY	EXYNOS4_GPX1(0)
#define GPIO_IPC_SUB_MRDY	EXYNOS4_GPX3(2)
#define GPIO_IPC_SUB_SRDY	EXYNOS4_GPX1(1)

#define GPIO_CP_RST	EXYNOS4_GPF1(1)
#define GPIO_CP_REQ_RESET	EXYNOS4_GPF1(1)
#define GPIO_IPC_SLAVE_WAKEUP	EXYNOS4_GPX2(0)
#define GPIO_IPC_HOST_WAKEUP	EXYNOS4_GPX2(0)
#define GPIO_SUSPEND_REQUEST	EXYNOS4_GPF1(1)
#define GPIO_ISP_INT		EXYNOS4_GPF1(1)
#define GPIO_ACTIVE_STATE	EXYNOS4_GPF1(1)

#define GPIO_FM_RST	EXYNOS4_GPC1(0)

#define IRQ_IPC_SRDY		IRQ_EINT8
#define IRQ_PHONE_ACTIVE	IRQ_EINT14
#define IRQ_IPC_SRDY		IRQ_EINT8
#define IRQ_IPC_SUB_SRDY	IRQ_EINT9
#define IRQ_CP_DUMP_INT	IRQ_EINT10
#endif

#define GPIO_OK_KEY_ANDROID	EXYNOS4_GPX0(1)		/*system_rev == 11*/
#define GPIO_OK_KEY_ANDROID_F EXYNOS4_GPX1(3)	/*system_rev >= 15*/

#define GPIO_FM_INT_REV15	EXYNOS4_GPX1(4)
#define GPIO_FM_INT_REV07	EXYNOS4_GPX1(3)
#define GPIO_FM_INT		EXYNOS4_GPX1(3)
#define GPIO_FM_MIC_SW		EXYNOS4_GPL0(3)

#if defined(CONFIG_TDMB) || defined(CONFIG_TDMB_MODULE)
#define GPIO_TDMB_EN		EXYNOS4_GPL0(0)
#define GPIO_TDMB_INT		EXYNOS4_GPF0(2)
#define GPIO_TDMB_IRQ		gpio_to_irq(GPIO_TDMB_INT)
#define GPIO_TDMB_INT_AF	0xf
#define GPIO_TDMB_SPI_CLK	EXYNOS4_GPC1(1)
#define GPIO_TDMB_SPI_CS	EXYNOS4_GPC1(2)
#define GPIO_TDMB_SPI_MISO	EXYNOS4_GPC1(3)
#define GPIO_TDMB_SPI_MOSI	EXYNOS4_GPC1(4)
#endif

#endif /* __MACH_GPIO_MIDAS_H */