blob: d94295c6746087a819dda567eb13225746e9ac04 [file] [log] [blame]
Greg Kroah-Hartmanb2441312017-11-01 15:07:57 +01001/* SPDX-License-Identifier: GPL-2.0 */
Robert Jarzmikeda6f6e2008-08-17 09:34:30 +01002#ifndef _MIOA701_H_
3#define _MIOA701_H_
4
5#define MIO_CFG_IN(pin, af) \
6 ((MFP_CFG_DEFAULT & ~(MFP_AF_MASK | MFP_DIR_MASK)) |\
7 (MFP_PIN(pin) | MFP_##af | MFP_DIR_IN))
8
9#define MIO_CFG_OUT(pin, af, state) \
10 ((MFP_CFG_DEFAULT & ~(MFP_AF_MASK | MFP_DIR_MASK | MFP_LPM_STATE_MASK)) |\
11 (MFP_PIN(pin) | MFP_##af | MFP_DIR_OUT | MFP_LPM_##state))
12
13/* Global GPIOs */
Robert Jarzmikc96763d2008-11-18 20:23:32 +010014#define GPIO9_CHARGE_EN 9
Robert Jarzmikeda6f6e2008-08-17 09:34:30 +010015#define GPIO18_POWEROFF 18
16#define GPIO87_LCD_POWER 87
Robert Jarzmikc96763d2008-11-18 20:23:32 +010017#define GPIO96_AC_DETECT 96
18#define GPIO80_MAYBE_CHARGE_VDROP 80 /* Drop of 88mV */
Robert Jarzmikeda6f6e2008-08-17 09:34:30 +010019
20/* USB */
Robert Jarzmikc96763d2008-11-18 20:23:32 +010021#define GPIO13_nUSB_DETECT 13
Robert Jarzmikeda6f6e2008-08-17 09:34:30 +010022#define GPIO22_USB_ENABLE 22
23
24/* SDIO bits */
25#define GPIO78_SDIO_RO 78
26#define GPIO15_SDIO_INSERT 15
27#define GPIO91_SDIO_EN 91
28
29/* Bluetooth */
Robert Jarzmikc96763d2008-11-18 20:23:32 +010030#define GPIO14_BT_nACTIVITY 14
Robert Jarzmikeda6f6e2008-08-17 09:34:30 +010031#define GPIO83_BT_ON 83
Robert Jarzmikc96763d2008-11-18 20:23:32 +010032#define GPIO77_BT_UNKNOWN1 77
33#define GPIO86_BT_MAYBE_nRESET 86
Robert Jarzmikeda6f6e2008-08-17 09:34:30 +010034
35/* GPS */
36#define GPIO23_GPS_UNKNOWN1 23
37#define GPIO26_GPS_ON 26
38#define GPIO27_GPS_RESET 27
39#define GPIO106_GPS_UNKNOWN2 106
40#define GPIO107_GPS_UNKNOWN3 107
41
42/* GSM */
43#define GPIO24_GSM_MOD_RESET_CMD 24
44#define GPIO88_GSM_nMOD_ON_CMD 88
45#define GPIO90_GSM_nMOD_OFF_CMD 90
46#define GPIO114_GSM_nMOD_DTE_UART_STATE 114
47#define GPIO25_GSM_MOD_ON_STATE 25
48#define GPIO113_GSM_EVENT 113
49
50/* SOUND */
51#define GPIO12_HPJACK_INSERT 12
52
53/* LEDS */
54#define GPIO10_LED_nCharging 10
55#define GPIO97_LED_nBlue 97
56#define GPIO98_LED_nOrange 98
57#define GPIO82_LED_nVibra 82
58#define GPIO115_LED_nKeyboard 115
59
60/* Keyboard */
61#define GPIO0_KEY_POWER 0
62#define GPIO93_KEY_VOLUME_UP 93
63#define GPIO94_KEY_VOLUME_DOWN 94
64
Robert Jarzmikc2219e42012-04-22 23:24:00 +020065/* Camera */
66#define GPIO56_MT9M111_nOE 56
67
Robert Jarzmikeda6f6e2008-08-17 09:34:30 +010068extern struct input_dev *mioa701_evdev;
69extern void mioa701_gpio_lpm_set(unsigned long mfp_pin);
70
71/* Assembler externals mioa701_bootresume.S */
72extern u32 mioa701_bootstrap;
73extern u32 mioa701_jumpaddr;
74extern u32 mioa701_bootstrap_lg;
75
76#endif /* _MIOA701_H */