2 * include/asm-arm/arch-pxa/magician-gpio.h
5 * 2004-12-10 Michael Opdenacker. Wrote down GPIO settings as identified by Jamey Hicks.
6 * Reused the h2200-gpio.h file as a template.
12 #include <asm/arch/pxa-regs.h>
14 #define GET_MAGICIAN_GPIO(gpio) \
15 (GPLR(GPIO_NR_MAGICIAN_ ## gpio) & GPIO_bit(GPIO_NR_MAGICIAN_ ## gpio))
17 #define SET_MAGICIAN_GPIO(gpio, setp) \
20 GPSR(GPIO_NR_MAGICIAN_ ## gpio) = GPIO_bit(GPIO_NR_MAGICIAN_ ## gpio); \
22 GPCR(GPIO_NR_MAGICIAN_ ## gpio) = GPIO_bit(GPIO_NR_MAGICIAN_ ## gpio); \
25 #define SET_MAGICIAN_GPIO_N(gpio, setp) \
28 GPCR(GPIO_NR_MAGICIAN_ ## gpio ## _N) = GPIO_bit(GPIO_NR_MAGICIAN_ ## gpio ## _N); \
30 GPSR(GPIO_NR_MAGICIAN_ ## gpio ## _N) = GPIO_bit(GPIO_NR_MAGICIAN_ ## gpio ## _N); \
33 #define MAGICIAN_IRQ(gpio) \
34 IRQ_GPIO(GPIO_NR_MAGICIAN_ ## gpio)
36 #define GPIO_NR_MAGICIAN_KEY_ON 0
37 #define GPIO_NR_MAGICIAN_GP_RST_N 1
39 #define GPIO_NR_MAGICIAN_USB_DET 9
40 #define GPIO_NR_MAGICIAN_POWER_DET 10
42 #define GPIO_NR_MAGICIAN_CIF_DD7 12
44 #define GPIO_NR_MAGICIAN_CPLD_IRQ 13
46 #define GPIO_NR_MAGICIAN_SSPSFRM2 14
47 #define GPIO_NR_MAGICIAN_CS1_N 15
49 #define GPIO_NR_MAGICIAN_CIF_DD6 17
50 #define GPIO_NR_MAGICIAN_RDY 18
52 #define GPIO_NR_MAGICIAN_PHONE_START 19
54 #define GPIO_NR_MAGICIAN_VIBRA_PWR_ON 22
55 #define GPIO_NR_MAGICIAN_SPI_CLK 23
56 #define GPIO_NR_MAGICIAN_SPI_CS_N 24
57 #define GPIO_NR_MAGICIAN_SPI_DO 25
58 #define GPIO_NR_MAGICIAN_SPI_DI 26
60 #define GPIO_NR_MAGICIAN_USBC_DETECT 27
61 #define GPIO_NR_MAGICIAN_I2S_BCK 28
62 #define GPIO_NR_MAGICIAN_I2S_DIN 29
63 #define GPIO_NR_MAGICIAN_USB_CHARGE_N 31
64 #define GPIO_NR_MAGICIAN_I2S_SYNC 31
66 #define GPIO_NR_MAGICIAN_RS232_ON 32
67 #define GPIO_NR_MAGICIAN_CS5_N 33
69 #define GPIO_NR_MAGICIAN_COM_RXD 34
70 #define GPIO_NR_MAGICIAN_COM_CTS 35
71 #define GPIO_NR_MAGICIAN_KP_MKIN7 36 #COM_DCD
72 #define GPIO_NR_MAGICIAN_KEY_PHONE_HANGUP 37
73 #define GPIO_NR_MAGICIAN_KEY_CONTACTS 38
74 #define GPIO_NR_MAGICIAN_COM_TXD 39
75 #define GPIO_NR_MAGICIAN_KP_MKOUT6 40
76 #define GPIO_NR_MAGICIAN_COM_RTS 41
77 #define GPIO_NR_MAGICIAN_BT_RXD 42
78 #define GPIO_NR_MAGICIAN_BT_TXD 43
79 #define GPIO_NR_MAGICIAN_BT_UART_CTS 44
80 #define GPIO_NR_MAGICIAN_BT_UART_RTS 45
82 #define GPIO_NR_MAGICIAN_ST_RXD 46
83 #define GPIO_NR_MAGICIAN_ST_TXD 47
85 #define GPIO_NR_MAGICIAN_POE_N 48
86 #define GPIO_NR_MAGICIAN_PWE_N 49
87 #define GPIO_NR_MAGICIAN_CIF_DD3 50
88 #define GPIO_NR_MAGICIAN_CIF_DD2 51
89 #define GPIO_NR_MAGICIAN_CIF_DD4 52
91 #define GPIO_NR_MAGICIAN_CIF_MCLK 53
92 #define GPIO_NR_MAGICIAN_CIF_PCLK 54
93 #define GPIO_NR_MAGICIAN_CIF_DD1 55
95 #define GPIO_NR_MAGICIAN_LDD0 58
96 #define GPIO_NR_MAGICIAN_LDD1 59
97 #define GPIO_NR_MAGICIAN_LDD2 60
98 #define GPIO_NR_MAGICIAN_LDD3 61
99 #define GPIO_NR_MAGICIAN_LDD4 62
100 #define GPIO_NR_MAGICIAN_LDD5 63
101 #define GPIO_NR_MAGICIAN_LDD6 64
102 #define GPIO_NR_MAGICIAN_LDD7 65
103 #define GPIO_NR_MAGICIAN_LDD8 66
104 #define GPIO_NR_MAGICIAN_LDD9 67
105 #define GPIO_NR_MAGICIAN_LDD10 68
106 #define GPIO_NR_MAGICIAN_LDD11 69
107 #define GPIO_NR_MAGICIAN_LDD12 70
108 #define GPIO_NR_MAGICIAN_LDD13 71
109 #define GPIO_NR_MAGICIAN_LDD14 72
110 #define GPIO_NR_MAGICIAN_LDD15 73
112 #define GPIO_NR_MAGICIAN_LFCLK_RD 74
113 #define GPIO_NR_MAGICIAN_LFCLK_A0 75
114 #define GPIO_NR_MAGICIAN_LFCLK_WR 76
115 #define GPIO_NR_MAGICIAN_LBIAS 77
117 #define GPIO_NR_MAGICIAN_CS2_N 78
118 #define GPIO_NR_MAGICIAN_CS3_N 79
119 #define GPIO_NR_MAGICIAN_CS4_N 80
120 #define GPIO_NR_MAGICIAN_CIF_DD0 81
121 #define GPIO_NR_MAGICIAN_CIF_DD5 82
123 #define GPIO_NR_MAGICIAN_IR_ON_N 83
125 #define GPIO_NR_MAGICIAN_CIF_LV 84
126 #define GPIO_NR_MAGICIAN_CIF_FV 85
128 #define GPIO_NR_MAGICIAN_LCD1 86
129 #define GPIO_NR_MAGICIAN_LCD2 87
131 #define GPIO_NR_MAGICIAN_KEY_CALENDAR 90
132 #define GPIO_NR_MAGICIAN_KEY_CAMERA 91
133 #define GPIO_NR_MAGICIAN_KEY_UP 93
134 #define GPIO_NR_MAGICIAN_KEY_DOWN 94
135 #define GPIO_NR_MAGICIAN_KEY_LEFT 95
136 #define GPIO_NR_MAGICIAN_KEY_RIGHT 96
137 #define GPIO_NR_MAGICIAN_KEY_ENTER 97
138 #define GPIO_NR_MAGICIAN_KEY_RECORD 98
139 #define GPIO_NR_MAGICIAN_HEADPHONE_IN 99
140 #define GPIO_NR_MAGICIAN_KEY_VOLUMEUP 100
141 #define GPIO_NR_MAGICIAN_KEY_VOLUMEDOWN 101
142 #define GPIO_NR_MAGICIAN_KEY_PHONE_LIFT 102
143 #define GPIO_NR_MAGICIAN_LED_KP 103
144 #define GPIO_NR_MAGICIAN_KP_MKOUT1 104
145 #define GPIO_NR_MAGICIAN_KP_MKOUT2 105
146 #define GPIO_NR_MAGICIAN_KP_MKOUT3 106
147 #define GPIO_NR_MAGICIAN_KP_MKOUT4 107
148 #define GPIO_NR_MAGICIAN_KP_MKOUT5 108
150 #define GPIO_NR_MAGICIAN_PHONE_OFF 110
152 #define GPIO_NR_MAGICIAN_USB_PUEN 112
153 #define GPIO_NR_MAGICIAN_I2S_SYSCLK 113
155 //#define GPIO_NR_MAGICIAN_PWM_OUT1 115
156 //#define GPIO_NR_MAGICIAN_TOUCHSCREEN_PEN 115
157 #define GPIO_NR_MAGICIAN_TOUCHPANEL_IRQ_N 115
159 #define GPIO_NR_MAGICIAN_I2C_SCL 117
160 #define GPIO_NR_MAGICIAN_I2C_SDA 118
163 #define GPIO_NR_MAGICIAN_CPU_BATT_FAULT_N
164 #define GPIO_NR_MAGICIAN_LCD_RESET_N
165 #define GPIO_NR_MAGICIAN_CHARGE_EN_N
166 #define GPIO_NR_MAGICIAN_EARPHONE_DET_N
167 #define GPIO_NR_MAGICIAN_USB_PUEN
168 #define GPIO_NR_MAGICIAN_WLAN_RESET_N
169 #define GPIO_NR_MAGICIAN_FLASH_VPEN
170 #define GPIO_NR_MAGICIAN_BATT_OFF
171 #define GPIO_NR_MAGICIAN_USB_CHARGE_RATE
172 #define GPIO_NR_MAGICIAN_BL_DETECT_N
173 #define GPIO_NR_MAGICIAN_AUTO_SENSE /* to backlight circuit */
174 #define GPIO_NR_MAGICIAN_LCD_LVDD_3V3_ON
175 #define GPIO_NR_MAGICIAN_LCD_AVDD_3V3_ON
176 #define GPIO_NR_MAGICIAN_LCD_N2V7_7V3_ON
177 #define GPIO_NR_MAGICIAN_USB2_DREQ
178 #define GPIO_NR_MAGICIAN_CPU_HW_RESET_N
181 /* TODO: should be checked */
183 #define GPIO_NR_MAGICIAN_TOUCHSCREEN_SPI_CLK_MD (23 | GPIO_ALT_FN_2_IN)
184 #define GPIO_NR_MAGICIAN_TOUCHSCREEN_SPI_CS_N_MD (24 | GPIO_ALT_FN_2_IN)
185 #define GPIO_NR_MAGICIAN_TOUCHSCREEN_SPI_DO_MD (25 | GPIO_ALT_FN_2_OUT)
186 #define GPIO_NR_MAGICIAN_TOUCHSCREEN_SPI_DI_MD (26 | GPIO_ALT_FN_1_IN)
188 #define GPIO_NR_MAGICIAN_I2S_BCK_MD (28 | GPIO_ALT_FN_1_OUT)
189 #define GPIO_NR_MAGICIAN_I2S_DIN_MD (29 | GPIO_ALT_FN_2_IN)
190 #define GPIO_NR_MAGICIAN_I2S_DOUT_MD (30 | GPIO_ALT_FN_1_OUT)
191 #define GPIO_NR_MAGICIAN_I2S_SYNC_MD (31 | GPIO_ALT_FN_1_OUT)
193 #define GPIO_NR_MAGICIAN_COM_RXD_MD (34 | GPIO_ALT_FN_1_IN)
194 #define GPIO_NR_MAGICIAN_COM_CTS_MD (35 | GPIO_ALT_FN_1_IN)
196 #define GPIO_NR_MAGICIAN_COM_TXD_MD (39 | GPIO_ALT_FN_2_OUT)
197 #define GPIO_NR_MAGICIAN_COM_RTS_MD (41 | GPIO_ALT_FN_2_OUT)
199 #define GPIO_NR_MAGICIAN_BT_RXD_MD (42 | GPIO_ALT_FN_1_IN)
200 #define GPIO_NR_MAGICIAN_BT_TXD_MD (43 | GPIO_ALT_FN_2_OUT)
201 #define GPIO_NR_MAGICIAN_BT_UART_CTS_MD (44 | GPIO_ALT_FN_1_IN)
202 #define GPIO_NR_MAGICIAN_BT_UART_RTS_MD (45 | GPIO_ALT_FN_2_OUT)
204 #define GPIO_NR_MAGICIAN_STD_RXD_MD (46 | GPIO_ALT_FN_2_IN)
205 #define GPIO_NR_MAGICIAN_STD_TXD_MD (47 | GPIO_ALT_FN_1_OUT)
207 #define GPIO_NR_MAGICIAN_POE_N_MD (48 | GPIO_ALT_FN_2_OUT | GPIO_DFLT_HIGH)
208 #define GPIO_NR_MAGICIAN_PWE_N_MD (49 | GPIO_ALT_FN_2_OUT | GPIO_DFLT_HIGH)
210 #define GPIO_NR_MAGICIAN_I2S_SYSCLK_MD (113 | GPIO_ALT_FN_1_OUT)
212 #define GPIO_NR_MAGICIAN_PWM1OUT_MD (115 | GPIO_ALT_FN_3_OUT)
214 #define GPIO_NR_MAGICIAN_I2C_SCL_MD (117 | GPIO_ALT_FN_1_OUT)
215 #define GPIO_NR_MAGICIAN_I2C_SDA_MD (118 | GPIO_ALT_FN_1_OUT)
221 #define EGPIO_NR_MAGICIAN_LED_POWER 5
222 #define EGPIO_NR_MAGICIAN_GSM_RESET 6
223 #define EGPIO_NR_MAGICIAN_LCD_POWER 7
224 #define EGPIO_NR_MAGICIAN_SPK_POWER 0+8
225 #define EGPIO_NR_MAGICIAN_EP_POWER 1+8
226 #define EGPIO_NR_MAGICIAN_IN_SEL0 2+8
227 #define EGPIO_NR_MAGICIAN_IN_SEL1 3+8
228 #define EGPIO_NR_MAGICIAN_MIC_POWER 4+8
229 #define EGPIO_NR_MAGICIAN_CODEC_RESET 5+8
230 #define EGPIO_NR_MAGICIAN_CODEC_POWER 6+8
231 #define EGPIO_NR_MAGICIAN_SD_POWER 0+16
232 #define EGPIO_NR_MAGICIAN_CARKIT_MIC 1+16
233 #define EGPIO_NR_MAGICIAN_GSM_HANDFREE 3+16
234 #define EGPIO_NR_MAGICIAN_CAM_POWER 4+16
235 #define EGPIO_NR_MAGICIAN_GSM_POWER 7+16
237 #endif /* _MAGICIAN_H_ */