Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/penberg...
[pandora-kernel.git] / arch / arm / mach-omap2 / mux34xx.c
1 /*
2  * Copyright (C) 2009 Nokia
3  * Copyright (C) 2009 Texas Instruments
4  *
5  * This program is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License version 2 as
7  * published by the Free Software Foundation.
8  */
9
10 #include <linux/module.h>
11 #include <linux/init.h>
12
13 #include "mux.h"
14
15 #ifdef CONFIG_OMAP_MUX
16
17 #define _OMAP3_MUXENTRY(M0, g, m0, m1, m2, m3, m4, m5, m6, m7)          \
18 {                                                                       \
19         .reg_offset     = (OMAP3_CONTROL_PADCONF_##M0##_OFFSET),        \
20         .gpio           = (g),                                          \
21         .muxnames       = { m0, m1, m2, m3, m4, m5, m6, m7 },           \
22 }
23
24 #else
25
26 #define _OMAP3_MUXENTRY(M0, g, m0, m1, m2, m3, m4, m5, m6, m7)          \
27 {                                                                       \
28         .reg_offset     = (OMAP3_CONTROL_PADCONF_##M0##_OFFSET),        \
29         .gpio           = (g),                                          \
30 }
31
32 #endif
33
34 #define _OMAP3_BALLENTRY(M0, bb, bt)                                    \
35 {                                                                       \
36         .reg_offset     = (OMAP3_CONTROL_PADCONF_##M0##_OFFSET),        \
37         .balls          = { bb, bt },                                   \
38 }
39
40 /*
41  * Superset of all mux modes for omap3
42  */
43 static struct omap_mux __initdata omap3_muxmodes[] = {
44         _OMAP3_MUXENTRY(CAM_D0, 99,
45                 "cam_d0", NULL, NULL, NULL,
46                 "gpio_99", NULL, NULL, "safe_mode"),
47         _OMAP3_MUXENTRY(CAM_D1, 100,
48                 "cam_d1", NULL, NULL, NULL,
49                 "gpio_100", NULL, NULL, "safe_mode"),
50         _OMAP3_MUXENTRY(CAM_D10, 109,
51                 "cam_d10", NULL, NULL, NULL,
52                 "gpio_109", "hw_dbg8", NULL, "safe_mode"),
53         _OMAP3_MUXENTRY(CAM_D11, 110,
54                 "cam_d11", NULL, NULL, NULL,
55                 "gpio_110", "hw_dbg9", NULL, "safe_mode"),
56         _OMAP3_MUXENTRY(CAM_D2, 101,
57                 "cam_d2", NULL, NULL, NULL,
58                 "gpio_101", "hw_dbg4", NULL, "safe_mode"),
59         _OMAP3_MUXENTRY(CAM_D3, 102,
60                 "cam_d3", NULL, NULL, NULL,
61                 "gpio_102", "hw_dbg5", NULL, "safe_mode"),
62         _OMAP3_MUXENTRY(CAM_D4, 103,
63                 "cam_d4", NULL, NULL, NULL,
64                 "gpio_103", "hw_dbg6", NULL, "safe_mode"),
65         _OMAP3_MUXENTRY(CAM_D5, 104,
66                 "cam_d5", NULL, NULL, NULL,
67                 "gpio_104", "hw_dbg7", NULL, "safe_mode"),
68         _OMAP3_MUXENTRY(CAM_D6, 105,
69                 "cam_d6", NULL, NULL, NULL,
70                 "gpio_105", NULL, NULL, "safe_mode"),
71         _OMAP3_MUXENTRY(CAM_D7, 106,
72                 "cam_d7", NULL, NULL, NULL,
73                 "gpio_106", NULL, NULL, "safe_mode"),
74         _OMAP3_MUXENTRY(CAM_D8, 107,
75                 "cam_d8", NULL, NULL, NULL,
76                 "gpio_107", NULL, NULL, "safe_mode"),
77         _OMAP3_MUXENTRY(CAM_D9, 108,
78                 "cam_d9", NULL, NULL, NULL,
79                 "gpio_108", NULL, NULL, "safe_mode"),
80         _OMAP3_MUXENTRY(CAM_FLD, 98,
81                 "cam_fld", NULL, "cam_global_reset", NULL,
82                 "gpio_98", "hw_dbg3", NULL, "safe_mode"),
83         _OMAP3_MUXENTRY(CAM_HS, 94,
84                 "cam_hs", NULL, NULL, NULL,
85                 "gpio_94", "hw_dbg0", NULL, "safe_mode"),
86         _OMAP3_MUXENTRY(CAM_PCLK, 97,
87                 "cam_pclk", NULL, NULL, NULL,
88                 "gpio_97", "hw_dbg2", NULL, "safe_mode"),
89         _OMAP3_MUXENTRY(CAM_STROBE, 126,
90                 "cam_strobe", NULL, NULL, NULL,
91                 "gpio_126", "hw_dbg11", NULL, "safe_mode"),
92         _OMAP3_MUXENTRY(CAM_VS, 95,
93                 "cam_vs", NULL, NULL, NULL,
94                 "gpio_95", "hw_dbg1", NULL, "safe_mode"),
95         _OMAP3_MUXENTRY(CAM_WEN, 167,
96                 "cam_wen", NULL, "cam_shutter", NULL,
97                 "gpio_167", "hw_dbg10", NULL, "safe_mode"),
98         _OMAP3_MUXENTRY(CAM_XCLKA, 96,
99                 "cam_xclka", NULL, NULL, NULL,
100                 "gpio_96", NULL, NULL, "safe_mode"),
101         _OMAP3_MUXENTRY(CAM_XCLKB, 111,
102                 "cam_xclkb", NULL, NULL, NULL,
103                 "gpio_111", NULL, NULL, "safe_mode"),
104         _OMAP3_MUXENTRY(CSI2_DX0, 112,
105                 "csi2_dx0", NULL, NULL, NULL,
106                 "gpio_112", NULL, NULL, "safe_mode"),
107         _OMAP3_MUXENTRY(CSI2_DX1, 114,
108                 "csi2_dx1", NULL, NULL, NULL,
109                 "gpio_114", NULL, NULL, "safe_mode"),
110         _OMAP3_MUXENTRY(CSI2_DY0, 113,
111                 "csi2_dy0", NULL, NULL, NULL,
112                 "gpio_113", NULL, NULL, "safe_mode"),
113         _OMAP3_MUXENTRY(CSI2_DY1, 115,
114                 "csi2_dy1", NULL, NULL, NULL,
115                 "gpio_115", NULL, NULL, "safe_mode"),
116         _OMAP3_MUXENTRY(DSS_ACBIAS, 69,
117                 "dss_acbias", NULL, NULL, NULL,
118                 "gpio_69", NULL, NULL, "safe_mode"),
119         _OMAP3_MUXENTRY(DSS_DATA0, 70,
120                 "dss_data0", NULL, "uart1_cts", NULL,
121                 "gpio_70", NULL, NULL, "safe_mode"),
122         _OMAP3_MUXENTRY(DSS_DATA1, 71,
123                 "dss_data1", NULL, "uart1_rts", NULL,
124                 "gpio_71", NULL, NULL, "safe_mode"),
125         _OMAP3_MUXENTRY(DSS_DATA10, 80,
126                 "dss_data10", NULL, NULL, NULL,
127                 "gpio_80", NULL, NULL, "safe_mode"),
128         _OMAP3_MUXENTRY(DSS_DATA11, 81,
129                 "dss_data11", NULL, NULL, NULL,
130                 "gpio_81", NULL, NULL, "safe_mode"),
131         _OMAP3_MUXENTRY(DSS_DATA12, 82,
132                 "dss_data12", NULL, NULL, NULL,
133                 "gpio_82", NULL, NULL, "safe_mode"),
134         _OMAP3_MUXENTRY(DSS_DATA13, 83,
135                 "dss_data13", NULL, NULL, NULL,
136                 "gpio_83", NULL, NULL, "safe_mode"),
137         _OMAP3_MUXENTRY(DSS_DATA14, 84,
138                 "dss_data14", NULL, NULL, NULL,
139                 "gpio_84", NULL, NULL, "safe_mode"),
140         _OMAP3_MUXENTRY(DSS_DATA15, 85,
141                 "dss_data15", NULL, NULL, NULL,
142                 "gpio_85", NULL, NULL, "safe_mode"),
143         _OMAP3_MUXENTRY(DSS_DATA16, 86,
144                 "dss_data16", NULL, NULL, NULL,
145                 "gpio_86", NULL, NULL, "safe_mode"),
146         _OMAP3_MUXENTRY(DSS_DATA17, 87,
147                 "dss_data17", NULL, NULL, NULL,
148                 "gpio_87", NULL, NULL, "safe_mode"),
149         _OMAP3_MUXENTRY(DSS_DATA18, 88,
150                 "dss_data18", NULL, "mcspi3_clk", "dss_data0",
151                 "gpio_88", NULL, NULL, "safe_mode"),
152         _OMAP3_MUXENTRY(DSS_DATA19, 89,
153                 "dss_data19", NULL, "mcspi3_simo", "dss_data1",
154                 "gpio_89", NULL, NULL, "safe_mode"),
155         _OMAP3_MUXENTRY(DSS_DATA20, 90,
156                 "dss_data20", NULL, "mcspi3_somi", "dss_data2",
157                 "gpio_90", NULL, NULL, "safe_mode"),
158         _OMAP3_MUXENTRY(DSS_DATA21, 91,
159                 "dss_data21", NULL, "mcspi3_cs0", "dss_data3",
160                 "gpio_91", NULL, NULL, "safe_mode"),
161         _OMAP3_MUXENTRY(DSS_DATA22, 92,
162                 "dss_data22", NULL, "mcspi3_cs1", "dss_data4",
163                 "gpio_92", NULL, NULL, "safe_mode"),
164         _OMAP3_MUXENTRY(DSS_DATA23, 93,
165                 "dss_data23", NULL, NULL, "dss_data5",
166                 "gpio_93", NULL, NULL, "safe_mode"),
167         _OMAP3_MUXENTRY(DSS_DATA2, 72,
168                 "dss_data2", NULL, NULL, NULL,
169                 "gpio_72", NULL, NULL, "safe_mode"),
170         _OMAP3_MUXENTRY(DSS_DATA3, 73,
171                 "dss_data3", NULL, NULL, NULL,
172                 "gpio_73", NULL, NULL, "safe_mode"),
173         _OMAP3_MUXENTRY(DSS_DATA4, 74,
174                 "dss_data4", NULL, "uart3_rx_irrx", NULL,
175                 "gpio_74", NULL, NULL, "safe_mode"),
176         _OMAP3_MUXENTRY(DSS_DATA5, 75,
177                 "dss_data5", NULL, "uart3_tx_irtx", NULL,
178                 "gpio_75", NULL, NULL, "safe_mode"),
179         _OMAP3_MUXENTRY(DSS_DATA6, 76,
180                 "dss_data6", NULL, "uart1_tx", NULL,
181                 "gpio_76", "hw_dbg14", NULL, "safe_mode"),
182         _OMAP3_MUXENTRY(DSS_DATA7, 77,
183                 "dss_data7", NULL, "uart1_rx", NULL,
184                 "gpio_77", "hw_dbg15", NULL, "safe_mode"),
185         _OMAP3_MUXENTRY(DSS_DATA8, 78,
186                 "dss_data8", NULL, NULL, NULL,
187                 "gpio_78", "hw_dbg16", NULL, "safe_mode"),
188         _OMAP3_MUXENTRY(DSS_DATA9, 79,
189                 "dss_data9", NULL, NULL, NULL,
190                 "gpio_79", "hw_dbg17", NULL, "safe_mode"),
191         _OMAP3_MUXENTRY(DSS_HSYNC, 67,
192                 "dss_hsync", NULL, NULL, NULL,
193                 "gpio_67", "hw_dbg13", NULL, "safe_mode"),
194         _OMAP3_MUXENTRY(DSS_PCLK, 66,
195                 "dss_pclk", NULL, NULL, NULL,
196                 "gpio_66", "hw_dbg12", NULL, "safe_mode"),
197         _OMAP3_MUXENTRY(DSS_VSYNC, 68,
198                 "dss_vsync", NULL, NULL, NULL,
199                 "gpio_68", NULL, NULL, "safe_mode"),
200         _OMAP3_MUXENTRY(ETK_CLK, 12,
201                 "etk_clk", "mcbsp5_clkx", "sdmmc3_clk", "hsusb1_stp",
202                 "gpio_12", "mm1_rxdp", "hsusb1_tll_stp", "hw_dbg0"),
203         _OMAP3_MUXENTRY(ETK_CTL, 13,
204                 "etk_ctl", NULL, "sdmmc3_cmd", "hsusb1_clk",
205                 "gpio_13", NULL, "hsusb1_tll_clk", "hw_dbg1"),
206         _OMAP3_MUXENTRY(ETK_D0, 14,
207                 "etk_d0", "mcspi3_simo", "sdmmc3_dat4", "hsusb1_data0",
208                 "gpio_14", "mm1_rxrcv", "hsusb1_tll_data0", "hw_dbg2"),
209         _OMAP3_MUXENTRY(ETK_D1, 15,
210                 "etk_d1", "mcspi3_somi", NULL, "hsusb1_data1",
211                 "gpio_15", "mm1_txse0", "hsusb1_tll_data1", "hw_dbg3"),
212         _OMAP3_MUXENTRY(ETK_D10, 24,
213                 "etk_d10", NULL, "uart1_rx", "hsusb2_clk",
214                 "gpio_24", NULL, "hsusb2_tll_clk", "hw_dbg12"),
215         _OMAP3_MUXENTRY(ETK_D11, 25,
216                 "etk_d11", NULL, NULL, "hsusb2_stp",
217                 "gpio_25", "mm2_rxdp", "hsusb2_tll_stp", "hw_dbg13"),
218         _OMAP3_MUXENTRY(ETK_D12, 26,
219                 "etk_d12", NULL, NULL, "hsusb2_dir",
220                 "gpio_26", NULL, "hsusb2_tll_dir", "hw_dbg14"),
221         _OMAP3_MUXENTRY(ETK_D13, 27,
222                 "etk_d13", NULL, NULL, "hsusb2_nxt",
223                 "gpio_27", "mm2_rxdm", "hsusb2_tll_nxt", "hw_dbg15"),
224         _OMAP3_MUXENTRY(ETK_D14, 28,
225                 "etk_d14", NULL, NULL, "hsusb2_data0",
226                 "gpio_28", "mm2_rxrcv", "hsusb2_tll_data0", "hw_dbg16"),
227         _OMAP3_MUXENTRY(ETK_D15, 29,
228                 "etk_d15", NULL, NULL, "hsusb2_data1",
229                 "gpio_29", "mm2_txse0", "hsusb2_tll_data1", "hw_dbg17"),
230         _OMAP3_MUXENTRY(ETK_D2, 16,
231                 "etk_d2", "mcspi3_cs0", NULL, "hsusb1_data2",
232                 "gpio_16", "mm1_txdat", "hsusb1_tll_data2", "hw_dbg4"),
233         _OMAP3_MUXENTRY(ETK_D3, 17,
234                 "etk_d3", "mcspi3_clk", "sdmmc3_dat3", "hsusb1_data7",
235                 "gpio_17", NULL, "hsusb1_tll_data7", "hw_dbg5"),
236         _OMAP3_MUXENTRY(ETK_D4, 18,
237                 "etk_d4", "mcbsp5_dr", "sdmmc3_dat0", "hsusb1_data4",
238                 "gpio_18", NULL, "hsusb1_tll_data4", "hw_dbg6"),
239         _OMAP3_MUXENTRY(ETK_D5, 19,
240                 "etk_d5", "mcbsp5_fsx", "sdmmc3_dat1", "hsusb1_data5",
241                 "gpio_19", NULL, "hsusb1_tll_data5", "hw_dbg7"),
242         _OMAP3_MUXENTRY(ETK_D6, 20,
243                 "etk_d6", "mcbsp5_dx", "sdmmc3_dat2", "hsusb1_data6",
244                 "gpio_20", NULL, "hsusb1_tll_data6", "hw_dbg8"),
245         _OMAP3_MUXENTRY(ETK_D7, 21,
246                 "etk_d7", "mcspi3_cs1", "sdmmc3_dat7", "hsusb1_data3",
247                 "gpio_21", "mm1_txen_n", "hsusb1_tll_data3", "hw_dbg9"),
248         _OMAP3_MUXENTRY(ETK_D8, 22,
249                 "etk_d8", "sys_drm_msecure", "sdmmc3_dat6", "hsusb1_dir",
250                 "gpio_22", NULL, "hsusb1_tll_dir", "hw_dbg10"),
251         _OMAP3_MUXENTRY(ETK_D9, 23,
252                 "etk_d9", "sys_secure_indicator", "sdmmc3_dat5", "hsusb1_nxt",
253                 "gpio_23", "mm1_rxdm", "hsusb1_tll_nxt", "hw_dbg11"),
254         _OMAP3_MUXENTRY(GPMC_A1, 34,
255                 "gpmc_a1", NULL, NULL, NULL,
256                 "gpio_34", NULL, NULL, "safe_mode"),
257         _OMAP3_MUXENTRY(GPMC_A10, 43,
258                 "gpmc_a10", "sys_ndmareq3", NULL, NULL,
259                 "gpio_43", NULL, NULL, "safe_mode"),
260         _OMAP3_MUXENTRY(GPMC_A2, 35,
261                 "gpmc_a2", NULL, NULL, NULL,
262                 "gpio_35", NULL, NULL, "safe_mode"),
263         _OMAP3_MUXENTRY(GPMC_A3, 36,
264                 "gpmc_a3", NULL, NULL, NULL,
265                 "gpio_36", NULL, NULL, "safe_mode"),
266         _OMAP3_MUXENTRY(GPMC_A4, 37,
267                 "gpmc_a4", NULL, NULL, NULL,
268                 "gpio_37", NULL, NULL, "safe_mode"),
269         _OMAP3_MUXENTRY(GPMC_A5, 38,
270                 "gpmc_a5", NULL, NULL, NULL,
271                 "gpio_38", NULL, NULL, "safe_mode"),
272         _OMAP3_MUXENTRY(GPMC_A6, 39,
273                 "gpmc_a6", NULL, NULL, NULL,
274                 "gpio_39", NULL, NULL, "safe_mode"),
275         _OMAP3_MUXENTRY(GPMC_A7, 40,
276                 "gpmc_a7", NULL, NULL, NULL,
277                 "gpio_40", NULL, NULL, "safe_mode"),
278         _OMAP3_MUXENTRY(GPMC_A8, 41,
279                 "gpmc_a8", NULL, NULL, NULL,
280                 "gpio_41", NULL, NULL, "safe_mode"),
281         _OMAP3_MUXENTRY(GPMC_A9, 42,
282                 "gpmc_a9", "sys_ndmareq2", NULL, NULL,
283                 "gpio_42", NULL, NULL, "safe_mode"),
284         _OMAP3_MUXENTRY(GPMC_CLK, 59,
285                 "gpmc_clk", NULL, NULL, NULL,
286                 "gpio_59", NULL, NULL, "safe_mode"),
287         _OMAP3_MUXENTRY(GPMC_D10, 46,
288                 "gpmc_d10", NULL, NULL, NULL,
289                 "gpio_46", NULL, NULL, "safe_mode"),
290         _OMAP3_MUXENTRY(GPMC_D11, 47,
291                 "gpmc_d11", NULL, NULL, NULL,
292                 "gpio_47", NULL, NULL, "safe_mode"),
293         _OMAP3_MUXENTRY(GPMC_D12, 48,
294                 "gpmc_d12", NULL, NULL, NULL,
295                 "gpio_48", NULL, NULL, "safe_mode"),
296         _OMAP3_MUXENTRY(GPMC_D13, 49,
297                 "gpmc_d13", NULL, NULL, NULL,
298                 "gpio_49", NULL, NULL, "safe_mode"),
299         _OMAP3_MUXENTRY(GPMC_D14, 50,
300                 "gpmc_d14", NULL, NULL, NULL,
301                 "gpio_50", NULL, NULL, "safe_mode"),
302         _OMAP3_MUXENTRY(GPMC_D15, 51,
303                 "gpmc_d15", NULL, NULL, NULL,
304                 "gpio_51", NULL, NULL, "safe_mode"),
305         _OMAP3_MUXENTRY(GPMC_D8, 44,
306                 "gpmc_d8", NULL, NULL, NULL,
307                 "gpio_44", NULL, NULL, "safe_mode"),
308         _OMAP3_MUXENTRY(GPMC_D9, 45,
309                 "gpmc_d9", NULL, NULL, NULL,
310                 "gpio_45", NULL, NULL, "safe_mode"),
311         _OMAP3_MUXENTRY(GPMC_NBE0_CLE, 60,
312                 "gpmc_nbe0_cle", NULL, NULL, NULL,
313                 "gpio_60", NULL, NULL, "safe_mode"),
314         _OMAP3_MUXENTRY(GPMC_NBE1, 61,
315                 "gpmc_nbe1", NULL, NULL, NULL,
316                 "gpio_61", NULL, NULL, "safe_mode"),
317         _OMAP3_MUXENTRY(GPMC_NCS1, 52,
318                 "gpmc_ncs1", NULL, NULL, NULL,
319                 "gpio_52", NULL, NULL, "safe_mode"),
320         _OMAP3_MUXENTRY(GPMC_NCS2, 53,
321                 "gpmc_ncs2", NULL, NULL, NULL,
322                 "gpio_53", NULL, NULL, "safe_mode"),
323         _OMAP3_MUXENTRY(GPMC_NCS3, 54,
324                 "gpmc_ncs3", "sys_ndmareq0", NULL, NULL,
325                 "gpio_54", NULL, NULL, "safe_mode"),
326         _OMAP3_MUXENTRY(GPMC_NCS4, 55,
327                 "gpmc_ncs4", "sys_ndmareq1", "mcbsp4_clkx", "gpt9_pwm_evt",
328                 "gpio_55", NULL, NULL, "safe_mode"),
329         _OMAP3_MUXENTRY(GPMC_NCS5, 56,
330                 "gpmc_ncs5", "sys_ndmareq2", "mcbsp4_dr", "gpt10_pwm_evt",
331                 "gpio_56", NULL, NULL, "safe_mode"),
332         _OMAP3_MUXENTRY(GPMC_NCS6, 57,
333                 "gpmc_ncs6", "sys_ndmareq3", "mcbsp4_dx", "gpt11_pwm_evt",
334                 "gpio_57", NULL, NULL, "safe_mode"),
335         _OMAP3_MUXENTRY(GPMC_NCS7, 58,
336                 "gpmc_ncs7", "gpmc_io_dir", "mcbsp4_fsx", "gpt8_pwm_evt",
337                 "gpio_58", NULL, NULL, "safe_mode"),
338         _OMAP3_MUXENTRY(GPMC_NWP, 62,
339                 "gpmc_nwp", NULL, NULL, NULL,
340                 "gpio_62", NULL, NULL, "safe_mode"),
341         _OMAP3_MUXENTRY(GPMC_WAIT1, 63,
342                 "gpmc_wait1", NULL, NULL, NULL,
343                 "gpio_63", NULL, NULL, "safe_mode"),
344         _OMAP3_MUXENTRY(GPMC_WAIT2, 64,
345                 "gpmc_wait2", NULL, NULL, NULL,
346                 "gpio_64", NULL, NULL, "safe_mode"),
347         _OMAP3_MUXENTRY(GPMC_WAIT3, 65,
348                 "gpmc_wait3", "sys_ndmareq1", NULL, NULL,
349                 "gpio_65", NULL, NULL, "safe_mode"),
350         _OMAP3_MUXENTRY(HDQ_SIO, 170,
351                 "hdq_sio", "sys_altclk", "i2c2_sccbe", "i2c3_sccbe",
352                 "gpio_170", NULL, NULL, "safe_mode"),
353         _OMAP3_MUXENTRY(HSUSB0_CLK, 120,
354                 "hsusb0_clk", NULL, NULL, NULL,
355                 "gpio_120", NULL, NULL, "safe_mode"),
356         _OMAP3_MUXENTRY(HSUSB0_DATA0, 125,
357                 "hsusb0_data0", NULL, "uart3_tx_irtx", NULL,
358                 "gpio_125", NULL, NULL, "safe_mode"),
359         _OMAP3_MUXENTRY(HSUSB0_DATA1, 130,
360                 "hsusb0_data1", NULL, "uart3_rx_irrx", NULL,
361                 "gpio_130", NULL, NULL, "safe_mode"),
362         _OMAP3_MUXENTRY(HSUSB0_DATA2, 131,
363                 "hsusb0_data2", NULL, "uart3_rts_sd", NULL,
364                 "gpio_131", NULL, NULL, "safe_mode"),
365         _OMAP3_MUXENTRY(HSUSB0_DATA3, 169,
366                 "hsusb0_data3", NULL, "uart3_cts_rctx", NULL,
367                 "gpio_169", NULL, NULL, "safe_mode"),
368         _OMAP3_MUXENTRY(HSUSB0_DATA4, 188,
369                 "hsusb0_data4", NULL, NULL, NULL,
370                 "gpio_188", NULL, NULL, "safe_mode"),
371         _OMAP3_MUXENTRY(HSUSB0_DATA5, 189,
372                 "hsusb0_data5", NULL, NULL, NULL,
373                 "gpio_189", NULL, NULL, "safe_mode"),
374         _OMAP3_MUXENTRY(HSUSB0_DATA6, 190,
375                 "hsusb0_data6", NULL, NULL, NULL,
376                 "gpio_190", NULL, NULL, "safe_mode"),
377         _OMAP3_MUXENTRY(HSUSB0_DATA7, 191,
378                 "hsusb0_data7", NULL, NULL, NULL,
379                 "gpio_191", NULL, NULL, "safe_mode"),
380         _OMAP3_MUXENTRY(HSUSB0_DIR, 122,
381                 "hsusb0_dir", NULL, NULL, NULL,
382                 "gpio_122", NULL, NULL, "safe_mode"),
383         _OMAP3_MUXENTRY(HSUSB0_NXT, 124,
384                 "hsusb0_nxt", NULL, NULL, NULL,
385                 "gpio_124", NULL, NULL, "safe_mode"),
386         _OMAP3_MUXENTRY(HSUSB0_STP, 121,
387                 "hsusb0_stp", NULL, NULL, NULL,
388                 "gpio_121", NULL, NULL, "safe_mode"),
389         _OMAP3_MUXENTRY(I2C2_SCL, 168,
390                 "i2c2_scl", NULL, NULL, NULL,
391                 "gpio_168", NULL, NULL, "safe_mode"),
392         _OMAP3_MUXENTRY(I2C2_SDA, 183,
393                 "i2c2_sda", NULL, NULL, NULL,
394                 "gpio_183", NULL, NULL, "safe_mode"),
395         _OMAP3_MUXENTRY(I2C3_SCL, 184,
396                 "i2c3_scl", NULL, NULL, NULL,
397                 "gpio_184", NULL, NULL, "safe_mode"),
398         _OMAP3_MUXENTRY(I2C3_SDA, 185,
399                 "i2c3_sda", NULL, NULL, NULL,
400                 "gpio_185", NULL, NULL, "safe_mode"),
401         _OMAP3_MUXENTRY(I2C4_SCL, 0,
402                 "i2c4_scl", "sys_nvmode1", NULL, NULL,
403                 NULL, NULL, NULL, "safe_mode"),
404         _OMAP3_MUXENTRY(I2C4_SDA, 0,
405                 "i2c4_sda", "sys_nvmode2", NULL, NULL,
406                 NULL, NULL, NULL, "safe_mode"),
407         _OMAP3_MUXENTRY(JTAG_EMU0, 11,
408                 "jtag_emu0", NULL, NULL, NULL,
409                 "gpio_11", NULL, NULL, "safe_mode"),
410         _OMAP3_MUXENTRY(JTAG_EMU1, 31,
411                 "jtag_emu1", NULL, NULL, NULL,
412                 "gpio_31", NULL, NULL, "safe_mode"),
413         _OMAP3_MUXENTRY(MCBSP1_CLKR, 156,
414                 "mcbsp1_clkr", "mcspi4_clk", NULL, NULL,
415                 "gpio_156", NULL, NULL, "safe_mode"),
416         _OMAP3_MUXENTRY(MCBSP1_CLKX, 162,
417                 "mcbsp1_clkx", NULL, "mcbsp3_clkx", NULL,
418                 "gpio_162", NULL, NULL, "safe_mode"),
419         _OMAP3_MUXENTRY(MCBSP1_DR, 159,
420                 "mcbsp1_dr", "mcspi4_somi", "mcbsp3_dr", NULL,
421                 "gpio_159", NULL, NULL, "safe_mode"),
422         _OMAP3_MUXENTRY(MCBSP1_DX, 158,
423                 "mcbsp1_dx", "mcspi4_simo", "mcbsp3_dx", NULL,
424                 "gpio_158", NULL, NULL, "safe_mode"),
425         _OMAP3_MUXENTRY(MCBSP1_FSR, 157,
426                 "mcbsp1_fsr", NULL, "cam_global_reset", NULL,
427                 "gpio_157", NULL, NULL, "safe_mode"),
428         _OMAP3_MUXENTRY(MCBSP1_FSX, 161,
429                 "mcbsp1_fsx", "mcspi4_cs0", "mcbsp3_fsx", NULL,
430                 "gpio_161", NULL, NULL, "safe_mode"),
431         _OMAP3_MUXENTRY(MCBSP2_CLKX, 117,
432                 "mcbsp2_clkx", NULL, NULL, NULL,
433                 "gpio_117", NULL, NULL, "safe_mode"),
434         _OMAP3_MUXENTRY(MCBSP2_DR, 118,
435                 "mcbsp2_dr", NULL, NULL, NULL,
436                 "gpio_118", NULL, NULL, "safe_mode"),
437         _OMAP3_MUXENTRY(MCBSP2_DX, 119,
438                 "mcbsp2_dx", NULL, NULL, NULL,
439                 "gpio_119", NULL, NULL, "safe_mode"),
440         _OMAP3_MUXENTRY(MCBSP2_FSX, 116,
441                 "mcbsp2_fsx", NULL, NULL, NULL,
442                 "gpio_116", NULL, NULL, "safe_mode"),
443         _OMAP3_MUXENTRY(MCBSP3_CLKX, 142,
444                 "mcbsp3_clkx", "uart2_tx", NULL, NULL,
445                 "gpio_142", "hsusb3_tll_data6", NULL, "safe_mode"),
446         _OMAP3_MUXENTRY(MCBSP3_DR, 141,
447                 "mcbsp3_dr", "uart2_rts", NULL, NULL,
448                 "gpio_141", "hsusb3_tll_data5", NULL, "safe_mode"),
449         _OMAP3_MUXENTRY(MCBSP3_DX, 140,
450                 "mcbsp3_dx", "uart2_cts", NULL, NULL,
451                 "gpio_140", "hsusb3_tll_data4", NULL, "safe_mode"),
452         _OMAP3_MUXENTRY(MCBSP3_FSX, 143,
453                 "mcbsp3_fsx", "uart2_rx", NULL, NULL,
454                 "gpio_143", "hsusb3_tll_data7", NULL, "safe_mode"),
455         _OMAP3_MUXENTRY(MCBSP4_CLKX, 152,
456                 "mcbsp4_clkx", NULL, NULL, NULL,
457                 "gpio_152", "hsusb3_tll_data1", "mm3_txse0", "safe_mode"),
458         _OMAP3_MUXENTRY(MCBSP4_DR, 153,
459                 "mcbsp4_dr", NULL, NULL, NULL,
460                 "gpio_153", "hsusb3_tll_data0", "mm3_rxrcv", "safe_mode"),
461         _OMAP3_MUXENTRY(MCBSP4_DX, 154,
462                 "mcbsp4_dx", NULL, NULL, NULL,
463                 "gpio_154", "hsusb3_tll_data2", "mm3_txdat", "safe_mode"),
464         _OMAP3_MUXENTRY(MCBSP4_FSX, 155,
465                 "mcbsp4_fsx", NULL, NULL, NULL,
466                 "gpio_155", "hsusb3_tll_data3", "mm3_txen_n", "safe_mode"),
467         _OMAP3_MUXENTRY(MCBSP_CLKS, 160,
468                 "mcbsp_clks", NULL, "cam_shutter", NULL,
469                 "gpio_160", "uart1_cts", NULL, "safe_mode"),
470         _OMAP3_MUXENTRY(MCSPI1_CLK, 171,
471                 "mcspi1_clk", "sdmmc2_dat4", NULL, NULL,
472                 "gpio_171", NULL, NULL, "safe_mode"),
473         _OMAP3_MUXENTRY(MCSPI1_CS0, 174,
474                 "mcspi1_cs0", "sdmmc2_dat7", NULL, NULL,
475                 "gpio_174", NULL, NULL, "safe_mode"),
476         _OMAP3_MUXENTRY(MCSPI1_CS1, 175,
477                 "mcspi1_cs1", NULL, NULL, "sdmmc3_cmd",
478                 "gpio_175", NULL, NULL, "safe_mode"),
479         _OMAP3_MUXENTRY(MCSPI1_CS2, 176,
480                 "mcspi1_cs2", NULL, NULL, "sdmmc3_clk",
481                 "gpio_176", NULL, NULL, "safe_mode"),
482         _OMAP3_MUXENTRY(MCSPI1_CS3, 177,
483                 "mcspi1_cs3", NULL, "hsusb2_tll_data2", "hsusb2_data2",
484                 "gpio_177", "mm2_txdat", NULL, "safe_mode"),
485         _OMAP3_MUXENTRY(MCSPI1_SIMO, 172,
486                 "mcspi1_simo", "sdmmc2_dat5", NULL, NULL,
487                 "gpio_172", NULL, NULL, "safe_mode"),
488         _OMAP3_MUXENTRY(MCSPI1_SOMI, 173,
489                 "mcspi1_somi", "sdmmc2_dat6", NULL, NULL,
490                 "gpio_173", NULL, NULL, "safe_mode"),
491         _OMAP3_MUXENTRY(MCSPI2_CLK, 178,
492                 "mcspi2_clk", NULL, "hsusb2_tll_data7", "hsusb2_data7",
493                 "gpio_178", NULL, NULL, "safe_mode"),
494         _OMAP3_MUXENTRY(MCSPI2_CS0, 181,
495                 "mcspi2_cs0", "gpt11_pwm_evt",
496                 "hsusb2_tll_data6", "hsusb2_data6",
497                 "gpio_181", NULL, NULL, "safe_mode"),
498         _OMAP3_MUXENTRY(MCSPI2_CS1, 182,
499                 "mcspi2_cs1", "gpt8_pwm_evt",
500                 "hsusb2_tll_data3", "hsusb2_data3",
501                 "gpio_182", "mm2_txen_n", NULL, "safe_mode"),
502         _OMAP3_MUXENTRY(MCSPI2_SIMO, 179,
503                 "mcspi2_simo", "gpt9_pwm_evt",
504                 "hsusb2_tll_data4", "hsusb2_data4",
505                 "gpio_179", NULL, NULL, "safe_mode"),
506         _OMAP3_MUXENTRY(MCSPI2_SOMI, 180,
507                 "mcspi2_somi", "gpt10_pwm_evt",
508                 "hsusb2_tll_data5", "hsusb2_data5",
509                 "gpio_180", NULL, NULL, "safe_mode"),
510         _OMAP3_MUXENTRY(SDMMC1_CLK, 120,
511                 "sdmmc1_clk", NULL, NULL, NULL,
512                 "gpio_120", NULL, NULL, "safe_mode"),
513         _OMAP3_MUXENTRY(SDMMC1_CMD, 121,
514                 "sdmmc1_cmd", NULL, NULL, NULL,
515                 "gpio_121", NULL, NULL, "safe_mode"),
516         _OMAP3_MUXENTRY(SDMMC1_DAT0, 122,
517                 "sdmmc1_dat0", NULL, NULL, NULL,
518                 "gpio_122", NULL, NULL, "safe_mode"),
519         _OMAP3_MUXENTRY(SDMMC1_DAT1, 123,
520                 "sdmmc1_dat1", NULL, NULL, NULL,
521                 "gpio_123", NULL, NULL, "safe_mode"),
522         _OMAP3_MUXENTRY(SDMMC1_DAT2, 124,
523                 "sdmmc1_dat2", NULL, NULL, NULL,
524                 "gpio_124", NULL, NULL, "safe_mode"),
525         _OMAP3_MUXENTRY(SDMMC1_DAT3, 125,
526                 "sdmmc1_dat3", NULL, NULL, NULL,
527                 "gpio_125", NULL, NULL, "safe_mode"),
528         _OMAP3_MUXENTRY(SDMMC1_DAT4, 126,
529                 "sdmmc1_dat4", NULL, "sim_io", NULL,
530                 "gpio_126", NULL, NULL, "safe_mode"),
531         _OMAP3_MUXENTRY(SDMMC1_DAT5, 127,
532                 "sdmmc1_dat5", NULL, "sim_clk", NULL,
533                 "gpio_127", NULL, NULL, "safe_mode"),
534         _OMAP3_MUXENTRY(SDMMC1_DAT6, 128,
535                 "sdmmc1_dat6", NULL, "sim_pwrctrl", NULL,
536                 "gpio_128", NULL, NULL, "safe_mode"),
537         _OMAP3_MUXENTRY(SDMMC1_DAT7, 129,
538                 "sdmmc1_dat7", NULL, "sim_rst", NULL,
539                 "gpio_129", NULL, NULL, "safe_mode"),
540         _OMAP3_MUXENTRY(SDMMC2_CLK, 130,
541                 "sdmmc2_clk", "mcspi3_clk", NULL, NULL,
542                 "gpio_130", NULL, NULL, "safe_mode"),
543         _OMAP3_MUXENTRY(SDMMC2_CMD, 131,
544                 "sdmmc2_cmd", "mcspi3_simo", NULL, NULL,
545                 "gpio_131", NULL, NULL, "safe_mode"),
546         _OMAP3_MUXENTRY(SDMMC2_DAT0, 132,
547                 "sdmmc2_dat0", "mcspi3_somi", NULL, NULL,
548                 "gpio_132", NULL, NULL, "safe_mode"),
549         _OMAP3_MUXENTRY(SDMMC2_DAT1, 133,
550                 "sdmmc2_dat1", NULL, NULL, NULL,
551                 "gpio_133", NULL, NULL, "safe_mode"),
552         _OMAP3_MUXENTRY(SDMMC2_DAT2, 134,
553                 "sdmmc2_dat2", "mcspi3_cs1", NULL, NULL,
554                 "gpio_134", NULL, NULL, "safe_mode"),
555         _OMAP3_MUXENTRY(SDMMC2_DAT3, 135,
556                 "sdmmc2_dat3", "mcspi3_cs0", NULL, NULL,
557                 "gpio_135", NULL, NULL, "safe_mode"),
558         _OMAP3_MUXENTRY(SDMMC2_DAT4, 136,
559                 "sdmmc2_dat4", "sdmmc2_dir_dat0", NULL, "sdmmc3_dat0",
560                 "gpio_136", NULL, NULL, "safe_mode"),
561         _OMAP3_MUXENTRY(SDMMC2_DAT5, 137,
562                 "sdmmc2_dat5", "sdmmc2_dir_dat1",
563                 "cam_global_reset", "sdmmc3_dat1",
564                 "gpio_137", "hsusb3_tll_stp", "mm3_rxdp", "safe_mode"),
565         _OMAP3_MUXENTRY(SDMMC2_DAT6, 138,
566                 "sdmmc2_dat6", "sdmmc2_dir_cmd", "cam_shutter", "sdmmc3_dat2",
567                 "gpio_138", "hsusb3_tll_dir", NULL, "safe_mode"),
568         _OMAP3_MUXENTRY(SDMMC2_DAT7, 139,
569                 "sdmmc2_dat7", "sdmmc2_clkin", NULL, "sdmmc3_dat3",
570                 "gpio_139", "hsusb3_tll_nxt", "mm3_rxdm", "safe_mode"),
571         _OMAP3_MUXENTRY(SDRC_CKE0, 0,
572                 "sdrc_cke0", NULL, NULL, NULL,
573                 NULL, NULL, NULL, "safe_mode"),
574         _OMAP3_MUXENTRY(SDRC_CKE1, 0,
575                 "sdrc_cke1", NULL, NULL, NULL,
576                 NULL, NULL, NULL, "safe_mode"),
577         _OMAP3_MUXENTRY(SYS_BOOT0, 2,
578                 "sys_boot0", NULL, NULL, NULL,
579                 "gpio_2", NULL, NULL, "safe_mode"),
580         _OMAP3_MUXENTRY(SYS_BOOT1, 3,
581                 "sys_boot1", NULL, NULL, NULL,
582                 "gpio_3", NULL, NULL, "safe_mode"),
583         _OMAP3_MUXENTRY(SYS_BOOT2, 4,
584                 "sys_boot2", NULL, NULL, NULL,
585                 "gpio_4", NULL, NULL, "safe_mode"),
586         _OMAP3_MUXENTRY(SYS_BOOT3, 5,
587                 "sys_boot3", NULL, NULL, NULL,
588                 "gpio_5", NULL, NULL, "safe_mode"),
589         _OMAP3_MUXENTRY(SYS_BOOT4, 6,
590                 "sys_boot4", "sdmmc2_dir_dat2", NULL, NULL,
591                 "gpio_6", NULL, NULL, "safe_mode"),
592         _OMAP3_MUXENTRY(SYS_BOOT5, 7,
593                 "sys_boot5", "sdmmc2_dir_dat3", NULL, NULL,
594                 "gpio_7", NULL, NULL, "safe_mode"),
595         _OMAP3_MUXENTRY(SYS_BOOT6, 8,
596                 "sys_boot6", NULL, NULL, NULL,
597                 "gpio_8", NULL, NULL, "safe_mode"),
598         _OMAP3_MUXENTRY(SYS_CLKOUT1, 10,
599                 "sys_clkout1", NULL, NULL, NULL,
600                 "gpio_10", NULL, NULL, "safe_mode"),
601         _OMAP3_MUXENTRY(SYS_CLKOUT2, 186,
602                 "sys_clkout2", NULL, NULL, NULL,
603                 "gpio_186", NULL, NULL, "safe_mode"),
604         _OMAP3_MUXENTRY(SYS_CLKREQ, 1,
605                 "sys_clkreq", NULL, NULL, NULL,
606                 "gpio_1", NULL, NULL, "safe_mode"),
607         _OMAP3_MUXENTRY(SYS_NIRQ, 0,
608                 "sys_nirq", NULL, NULL, NULL,
609                 "gpio_0", NULL, NULL, "safe_mode"),
610         _OMAP3_MUXENTRY(SYS_NRESWARM, 30,
611                 "sys_nreswarm", NULL, NULL, NULL,
612                 "gpio_30", NULL, NULL, "safe_mode"),
613         _OMAP3_MUXENTRY(SYS_OFF_MODE, 9,
614                 "sys_off_mode", NULL, NULL, NULL,
615                 "gpio_9", NULL, NULL, "safe_mode"),
616         _OMAP3_MUXENTRY(UART1_CTS, 150,
617                 "uart1_cts", NULL, NULL, NULL,
618                 "gpio_150", "hsusb3_tll_clk", NULL, "safe_mode"),
619         _OMAP3_MUXENTRY(UART1_RTS, 149,
620                 "uart1_rts", NULL, NULL, NULL,
621                 "gpio_149", NULL, NULL, "safe_mode"),
622         _OMAP3_MUXENTRY(UART1_RX, 151,
623                 "uart1_rx", NULL, "mcbsp1_clkr", "mcspi4_clk",
624                 "gpio_151", NULL, NULL, "safe_mode"),
625         _OMAP3_MUXENTRY(UART1_TX, 148,
626                 "uart1_tx", NULL, NULL, NULL,
627                 "gpio_148", NULL, NULL, "safe_mode"),
628         _OMAP3_MUXENTRY(UART2_CTS, 144,
629                 "uart2_cts", "mcbsp3_dx", "gpt9_pwm_evt", NULL,
630                 "gpio_144", NULL, NULL, "safe_mode"),
631         _OMAP3_MUXENTRY(UART2_RTS, 145,
632                 "uart2_rts", "mcbsp3_dr", "gpt10_pwm_evt", NULL,
633                 "gpio_145", NULL, NULL, "safe_mode"),
634         _OMAP3_MUXENTRY(UART2_RX, 147,
635                 "uart2_rx", "mcbsp3_fsx", "gpt8_pwm_evt", NULL,
636                 "gpio_147", NULL, NULL, "safe_mode"),
637         _OMAP3_MUXENTRY(UART2_TX, 146,
638                 "uart2_tx", "mcbsp3_clkx", "gpt11_pwm_evt", NULL,
639                 "gpio_146", NULL, NULL, "safe_mode"),
640         _OMAP3_MUXENTRY(UART3_CTS_RCTX, 163,
641                 "uart3_cts_rctx", NULL, NULL, NULL,
642                 "gpio_163", NULL, NULL, "safe_mode"),
643         _OMAP3_MUXENTRY(UART3_RTS_SD, 164,
644                 "uart3_rts_sd", NULL, NULL, NULL,
645                 "gpio_164", NULL, NULL, "safe_mode"),
646         _OMAP3_MUXENTRY(UART3_RX_IRRX, 165,
647                 "uart3_rx_irrx", NULL, NULL, NULL,
648                 "gpio_165", NULL, NULL, "safe_mode"),
649         _OMAP3_MUXENTRY(UART3_TX_IRTX, 166,
650                 "uart3_tx_irtx", NULL, NULL, NULL,
651                 "gpio_166", NULL, NULL, "safe_mode"),
652
653         /* Only on 3630, see omap36xx_cbp_subset for the signals */
654         _OMAP3_MUXENTRY(GPMC_A11, 0,
655                 NULL, NULL, NULL, NULL,
656                 NULL, NULL, NULL, NULL),
657         _OMAP3_MUXENTRY(SAD2D_MBUSFLAG, 0,
658                 NULL, NULL, NULL, NULL,
659                 NULL, NULL, NULL, NULL),
660         _OMAP3_MUXENTRY(SAD2D_MREAD, 0,
661                 NULL, NULL, NULL, NULL,
662                 NULL, NULL, NULL, NULL),
663         _OMAP3_MUXENTRY(SAD2D_MWRITE, 0,
664                 NULL, NULL, NULL, NULL,
665                 NULL, NULL, NULL, NULL),
666         _OMAP3_MUXENTRY(SAD2D_SBUSFLAG, 0,
667                 NULL, NULL, NULL, NULL,
668                 NULL, NULL, NULL, NULL),
669         _OMAP3_MUXENTRY(SAD2D_SREAD, 0,
670                 NULL, NULL, NULL, NULL,
671                 NULL, NULL, NULL, NULL),
672         _OMAP3_MUXENTRY(SAD2D_SWRITE, 0,
673                 NULL, NULL, NULL, NULL,
674                 NULL, NULL, NULL, NULL),
675         _OMAP3_MUXENTRY(GPMC_A11, 0,
676                 NULL, NULL, NULL, NULL,
677                 NULL, NULL, NULL, NULL),
678         _OMAP3_MUXENTRY(SAD2D_MCAD28, 0,
679                 NULL, NULL, NULL, NULL,
680                 NULL, NULL, NULL, NULL),
681         _OMAP3_MUXENTRY(SAD2D_MCAD29, 0,
682                 NULL, NULL, NULL, NULL,
683                 NULL, NULL, NULL, NULL),
684         _OMAP3_MUXENTRY(SAD2D_MCAD32, 0,
685                 NULL, NULL, NULL, NULL,
686                 NULL, NULL, NULL, NULL),
687         _OMAP3_MUXENTRY(SAD2D_MCAD33, 0,
688                 NULL, NULL, NULL, NULL,
689                 NULL, NULL, NULL, NULL),
690         _OMAP3_MUXENTRY(SAD2D_MCAD34, 0,
691                 NULL, NULL, NULL, NULL,
692                 NULL, NULL, NULL, NULL),
693         _OMAP3_MUXENTRY(SAD2D_MCAD35, 0,
694                 NULL, NULL, NULL, NULL,
695                 NULL, NULL, NULL, NULL),
696         _OMAP3_MUXENTRY(SAD2D_MCAD36, 0,
697                 NULL, NULL, NULL, NULL,
698                 NULL, NULL, NULL, NULL),
699         { .reg_offset = OMAP_MUX_TERMINATOR },
700 };
701
702 /*
703  * Signals different on CBC package compared to the superset
704  */
705 #if defined(CONFIG_OMAP_MUX) && defined(CONFIG_OMAP_PACKAGE_CBC)
706 struct omap_mux __initdata omap3_cbc_subset[] = {
707         { .reg_offset = OMAP_MUX_TERMINATOR },
708 };
709 #else
710 #define omap3_cbc_subset        NULL
711 #endif
712
713 /*
714  * Balls for CBC package
715  * 515-pin s-PBGA Package, 0.65mm Ball Pitch (Top), 0.50mm Ball Pitch (Bottom)
716  *
717  * FIXME: What's up with the outdated TI documentation? See:
718  *
719  * http://wiki.davincidsp.com/index.php/Datasheet_Errata_for_OMAP35x_CBC_Package
720  * http://community.ti.com/forums/t/10982.aspx
721  */
722 #if defined(CONFIG_OMAP_MUX) && defined(CONFIG_DEBUG_FS)        \
723                 && defined(CONFIG_OMAP_PACKAGE_CBC)
724 struct omap_ball __initdata omap3_cbc_ball[] = {
725         _OMAP3_BALLENTRY(CAM_D0, "ae16", NULL),
726         _OMAP3_BALLENTRY(CAM_D1, "ae15", NULL),
727         _OMAP3_BALLENTRY(CAM_D10, "d25", NULL),
728         _OMAP3_BALLENTRY(CAM_D11, "e26", NULL),
729         _OMAP3_BALLENTRY(CAM_D2, "a24", NULL),
730         _OMAP3_BALLENTRY(CAM_D3, "b24", NULL),
731         _OMAP3_BALLENTRY(CAM_D4, "d24", NULL),
732         _OMAP3_BALLENTRY(CAM_D5, "c24", NULL),
733         _OMAP3_BALLENTRY(CAM_D6, "p25", NULL),
734         _OMAP3_BALLENTRY(CAM_D7, "p26", NULL),
735         _OMAP3_BALLENTRY(CAM_D8, "n25", NULL),
736         _OMAP3_BALLENTRY(CAM_D9, "n26", NULL),
737         _OMAP3_BALLENTRY(CAM_FLD, "b23", NULL),
738         _OMAP3_BALLENTRY(CAM_HS, "c23", NULL),
739         _OMAP3_BALLENTRY(CAM_PCLK, "c26", NULL),
740         _OMAP3_BALLENTRY(CAM_STROBE, "d26", NULL),
741         _OMAP3_BALLENTRY(CAM_VS, "d23", NULL),
742         _OMAP3_BALLENTRY(CAM_WEN, "a23", NULL),
743         _OMAP3_BALLENTRY(CAM_XCLKA, "c25", NULL),
744         _OMAP3_BALLENTRY(CAM_XCLKB, "e25", NULL),
745         _OMAP3_BALLENTRY(CSI2_DX0, "ad17", NULL),
746         _OMAP3_BALLENTRY(CSI2_DX1, "ae18", NULL),
747         _OMAP3_BALLENTRY(CSI2_DY0, "ad16", NULL),
748         _OMAP3_BALLENTRY(CSI2_DY1, "ae17", NULL),
749         _OMAP3_BALLENTRY(DSS_ACBIAS, "f26", NULL),
750         _OMAP3_BALLENTRY(DSS_DATA0, "ae21", NULL),
751         _OMAP3_BALLENTRY(DSS_DATA1, "ae22", NULL),
752         _OMAP3_BALLENTRY(DSS_DATA10, "ac26", NULL),
753         _OMAP3_BALLENTRY(DSS_DATA11, "ad26", NULL),
754         _OMAP3_BALLENTRY(DSS_DATA12, "aa25", NULL),
755         _OMAP3_BALLENTRY(DSS_DATA13, "y25", NULL),
756         _OMAP3_BALLENTRY(DSS_DATA14, "aa26", NULL),
757         _OMAP3_BALLENTRY(DSS_DATA15, "ab26", NULL),
758         _OMAP3_BALLENTRY(DSS_DATA16, "l25", NULL),
759         _OMAP3_BALLENTRY(DSS_DATA17, "l26", NULL),
760         _OMAP3_BALLENTRY(DSS_DATA18, "m24", NULL),
761         _OMAP3_BALLENTRY(DSS_DATA19, "m26", NULL),
762         _OMAP3_BALLENTRY(DSS_DATA2, "ae23", NULL),
763         _OMAP3_BALLENTRY(DSS_DATA20, "f25", NULL),
764         _OMAP3_BALLENTRY(DSS_DATA21, "n24", NULL),
765         _OMAP3_BALLENTRY(DSS_DATA22, "ac25", NULL),
766         _OMAP3_BALLENTRY(DSS_DATA23, "ab25", NULL),
767         _OMAP3_BALLENTRY(DSS_DATA3, "ae24", NULL),
768         _OMAP3_BALLENTRY(DSS_DATA4, "ad23", NULL),
769         _OMAP3_BALLENTRY(DSS_DATA5, "ad24", NULL),
770         _OMAP3_BALLENTRY(DSS_DATA6, "g26", NULL),
771         _OMAP3_BALLENTRY(DSS_DATA7, "h25", NULL),
772         _OMAP3_BALLENTRY(DSS_DATA8, "h26", NULL),
773         _OMAP3_BALLENTRY(DSS_DATA9, "j26", NULL),
774         _OMAP3_BALLENTRY(DSS_HSYNC, "k24", NULL),
775         _OMAP3_BALLENTRY(DSS_PCLK, "g25", NULL),
776         _OMAP3_BALLENTRY(DSS_VSYNC, "m25", NULL),
777         _OMAP3_BALLENTRY(ETK_CLK, "ab2", NULL),
778         _OMAP3_BALLENTRY(ETK_CTL, "ab3", NULL),
779         _OMAP3_BALLENTRY(ETK_D0, "ac3", NULL),
780         _OMAP3_BALLENTRY(ETK_D1, "ad4", NULL),
781         _OMAP3_BALLENTRY(ETK_D10, "ae4", NULL),
782         _OMAP3_BALLENTRY(ETK_D11, "af6", NULL),
783         _OMAP3_BALLENTRY(ETK_D12, "ae6", NULL),
784         _OMAP3_BALLENTRY(ETK_D13, "af7", NULL),
785         _OMAP3_BALLENTRY(ETK_D14, "af9", NULL),
786         _OMAP3_BALLENTRY(ETK_D15, "ae9", NULL),
787         _OMAP3_BALLENTRY(ETK_D2, "ad3", NULL),
788         _OMAP3_BALLENTRY(ETK_D3, "aa3", NULL),
789         _OMAP3_BALLENTRY(ETK_D4, "y3", NULL),
790         _OMAP3_BALLENTRY(ETK_D5, "ab1", NULL),
791         _OMAP3_BALLENTRY(ETK_D6, "ae3", NULL),
792         _OMAP3_BALLENTRY(ETK_D7, "ad2", NULL),
793         _OMAP3_BALLENTRY(ETK_D8, "aa4", NULL),
794         _OMAP3_BALLENTRY(ETK_D9, "v2", NULL),
795         _OMAP3_BALLENTRY(GPMC_A1, "j2", NULL),
796         _OMAP3_BALLENTRY(GPMC_A10, "d2", NULL),
797         _OMAP3_BALLENTRY(GPMC_A2, "h1", NULL),
798         _OMAP3_BALLENTRY(GPMC_A3, "h2", NULL),
799         _OMAP3_BALLENTRY(GPMC_A4, "g2", NULL),
800         _OMAP3_BALLENTRY(GPMC_A5, "f1", NULL),
801         _OMAP3_BALLENTRY(GPMC_A6, "f2", NULL),
802         _OMAP3_BALLENTRY(GPMC_A7, "e1", NULL),
803         _OMAP3_BALLENTRY(GPMC_A8, "e2", NULL),
804         _OMAP3_BALLENTRY(GPMC_A9, "d1", NULL),
805         _OMAP3_BALLENTRY(GPMC_CLK, "n1", "l1"),
806         _OMAP3_BALLENTRY(GPMC_D10, "t1", "n1"),
807         _OMAP3_BALLENTRY(GPMC_D11, "u2", "p2"),
808         _OMAP3_BALLENTRY(GPMC_D12, "u1", "p1"),
809         _OMAP3_BALLENTRY(GPMC_D13, "p1", "m1"),
810         _OMAP3_BALLENTRY(GPMC_D14, "l2", "j2"),
811         _OMAP3_BALLENTRY(GPMC_D15, "m2", "k2"),
812         _OMAP3_BALLENTRY(GPMC_D8, "v1", "r1"),
813         _OMAP3_BALLENTRY(GPMC_D9, "y1", "t1"),
814         _OMAP3_BALLENTRY(GPMC_NBE0_CLE, "k2", NULL),
815         _OMAP3_BALLENTRY(GPMC_NBE1, "j1", NULL),
816         _OMAP3_BALLENTRY(GPMC_NCS1, "ad1", "w1"),
817         _OMAP3_BALLENTRY(GPMC_NCS2, "a3", NULL),
818         _OMAP3_BALLENTRY(GPMC_NCS3, "b6", NULL),
819         _OMAP3_BALLENTRY(GPMC_NCS4, "b4", NULL),
820         _OMAP3_BALLENTRY(GPMC_NCS5, "c4", NULL),
821         _OMAP3_BALLENTRY(GPMC_NCS6, "b5", NULL),
822         _OMAP3_BALLENTRY(GPMC_NCS7, "c5", NULL),
823         _OMAP3_BALLENTRY(GPMC_NWP, "ac6", "y5"),
824         _OMAP3_BALLENTRY(GPMC_WAIT1, "ac8", "y8"),
825         _OMAP3_BALLENTRY(GPMC_WAIT2, "b3", NULL),
826         _OMAP3_BALLENTRY(GPMC_WAIT3, "c6", NULL),
827         _OMAP3_BALLENTRY(HDQ_SIO, "j23", NULL),
828         _OMAP3_BALLENTRY(HSUSB0_CLK, "w19", NULL),
829         _OMAP3_BALLENTRY(HSUSB0_DATA0, "v20", NULL),
830         _OMAP3_BALLENTRY(HSUSB0_DATA1, "y20", NULL),
831         _OMAP3_BALLENTRY(HSUSB0_DATA2, "v18", NULL),
832         _OMAP3_BALLENTRY(HSUSB0_DATA3, "w20", NULL),
833         _OMAP3_BALLENTRY(HSUSB0_DATA4, "w17", NULL),
834         _OMAP3_BALLENTRY(HSUSB0_DATA5, "y18", NULL),
835         _OMAP3_BALLENTRY(HSUSB0_DATA6, "y19", NULL),
836         _OMAP3_BALLENTRY(HSUSB0_DATA7, "y17", NULL),
837         _OMAP3_BALLENTRY(HSUSB0_DIR, "v19", NULL),
838         _OMAP3_BALLENTRY(HSUSB0_NXT, "w18", NULL),
839         _OMAP3_BALLENTRY(HSUSB0_STP, "u20", NULL),
840         _OMAP3_BALLENTRY(I2C2_SCL, "c2", NULL),
841         _OMAP3_BALLENTRY(I2C2_SDA, "c1", NULL),
842         _OMAP3_BALLENTRY(I2C3_SCL, "ab4", NULL),
843         _OMAP3_BALLENTRY(I2C3_SDA, "ac4", NULL),
844         _OMAP3_BALLENTRY(I2C4_SCL, "ad15", NULL),
845         _OMAP3_BALLENTRY(I2C4_SDA, "w16", NULL),
846         _OMAP3_BALLENTRY(JTAG_EMU0, "y15", NULL),
847         _OMAP3_BALLENTRY(JTAG_EMU1, "y14", NULL),
848         _OMAP3_BALLENTRY(MCBSP1_CLKR, "u19", NULL),
849         _OMAP3_BALLENTRY(MCBSP1_CLKX, "t17", NULL),
850         _OMAP3_BALLENTRY(MCBSP1_DR, "t20", NULL),
851         _OMAP3_BALLENTRY(MCBSP1_DX, "u17", NULL),
852         _OMAP3_BALLENTRY(MCBSP1_FSR, "v17", NULL),
853         _OMAP3_BALLENTRY(MCBSP1_FSX, "p20", NULL),
854         _OMAP3_BALLENTRY(MCBSP2_CLKX, "r18", NULL),
855         _OMAP3_BALLENTRY(MCBSP2_DR, "t18", NULL),
856         _OMAP3_BALLENTRY(MCBSP2_DX, "r19", NULL),
857         _OMAP3_BALLENTRY(MCBSP2_FSX, "u18", NULL),
858         _OMAP3_BALLENTRY(MCBSP3_CLKX, "u3", NULL),
859         _OMAP3_BALLENTRY(MCBSP3_DR, "n3", NULL),
860         _OMAP3_BALLENTRY(MCBSP3_DX, "p3", NULL),
861         _OMAP3_BALLENTRY(MCBSP3_FSX, "w3", NULL),
862         _OMAP3_BALLENTRY(MCBSP4_CLKX, "v3", NULL),
863         _OMAP3_BALLENTRY(MCBSP4_DR, "u4", NULL),
864         _OMAP3_BALLENTRY(MCBSP4_DX, "r3", NULL),
865         _OMAP3_BALLENTRY(MCBSP4_FSX, "t3", NULL),
866         _OMAP3_BALLENTRY(MCBSP_CLKS, "t19", NULL),
867         _OMAP3_BALLENTRY(MCSPI1_CLK, "p9", NULL),
868         _OMAP3_BALLENTRY(MCSPI1_CS0, "r7", NULL),
869         _OMAP3_BALLENTRY(MCSPI1_CS1, "r8", NULL),
870         _OMAP3_BALLENTRY(MCSPI1_CS2, "r9", NULL),
871         _OMAP3_BALLENTRY(MCSPI1_CS3, "t8", NULL),
872         _OMAP3_BALLENTRY(MCSPI1_SIMO, "p8", NULL),
873         _OMAP3_BALLENTRY(MCSPI1_SOMI, "p7", NULL),
874         _OMAP3_BALLENTRY(MCSPI2_CLK, "w7", NULL),
875         _OMAP3_BALLENTRY(MCSPI2_CS0, "v8", NULL),
876         _OMAP3_BALLENTRY(MCSPI2_CS1, "v9", NULL),
877         _OMAP3_BALLENTRY(MCSPI2_SIMO, "w8", NULL),
878         _OMAP3_BALLENTRY(MCSPI2_SOMI, "u8", NULL),
879         _OMAP3_BALLENTRY(SDMMC1_CLK, "n19", NULL),
880         _OMAP3_BALLENTRY(SDMMC1_CMD, "l18", NULL),
881         _OMAP3_BALLENTRY(SDMMC1_DAT0, "m19", NULL),
882         _OMAP3_BALLENTRY(SDMMC1_DAT1, "m18", NULL),
883         _OMAP3_BALLENTRY(SDMMC1_DAT2, "k18", NULL),
884         _OMAP3_BALLENTRY(SDMMC1_DAT3, "n20", NULL),
885         _OMAP3_BALLENTRY(SDMMC1_DAT4, "m20", NULL),
886         _OMAP3_BALLENTRY(SDMMC1_DAT5, "p17", NULL),
887         _OMAP3_BALLENTRY(SDMMC1_DAT6, "p18", NULL),
888         _OMAP3_BALLENTRY(SDMMC1_DAT7, "p19", NULL),
889         _OMAP3_BALLENTRY(SDMMC2_CLK, "w10", NULL),
890         _OMAP3_BALLENTRY(SDMMC2_CMD, "r10", NULL),
891         _OMAP3_BALLENTRY(SDMMC2_DAT0, "t10", NULL),
892         _OMAP3_BALLENTRY(SDMMC2_DAT1, "t9", NULL),
893         _OMAP3_BALLENTRY(SDMMC2_DAT2, "u10", NULL),
894         _OMAP3_BALLENTRY(SDMMC2_DAT3, "u9", NULL),
895         _OMAP3_BALLENTRY(SDMMC2_DAT4, "v10", NULL),
896         _OMAP3_BALLENTRY(SDMMC2_DAT5, "m3", NULL),
897         _OMAP3_BALLENTRY(SDMMC2_DAT6, "l3", NULL),
898         _OMAP3_BALLENTRY(SDMMC2_DAT7, "k3", NULL),
899         _OMAP3_BALLENTRY(SYS_BOOT0, "f3", NULL),
900         _OMAP3_BALLENTRY(SYS_BOOT1, "d3", NULL),
901         _OMAP3_BALLENTRY(SYS_BOOT2, "c3", NULL),
902         _OMAP3_BALLENTRY(SYS_BOOT3, "e3", NULL),
903         _OMAP3_BALLENTRY(SYS_BOOT4, "e4", NULL),
904         _OMAP3_BALLENTRY(SYS_BOOT5, "g3", NULL),
905         _OMAP3_BALLENTRY(SYS_BOOT6, "d4", NULL),
906         _OMAP3_BALLENTRY(SYS_CLKOUT1, "ae14", NULL),
907         _OMAP3_BALLENTRY(SYS_CLKOUT2, "w11", NULL),
908         _OMAP3_BALLENTRY(SYS_CLKREQ, "w15", NULL),
909         _OMAP3_BALLENTRY(SYS_NIRQ, "v16", NULL),
910         _OMAP3_BALLENTRY(SYS_NRESWARM, "ad7", "aa5"),
911         _OMAP3_BALLENTRY(SYS_OFF_MODE, "v12", NULL),
912         _OMAP3_BALLENTRY(UART1_CTS, "w2", NULL),
913         _OMAP3_BALLENTRY(UART1_RTS, "r2", NULL),
914         _OMAP3_BALLENTRY(UART1_RX, "h3", NULL),
915         _OMAP3_BALLENTRY(UART1_TX, "l4", NULL),
916         _OMAP3_BALLENTRY(UART2_CTS, "y24", NULL),
917         _OMAP3_BALLENTRY(UART2_RTS, "aa24", NULL),
918         _OMAP3_BALLENTRY(UART2_RX, "ad21", NULL),
919         _OMAP3_BALLENTRY(UART2_TX, "ad22", NULL),
920         _OMAP3_BALLENTRY(UART3_CTS_RCTX, "f23", NULL),
921         _OMAP3_BALLENTRY(UART3_RTS_SD, "f24", NULL),
922         _OMAP3_BALLENTRY(UART3_RX_IRRX, "h24", NULL),
923         _OMAP3_BALLENTRY(UART3_TX_IRTX, "g24", NULL),
924         { .reg_offset = OMAP_MUX_TERMINATOR },
925 };
926 #else
927 #define omap3_cbc_ball   NULL
928 #endif
929
930 /*
931  * Signals different on CUS package compared to superset
932  */
933 #if defined(CONFIG_OMAP_MUX) && defined(CONFIG_OMAP_PACKAGE_CUS)
934 static struct omap_mux __initdata omap3_cus_subset[] = {
935         _OMAP3_MUXENTRY(CAM_D10, 109,
936                 "cam_d10", NULL, NULL, NULL,
937                 "gpio_109", NULL, NULL, "safe_mode"),
938         _OMAP3_MUXENTRY(CAM_D11, 110,
939                 "cam_d11", NULL, NULL, NULL,
940                 "gpio_110", NULL, NULL, "safe_mode"),
941         _OMAP3_MUXENTRY(CAM_D2, 101,
942                 "cam_d2", NULL, NULL, NULL,
943                 "gpio_101", NULL, NULL, "safe_mode"),
944         _OMAP3_MUXENTRY(CAM_D3, 102,
945                 "cam_d3", NULL, NULL, NULL,
946                 "gpio_102", NULL, NULL, "safe_mode"),
947         _OMAP3_MUXENTRY(CAM_D4, 103,
948                 "cam_d4", NULL, NULL, NULL,
949                 "gpio_103", NULL, NULL, "safe_mode"),
950         _OMAP3_MUXENTRY(CAM_D5, 104,
951                 "cam_d5", NULL, NULL, NULL,
952                 "gpio_104", NULL, NULL, "safe_mode"),
953         _OMAP3_MUXENTRY(CAM_FLD, 98,
954                 "cam_fld", NULL, "cam_global_reset", NULL,
955                 "gpio_98", NULL, NULL, "safe_mode"),
956         _OMAP3_MUXENTRY(CAM_HS, 94,
957                 "cam_hs", NULL, NULL, NULL,
958                 "gpio_94", NULL, NULL, "safe_mode"),
959         _OMAP3_MUXENTRY(CAM_PCLK, 97,
960                 "cam_pclk", NULL, NULL, NULL,
961                 "gpio_97", NULL, NULL, "safe_mode"),
962         _OMAP3_MUXENTRY(CAM_STROBE, 126,
963                 "cam_strobe", NULL, NULL, NULL,
964                 "gpio_126", NULL, NULL, "safe_mode"),
965         _OMAP3_MUXENTRY(CAM_VS, 95,
966                 "cam_vs", NULL, NULL, NULL,
967                 "gpio_95", NULL, NULL, "safe_mode"),
968         _OMAP3_MUXENTRY(CAM_WEN, 167,
969                 "cam_wen", NULL, "cam_shutter", NULL,
970                 "gpio_167", NULL, NULL, "safe_mode"),
971         _OMAP3_MUXENTRY(DSS_DATA6, 76,
972                 "dss_data6", NULL, "uart1_tx", NULL,
973                 "gpio_76", NULL, NULL, "safe_mode"),
974         _OMAP3_MUXENTRY(DSS_DATA7, 77,
975                 "dss_data7", NULL, "uart1_rx", NULL,
976                 "gpio_77", NULL, NULL, "safe_mode"),
977         _OMAP3_MUXENTRY(DSS_DATA8, 78,
978                 "dss_data8", NULL, NULL, NULL,
979                 "gpio_78", NULL, NULL, "safe_mode"),
980         _OMAP3_MUXENTRY(DSS_DATA9, 79,
981                 "dss_data9", NULL, NULL, NULL,
982                 "gpio_79", NULL, NULL, "safe_mode"),
983         _OMAP3_MUXENTRY(DSS_HSYNC, 67,
984                 "dss_hsync", NULL, NULL, NULL,
985                 "gpio_67", NULL, NULL, "safe_mode"),
986         _OMAP3_MUXENTRY(DSS_PCLK, 66,
987                 "dss_pclk", NULL, NULL, NULL,
988                 "gpio_66", NULL, NULL, "safe_mode"),
989         _OMAP3_MUXENTRY(ETK_CLK, 12,
990                 "etk_clk", "mcbsp5_clkx", "sdmmc3_clk", "hsusb1_stp",
991                 "gpio_12", "mm1_rxdp", "hsusb1_tll_stp", NULL),
992         _OMAP3_MUXENTRY(ETK_CTL, 13,
993                 "etk_ctl", NULL, "sdmmc3_cmd", "hsusb1_clk",
994                 "gpio_13", NULL, "hsusb1_tll_clk", NULL),
995         _OMAP3_MUXENTRY(ETK_D0, 14,
996                 "etk_d0", "mcspi3_simo", "sdmmc3_dat4", "hsusb1_data0",
997                 "gpio_14", "mm1_rxrcv", "hsusb1_tll_data0", NULL),
998         _OMAP3_MUXENTRY(ETK_D1, 15,
999                 "etk_d1", "mcspi3_somi", NULL, "hsusb1_data1",
1000                 "gpio_15", "mm1_txse0", "hsusb1_tll_data1", NULL),
1001         _OMAP3_MUXENTRY(ETK_D10, 24,
1002                 "etk_d10", NULL, "uart1_rx", "hsusb2_clk",
1003                 "gpio_24", NULL, "hsusb2_tll_clk", NULL),
1004         _OMAP3_MUXENTRY(ETK_D11, 25,
1005                 "etk_d11", NULL, NULL, "hsusb2_stp",
1006                 "gpio_25", "mm2_rxdp", "hsusb2_tll_stp", NULL),
1007         _OMAP3_MUXENTRY(ETK_D12, 26,
1008                 "etk_d12", NULL, NULL, "hsusb2_dir",
1009                 "gpio_26", NULL, "hsusb2_tll_dir", NULL),
1010         _OMAP3_MUXENTRY(ETK_D13, 27,
1011                 "etk_d13", NULL, NULL, "hsusb2_nxt",
1012                 "gpio_27", "mm2_rxdm", "hsusb2_tll_nxt", NULL),
1013         _OMAP3_MUXENTRY(ETK_D14, 28,
1014                 "etk_d14", NULL, NULL, "hsusb2_data0",
1015                 "gpio_28", "mm2_rxrcv", "hsusb2_tll_data0", NULL),
1016         _OMAP3_MUXENTRY(ETK_D15, 29,
1017                 "etk_d15", NULL, NULL, "hsusb2_data1",
1018                 "gpio_29", "mm2_txse0", "hsusb2_tll_data1", NULL),
1019         _OMAP3_MUXENTRY(ETK_D2, 16,
1020                 "etk_d2", "mcspi3_cs0", NULL, "hsusb1_data2",
1021                 "gpio_16", "mm1_txdat", "hsusb1_tll_data2", NULL),
1022         _OMAP3_MUXENTRY(ETK_D3, 17,
1023                 "etk_d3", "mcspi3_clk", "sdmmc3_dat3", "hsusb1_data7",
1024                 "gpio_17", NULL, "hsusb1_tll_data7", NULL),
1025         _OMAP3_MUXENTRY(ETK_D4, 18,
1026                 "etk_d4", "mcbsp5_dr", "sdmmc3_dat0", "hsusb1_data4",
1027                 "gpio_18", NULL, "hsusb1_tll_data4", NULL),
1028         _OMAP3_MUXENTRY(ETK_D5, 19,
1029                 "etk_d5", "mcbsp5_fsx", "sdmmc3_dat1", "hsusb1_data5",
1030                 "gpio_19", NULL, "hsusb1_tll_data5", NULL),
1031         _OMAP3_MUXENTRY(ETK_D6, 20,
1032                 "etk_d6", "mcbsp5_dx", "sdmmc3_dat2", "hsusb1_data6",
1033                 "gpio_20", NULL, "hsusb1_tll_data6", NULL),
1034         _OMAP3_MUXENTRY(ETK_D7, 21,
1035                 "etk_d7", "mcspi3_cs1", "sdmmc3_dat7", "hsusb1_data3",
1036                 "gpio_21", "mm1_txen_n", "hsusb1_tll_data3", NULL),
1037         _OMAP3_MUXENTRY(ETK_D8, 22,
1038                 "etk_d8", "sys_drm_msecure", "sdmmc3_dat6", "hsusb1_dir",
1039                 "gpio_22", NULL, "hsusb1_tll_dir", NULL),
1040         _OMAP3_MUXENTRY(ETK_D9, 23,
1041                 "etk_d9", "sys_secure_indicator", "sdmmc3_dat5", "hsusb1_nxt",
1042                 "gpio_23", "mm1_rxdm", "hsusb1_tll_nxt", NULL),
1043         _OMAP3_MUXENTRY(MCBSP3_CLKX, 142,
1044                 "mcbsp3_clkx", "uart2_tx", NULL, NULL,
1045                 "gpio_142", NULL, NULL, "safe_mode"),
1046         _OMAP3_MUXENTRY(MCBSP3_DR, 141,
1047                 "mcbsp3_dr", "uart2_rts", NULL, NULL,
1048                 "gpio_141", NULL, NULL, "safe_mode"),
1049         _OMAP3_MUXENTRY(MCBSP3_DX, 140,
1050                 "mcbsp3_dx", "uart2_cts", NULL, NULL,
1051                 "gpio_140", NULL, NULL, "safe_mode"),
1052         _OMAP3_MUXENTRY(MCBSP3_FSX, 143,
1053                 "mcbsp3_fsx", "uart2_rx", NULL, NULL,
1054                 "gpio_143", NULL, NULL, "safe_mode"),
1055         _OMAP3_MUXENTRY(SDMMC2_DAT5, 137,
1056                 "sdmmc2_dat5", "sdmmc2_dir_dat1",
1057                 "cam_global_reset", "sdmmc3_dat1",
1058                 "gpio_137", NULL, NULL, "safe_mode"),
1059         _OMAP3_MUXENTRY(SDMMC2_DAT6, 138,
1060                 "sdmmc2_dat6", "sdmmc2_dir_cmd", "cam_shutter", "sdmmc3_dat2",
1061                 "gpio_138", NULL, NULL, "safe_mode"),
1062         _OMAP3_MUXENTRY(SDMMC2_DAT7, 139,
1063                 "sdmmc2_dat7", "sdmmc2_clkin", NULL, "sdmmc3_dat3",
1064                 "gpio_139", NULL, NULL, "safe_mode"),
1065         _OMAP3_MUXENTRY(UART1_CTS, 150,
1066                 "uart1_cts", NULL, NULL, NULL,
1067                 "gpio_150", NULL, NULL, "safe_mode"),
1068         { .reg_offset = OMAP_MUX_TERMINATOR },
1069 };
1070 #else
1071 #define omap3_cus_subset        NULL
1072 #endif
1073
1074 /*
1075  * Balls for CUS package
1076  * 423-pin s-PBGA Package, 0.65mm Ball Pitch (Bottom)
1077  */
1078 #if defined(CONFIG_OMAP_MUX) && defined(CONFIG_DEBUG_FS)                \
1079                 && defined(CONFIG_OMAP_PACKAGE_CUS)
1080 static struct omap_ball __initdata omap3_cus_ball[] = {
1081         _OMAP3_BALLENTRY(CAM_D0, "ab18", NULL),
1082         _OMAP3_BALLENTRY(CAM_D1, "ac18", NULL),
1083         _OMAP3_BALLENTRY(CAM_D10, "f21", NULL),
1084         _OMAP3_BALLENTRY(CAM_D11, "g21", NULL),
1085         _OMAP3_BALLENTRY(CAM_D2, "g19", NULL),
1086         _OMAP3_BALLENTRY(CAM_D3, "f19", NULL),
1087         _OMAP3_BALLENTRY(CAM_D4, "g20", NULL),
1088         _OMAP3_BALLENTRY(CAM_D5, "b21", NULL),
1089         _OMAP3_BALLENTRY(CAM_D6, "l24", NULL),
1090         _OMAP3_BALLENTRY(CAM_D7, "k24", NULL),
1091         _OMAP3_BALLENTRY(CAM_D8, "j23", NULL),
1092         _OMAP3_BALLENTRY(CAM_D9, "k23", NULL),
1093         _OMAP3_BALLENTRY(CAM_FLD, "h24", NULL),
1094         _OMAP3_BALLENTRY(CAM_HS, "a22", NULL),
1095         _OMAP3_BALLENTRY(CAM_PCLK, "j19", NULL),
1096         _OMAP3_BALLENTRY(CAM_STROBE, "j20", NULL),
1097         _OMAP3_BALLENTRY(CAM_VS, "e18", NULL),
1098         _OMAP3_BALLENTRY(CAM_WEN, "f18", NULL),
1099         _OMAP3_BALLENTRY(CAM_XCLKA, "b22", NULL),
1100         _OMAP3_BALLENTRY(CAM_XCLKB, "c22", NULL),
1101         _OMAP3_BALLENTRY(DSS_ACBIAS, "j21", NULL),
1102         _OMAP3_BALLENTRY(DSS_DATA0, "ac19", NULL),
1103         _OMAP3_BALLENTRY(DSS_DATA1, "ab19", NULL),
1104         _OMAP3_BALLENTRY(DSS_DATA10, "ac22", NULL),
1105         _OMAP3_BALLENTRY(DSS_DATA11, "ac23", NULL),
1106         _OMAP3_BALLENTRY(DSS_DATA12, "ab22", NULL),
1107         _OMAP3_BALLENTRY(DSS_DATA13, "y22", NULL),
1108         _OMAP3_BALLENTRY(DSS_DATA14, "w22", NULL),
1109         _OMAP3_BALLENTRY(DSS_DATA15, "v22", NULL),
1110         _OMAP3_BALLENTRY(DSS_DATA16, "j22", NULL),
1111         _OMAP3_BALLENTRY(DSS_DATA17, "g23", NULL),
1112         _OMAP3_BALLENTRY(DSS_DATA18, "g24", NULL),
1113         _OMAP3_BALLENTRY(DSS_DATA19, "h23", NULL),
1114         _OMAP3_BALLENTRY(DSS_DATA2, "ad20", NULL),
1115         _OMAP3_BALLENTRY(DSS_DATA20, "d23", NULL),
1116         _OMAP3_BALLENTRY(DSS_DATA21, "k22", NULL),
1117         _OMAP3_BALLENTRY(DSS_DATA22, "v21", NULL),
1118         _OMAP3_BALLENTRY(DSS_DATA23, "w21", NULL),
1119         _OMAP3_BALLENTRY(DSS_DATA3, "ac20", NULL),
1120         _OMAP3_BALLENTRY(DSS_DATA4, "ad21", NULL),
1121         _OMAP3_BALLENTRY(DSS_DATA5, "ac21", NULL),
1122         _OMAP3_BALLENTRY(DSS_DATA6, "d24", NULL),
1123         _OMAP3_BALLENTRY(DSS_DATA7, "e23", NULL),
1124         _OMAP3_BALLENTRY(DSS_DATA8, "e24", NULL),
1125         _OMAP3_BALLENTRY(DSS_DATA9, "f23", NULL),
1126         _OMAP3_BALLENTRY(DSS_HSYNC, "e22", NULL),
1127         _OMAP3_BALLENTRY(DSS_PCLK, "g22", NULL),
1128         _OMAP3_BALLENTRY(DSS_VSYNC, "f22", NULL),
1129         _OMAP3_BALLENTRY(ETK_CLK, "ac1", NULL),
1130         _OMAP3_BALLENTRY(ETK_CTL, "ad3", NULL),
1131         _OMAP3_BALLENTRY(ETK_D0, "ad6", NULL),
1132         _OMAP3_BALLENTRY(ETK_D1, "ac6", NULL),
1133         _OMAP3_BALLENTRY(ETK_D10, "ac3", NULL),
1134         _OMAP3_BALLENTRY(ETK_D11, "ac9", NULL),
1135         _OMAP3_BALLENTRY(ETK_D12, "ac10", NULL),
1136         _OMAP3_BALLENTRY(ETK_D13, "ad11", NULL),
1137         _OMAP3_BALLENTRY(ETK_D14, "ac11", NULL),
1138         _OMAP3_BALLENTRY(ETK_D15, "ad12", NULL),
1139         _OMAP3_BALLENTRY(ETK_D2, "ac7", NULL),
1140         _OMAP3_BALLENTRY(ETK_D3, "ad8", NULL),
1141         _OMAP3_BALLENTRY(ETK_D4, "ac5", NULL),
1142         _OMAP3_BALLENTRY(ETK_D5, "ad2", NULL),
1143         _OMAP3_BALLENTRY(ETK_D6, "ac8", NULL),
1144         _OMAP3_BALLENTRY(ETK_D7, "ad9", NULL),
1145         _OMAP3_BALLENTRY(ETK_D8, "ac4", NULL),
1146         _OMAP3_BALLENTRY(ETK_D9, "ad5", NULL),
1147         _OMAP3_BALLENTRY(GPMC_A1, "k4", NULL),
1148         _OMAP3_BALLENTRY(GPMC_A10, "g2", NULL),
1149         _OMAP3_BALLENTRY(GPMC_A2, "k3", NULL),
1150         _OMAP3_BALLENTRY(GPMC_A3, "k2", NULL),
1151         _OMAP3_BALLENTRY(GPMC_A4, "j4", NULL),
1152         _OMAP3_BALLENTRY(GPMC_A5, "j3", NULL),
1153         _OMAP3_BALLENTRY(GPMC_A6, "j2", NULL),
1154         _OMAP3_BALLENTRY(GPMC_A7, "j1", NULL),
1155         _OMAP3_BALLENTRY(GPMC_A8, "h1", NULL),
1156         _OMAP3_BALLENTRY(GPMC_A9, "h2", NULL),
1157         _OMAP3_BALLENTRY(GPMC_CLK, "w2", NULL),
1158         _OMAP3_BALLENTRY(GPMC_D10, "u1", NULL),
1159         _OMAP3_BALLENTRY(GPMC_D11, "r3", NULL),
1160         _OMAP3_BALLENTRY(GPMC_D12, "t3", NULL),
1161         _OMAP3_BALLENTRY(GPMC_D13, "u2", NULL),
1162         _OMAP3_BALLENTRY(GPMC_D14, "v1", NULL),
1163         _OMAP3_BALLENTRY(GPMC_D15, "v2", NULL),
1164         _OMAP3_BALLENTRY(GPMC_D8, "r2", NULL),
1165         _OMAP3_BALLENTRY(GPMC_D9, "t2", NULL),
1166         _OMAP3_BALLENTRY(GPMC_NBE0_CLE, "k5", NULL),
1167         _OMAP3_BALLENTRY(GPMC_NBE1, "l1", NULL),
1168         _OMAP3_BALLENTRY(GPMC_NCS3, "d2", NULL),
1169         _OMAP3_BALLENTRY(GPMC_NCS4, "f4", NULL),
1170         _OMAP3_BALLENTRY(GPMC_NCS5, "g5", NULL),
1171         _OMAP3_BALLENTRY(GPMC_NCS6, "f3", NULL),
1172         _OMAP3_BALLENTRY(GPMC_NCS7, "g4", NULL),
1173         _OMAP3_BALLENTRY(GPMC_NWP, "e1", NULL),
1174         _OMAP3_BALLENTRY(GPMC_WAIT3, "c2", NULL),
1175         _OMAP3_BALLENTRY(HDQ_SIO, "a24", NULL),
1176         _OMAP3_BALLENTRY(HSUSB0_CLK, "r21", NULL),
1177         _OMAP3_BALLENTRY(HSUSB0_DATA0, "t24", NULL),
1178         _OMAP3_BALLENTRY(HSUSB0_DATA1, "t23", NULL),
1179         _OMAP3_BALLENTRY(HSUSB0_DATA2, "u24", NULL),
1180         _OMAP3_BALLENTRY(HSUSB0_DATA3, "u23", NULL),
1181         _OMAP3_BALLENTRY(HSUSB0_DATA4, "w24", NULL),
1182         _OMAP3_BALLENTRY(HSUSB0_DATA5, "v23", NULL),
1183         _OMAP3_BALLENTRY(HSUSB0_DATA6, "w23", NULL),
1184         _OMAP3_BALLENTRY(HSUSB0_DATA7, "t22", NULL),
1185         _OMAP3_BALLENTRY(HSUSB0_DIR, "p23", NULL),
1186         _OMAP3_BALLENTRY(HSUSB0_NXT, "r22", NULL),
1187         _OMAP3_BALLENTRY(HSUSB0_STP, "r23", NULL),
1188         _OMAP3_BALLENTRY(I2C2_SCL, "ac15", NULL),
1189         _OMAP3_BALLENTRY(I2C2_SDA, "ac14", NULL),
1190         _OMAP3_BALLENTRY(I2C3_SCL, "ac13", NULL),
1191         _OMAP3_BALLENTRY(I2C3_SDA, "ac12", NULL),
1192         _OMAP3_BALLENTRY(I2C4_SCL, "y16", NULL),
1193         _OMAP3_BALLENTRY(I2C4_SDA, "y15", NULL),
1194         _OMAP3_BALLENTRY(JTAG_EMU0, "ac24", NULL),
1195         _OMAP3_BALLENTRY(JTAG_EMU1, "ad24", NULL),
1196         _OMAP3_BALLENTRY(MCBSP1_CLKR, "w19", NULL),
1197         _OMAP3_BALLENTRY(MCBSP1_CLKX, "v18", NULL),
1198         _OMAP3_BALLENTRY(MCBSP1_DR, "y18", NULL),
1199         _OMAP3_BALLENTRY(MCBSP1_DX, "w18", NULL),
1200         _OMAP3_BALLENTRY(MCBSP1_FSR, "ab20", NULL),
1201         _OMAP3_BALLENTRY(MCBSP1_FSX, "aa19", NULL),
1202         _OMAP3_BALLENTRY(MCBSP2_CLKX, "t21", NULL),
1203         _OMAP3_BALLENTRY(MCBSP2_DR, "v19", NULL),
1204         _OMAP3_BALLENTRY(MCBSP2_DX, "r20", NULL),
1205         _OMAP3_BALLENTRY(MCBSP2_FSX, "v20", NULL),
1206         _OMAP3_BALLENTRY(MCBSP3_CLKX, "w4", NULL),
1207         _OMAP3_BALLENTRY(MCBSP3_DR, "v5", NULL),
1208         _OMAP3_BALLENTRY(MCBSP3_DX, "v6", NULL),
1209         _OMAP3_BALLENTRY(MCBSP3_FSX, "v4", NULL),
1210         _OMAP3_BALLENTRY(MCBSP_CLKS, "aa18", NULL),
1211         _OMAP3_BALLENTRY(MCSPI1_CLK, "t5", NULL),
1212         _OMAP3_BALLENTRY(MCSPI1_CS0, "t6", NULL),
1213         _OMAP3_BALLENTRY(MCSPI1_CS3, "r5", NULL),
1214         _OMAP3_BALLENTRY(MCSPI1_SIMO, "r4", NULL),
1215         _OMAP3_BALLENTRY(MCSPI1_SOMI, "t4", NULL),
1216         _OMAP3_BALLENTRY(MCSPI2_CLK, "n5", NULL),
1217         _OMAP3_BALLENTRY(MCSPI2_CS0, "m5", NULL),
1218         _OMAP3_BALLENTRY(MCSPI2_CS1, "m4", NULL),
1219         _OMAP3_BALLENTRY(MCSPI2_SIMO, "n4", NULL),
1220         _OMAP3_BALLENTRY(MCSPI2_SOMI, "n3", NULL),
1221         _OMAP3_BALLENTRY(SDMMC1_CLK, "m23", NULL),
1222         _OMAP3_BALLENTRY(SDMMC1_CMD, "l23", NULL),
1223         _OMAP3_BALLENTRY(SDMMC1_DAT0, "m22", NULL),
1224         _OMAP3_BALLENTRY(SDMMC1_DAT1, "m21", NULL),
1225         _OMAP3_BALLENTRY(SDMMC1_DAT2, "m20", NULL),
1226         _OMAP3_BALLENTRY(SDMMC1_DAT3, "n23", NULL),
1227         _OMAP3_BALLENTRY(SDMMC1_DAT4, "n22", NULL),
1228         _OMAP3_BALLENTRY(SDMMC1_DAT5, "n21", NULL),
1229         _OMAP3_BALLENTRY(SDMMC1_DAT6, "n20", NULL),
1230         _OMAP3_BALLENTRY(SDMMC1_DAT7, "p24", NULL),
1231         _OMAP3_BALLENTRY(SDMMC2_CLK, "y1", NULL),
1232         _OMAP3_BALLENTRY(SDMMC2_CMD, "ab5", NULL),
1233         _OMAP3_BALLENTRY(SDMMC2_DAT0, "ab3", NULL),
1234         _OMAP3_BALLENTRY(SDMMC2_DAT1, "y3", NULL),
1235         _OMAP3_BALLENTRY(SDMMC2_DAT2, "w3", NULL),
1236         _OMAP3_BALLENTRY(SDMMC2_DAT3, "v3", NULL),
1237         _OMAP3_BALLENTRY(SDMMC2_DAT4, "ab2", NULL),
1238         _OMAP3_BALLENTRY(SDMMC2_DAT5, "aa2", NULL),
1239         _OMAP3_BALLENTRY(SDMMC2_DAT6, "y2", NULL),
1240         _OMAP3_BALLENTRY(SDMMC2_DAT7, "aa1", NULL),
1241         _OMAP3_BALLENTRY(SYS_BOOT0, "ab12", NULL),
1242         _OMAP3_BALLENTRY(SYS_BOOT1, "ac16", NULL),
1243         _OMAP3_BALLENTRY(SYS_BOOT2, "ad17", NULL),
1244         _OMAP3_BALLENTRY(SYS_BOOT3, "ad18", NULL),
1245         _OMAP3_BALLENTRY(SYS_BOOT4, "ac17", NULL),
1246         _OMAP3_BALLENTRY(SYS_BOOT5, "ab16", NULL),
1247         _OMAP3_BALLENTRY(SYS_BOOT6, "aa15", NULL),
1248         _OMAP3_BALLENTRY(SYS_CLKOUT1, "y7", NULL),
1249         _OMAP3_BALLENTRY(SYS_CLKOUT2, "aa6", NULL),
1250         _OMAP3_BALLENTRY(SYS_CLKREQ, "y13", NULL),
1251         _OMAP3_BALLENTRY(SYS_NIRQ, "w16", NULL),
1252         _OMAP3_BALLENTRY(SYS_NRESWARM, "y10", NULL),
1253         _OMAP3_BALLENTRY(SYS_OFF_MODE, "ad23", NULL),
1254         _OMAP3_BALLENTRY(UART1_CTS, "ac2", NULL),
1255         _OMAP3_BALLENTRY(UART1_RTS, "w6", NULL),
1256         _OMAP3_BALLENTRY(UART1_RX, "v7", NULL),
1257         _OMAP3_BALLENTRY(UART1_TX, "w7", NULL),
1258         _OMAP3_BALLENTRY(UART3_CTS_RCTX, "a23", NULL),
1259         _OMAP3_BALLENTRY(UART3_RTS_SD, "b23", NULL),
1260         _OMAP3_BALLENTRY(UART3_RX_IRRX, "b24", NULL),
1261         _OMAP3_BALLENTRY(UART3_TX_IRTX, "c23", NULL),
1262         { .reg_offset = OMAP_MUX_TERMINATOR },
1263 };
1264 #else
1265 #define omap3_cus_ball   NULL
1266 #endif
1267
1268 /*
1269  * Signals different on CBB package comapared to superset
1270  */
1271 #if defined(CONFIG_OMAP_MUX) && defined(CONFIG_OMAP_PACKAGE_CBB)
1272 static struct omap_mux __initdata omap3_cbb_subset[] = {
1273         _OMAP3_MUXENTRY(CAM_D10, 109,
1274                 "cam_d10", NULL, NULL, NULL,
1275                 "gpio_109", NULL, NULL, "safe_mode"),
1276         _OMAP3_MUXENTRY(CAM_D11, 110,
1277                 "cam_d11", NULL, NULL, NULL,
1278                 "gpio_110", NULL, NULL, "safe_mode"),
1279         _OMAP3_MUXENTRY(CAM_D2, 101,
1280                 "cam_d2", NULL, NULL, NULL,
1281                 "gpio_101", NULL, NULL, "safe_mode"),
1282         _OMAP3_MUXENTRY(CAM_D3, 102,
1283                 "cam_d3", NULL, NULL, NULL,
1284                 "gpio_102", NULL, NULL, "safe_mode"),
1285         _OMAP3_MUXENTRY(CAM_D4, 103,
1286                 "cam_d4", NULL, NULL, NULL,
1287                 "gpio_103", NULL, NULL, "safe_mode"),
1288         _OMAP3_MUXENTRY(CAM_D5, 104,
1289                 "cam_d5", NULL, NULL, NULL,
1290                 "gpio_104", NULL, NULL, "safe_mode"),
1291         _OMAP3_MUXENTRY(CAM_FLD, 98,
1292                 "cam_fld", NULL, "cam_global_reset", NULL,
1293                 "gpio_98", NULL, NULL, "safe_mode"),
1294         _OMAP3_MUXENTRY(CAM_HS, 94,
1295                 "cam_hs", NULL, NULL, NULL,
1296                 "gpio_94", NULL, NULL, "safe_mode"),
1297         _OMAP3_MUXENTRY(CAM_PCLK, 97,
1298                 "cam_pclk", NULL, NULL, NULL,
1299                 "gpio_97", NULL, NULL, "safe_mode"),
1300         _OMAP3_MUXENTRY(CAM_STROBE, 126,
1301                 "cam_strobe", NULL, NULL, NULL,
1302                 "gpio_126", NULL, NULL, "safe_mode"),
1303         _OMAP3_MUXENTRY(CAM_VS, 95,
1304                 "cam_vs", NULL, NULL, NULL,
1305                 "gpio_95", NULL, NULL, "safe_mode"),
1306         _OMAP3_MUXENTRY(CAM_WEN, 167,
1307                 "cam_wen", NULL, "cam_shutter", NULL,
1308                 "gpio_167", NULL, NULL, "safe_mode"),
1309         _OMAP3_MUXENTRY(DSS_DATA6, 76,
1310                 "dss_data6", NULL, "uart1_tx", NULL,
1311                 "gpio_76", NULL, NULL, "safe_mode"),
1312         _OMAP3_MUXENTRY(DSS_DATA7, 77,
1313                 "dss_data7", NULL, "uart1_rx", NULL,
1314                 "gpio_77", NULL, NULL, "safe_mode"),
1315         _OMAP3_MUXENTRY(DSS_DATA8, 78,
1316                 "dss_data8", NULL, NULL, NULL,
1317                 "gpio_78", NULL, NULL, "safe_mode"),
1318         _OMAP3_MUXENTRY(DSS_DATA9, 79,
1319                 "dss_data9", NULL, NULL, NULL,
1320                 "gpio_79", NULL, NULL, "safe_mode"),
1321         _OMAP3_MUXENTRY(DSS_HSYNC, 67,
1322                 "dss_hsync", NULL, NULL, NULL,
1323                 "gpio_67", NULL, NULL, "safe_mode"),
1324         _OMAP3_MUXENTRY(DSS_PCLK, 66,
1325                 "dss_pclk", NULL, NULL, NULL,
1326                 "gpio_66", NULL, NULL, "safe_mode"),
1327         _OMAP3_MUXENTRY(ETK_CLK, 12,
1328                 "etk_clk", "mcbsp5_clkx", "sdmmc3_clk", "hsusb1_stp",
1329                 "gpio_12", "mm1_rxdp", "hsusb1_tll_stp", NULL),
1330         _OMAP3_MUXENTRY(ETK_CTL, 13,
1331                 "etk_ctl", NULL, "sdmmc3_cmd", "hsusb1_clk",
1332                 "gpio_13", NULL, "hsusb1_tll_clk", NULL),
1333         _OMAP3_MUXENTRY(ETK_D0, 14,
1334                 "etk_d0", "mcspi3_simo", "sdmmc3_dat4", "hsusb1_data0",
1335                 "gpio_14", "mm1_rxrcv", "hsusb1_tll_data0", NULL),
1336         _OMAP3_MUXENTRY(ETK_D1, 15,
1337                 "etk_d1", "mcspi3_somi", NULL, "hsusb1_data1",
1338                 "gpio_15", "mm1_txse0", "hsusb1_tll_data1", NULL),
1339         _OMAP3_MUXENTRY(ETK_D10, 24,
1340                 "etk_d10", NULL, "uart1_rx", "hsusb2_clk",
1341                 "gpio_24", NULL, "hsusb2_tll_clk", NULL),
1342         _OMAP3_MUXENTRY(ETK_D11, 25,
1343                 "etk_d11", NULL, NULL, "hsusb2_stp",
1344                 "gpio_25", "mm2_rxdp", "hsusb2_tll_stp", NULL),
1345         _OMAP3_MUXENTRY(ETK_D12, 26,
1346                 "etk_d12", NULL, NULL, "hsusb2_dir",
1347                 "gpio_26", NULL, "hsusb2_tll_dir", NULL),
1348         _OMAP3_MUXENTRY(ETK_D13, 27,
1349                 "etk_d13", NULL, NULL, "hsusb2_nxt",
1350                 "gpio_27", "mm2_rxdm", "hsusb2_tll_nxt", NULL),
1351         _OMAP3_MUXENTRY(ETK_D14, 28,
1352                 "etk_d14", NULL, NULL, "hsusb2_data0",
1353                 "gpio_28", "mm2_rxrcv", "hsusb2_tll_data0", NULL),
1354         _OMAP3_MUXENTRY(ETK_D15, 29,
1355                 "etk_d15", NULL, NULL, "hsusb2_data1",
1356                 "gpio_29", "mm2_txse0", "hsusb2_tll_data1", NULL),
1357         _OMAP3_MUXENTRY(ETK_D2, 16,
1358                 "etk_d2", "mcspi3_cs0", NULL, "hsusb1_data2",
1359                 "gpio_16", "mm1_txdat", "hsusb1_tll_data2", NULL),
1360         _OMAP3_MUXENTRY(ETK_D3, 17,
1361                 "etk_d3", "mcspi3_clk", "sdmmc3_dat3", "hsusb1_data7",
1362                 "gpio_17", NULL, "hsusb1_tll_data7", NULL),
1363         _OMAP3_MUXENTRY(ETK_D4, 18,
1364                 "etk_d4", "mcbsp5_dr", "sdmmc3_dat0", "hsusb1_data4",
1365                 "gpio_18", NULL, "hsusb1_tll_data4", NULL),
1366         _OMAP3_MUXENTRY(ETK_D5, 19,
1367                 "etk_d5", "mcbsp5_fsx", "sdmmc3_dat1", "hsusb1_data5",
1368                 "gpio_19", NULL, "hsusb1_tll_data5", NULL),
1369         _OMAP3_MUXENTRY(ETK_D6, 20,
1370                 "etk_d6", "mcbsp5_dx", "sdmmc3_dat2", "hsusb1_data6",
1371                 "gpio_20", NULL, "hsusb1_tll_data6", NULL),
1372         _OMAP3_MUXENTRY(ETK_D7, 21,
1373                 "etk_d7", "mcspi3_cs1", "sdmmc3_dat7", "hsusb1_data3",
1374                 "gpio_21", "mm1_txen_n", "hsusb1_tll_data3", NULL),
1375         _OMAP3_MUXENTRY(ETK_D8, 22,
1376                 "etk_d8", "sys_drm_msecure", "sdmmc3_dat6", "hsusb1_dir",
1377                 "gpio_22", NULL, "hsusb1_tll_dir", NULL),
1378         _OMAP3_MUXENTRY(ETK_D9, 23,
1379                 "etk_d9", "sys_secure_indicator", "sdmmc3_dat5", "hsusb1_nxt",
1380                 "gpio_23", "mm1_rxdm", "hsusb1_tll_nxt", NULL),
1381         { .reg_offset = OMAP_MUX_TERMINATOR },
1382 };
1383 #else
1384 #define omap3_cbb_subset        NULL
1385 #endif
1386
1387 /*
1388  * Balls for CBB package
1389  * 515-pin s-PBGA Package, 0.50mm Ball Pitch (Top), 0.40mm Ball Pitch (Bottom)
1390  */
1391 #if defined(CONFIG_OMAP_MUX) && defined(CONFIG_DEBUG_FS)                \
1392                 && defined(CONFIG_OMAP_PACKAGE_CBB)
1393 static struct omap_ball __initdata omap3_cbb_ball[] = {
1394         _OMAP3_BALLENTRY(CAM_D0, "ag17", NULL),
1395         _OMAP3_BALLENTRY(CAM_D1, "ah17", NULL),
1396         _OMAP3_BALLENTRY(CAM_D10, "b25", NULL),
1397         _OMAP3_BALLENTRY(CAM_D11, "c26", NULL),
1398         _OMAP3_BALLENTRY(CAM_D2, "b24", NULL),
1399         _OMAP3_BALLENTRY(CAM_D3, "c24", NULL),
1400         _OMAP3_BALLENTRY(CAM_D4, "d24", NULL),
1401         _OMAP3_BALLENTRY(CAM_D5, "a25", NULL),
1402         _OMAP3_BALLENTRY(CAM_D6, "k28", NULL),
1403         _OMAP3_BALLENTRY(CAM_D7, "l28", NULL),
1404         _OMAP3_BALLENTRY(CAM_D8, "k27", NULL),
1405         _OMAP3_BALLENTRY(CAM_D9, "l27", NULL),
1406         _OMAP3_BALLENTRY(CAM_FLD, "c23", NULL),
1407         _OMAP3_BALLENTRY(CAM_HS, "a24", NULL),
1408         _OMAP3_BALLENTRY(CAM_PCLK, "c27", NULL),
1409         _OMAP3_BALLENTRY(CAM_STROBE, "d25", NULL),
1410         _OMAP3_BALLENTRY(CAM_VS, "a23", NULL),
1411         _OMAP3_BALLENTRY(CAM_WEN, "b23", NULL),
1412         _OMAP3_BALLENTRY(CAM_XCLKA, "c25", NULL),
1413         _OMAP3_BALLENTRY(CAM_XCLKB, "b26", NULL),
1414         _OMAP3_BALLENTRY(CSI2_DX0, "ag19", NULL),
1415         _OMAP3_BALLENTRY(CSI2_DX1, "ag18", NULL),
1416         _OMAP3_BALLENTRY(CSI2_DY0, "ah19", NULL),
1417         _OMAP3_BALLENTRY(CSI2_DY1, "ah18", NULL),
1418         _OMAP3_BALLENTRY(DSS_ACBIAS, "e27", NULL),
1419         _OMAP3_BALLENTRY(DSS_DATA0, "ag22", NULL),
1420         _OMAP3_BALLENTRY(DSS_DATA1, "ah22", NULL),
1421         _OMAP3_BALLENTRY(DSS_DATA10, "ad28", NULL),
1422         _OMAP3_BALLENTRY(DSS_DATA11, "ad27", NULL),
1423         _OMAP3_BALLENTRY(DSS_DATA12, "ab28", NULL),
1424         _OMAP3_BALLENTRY(DSS_DATA13, "ab27", NULL),
1425         _OMAP3_BALLENTRY(DSS_DATA14, "aa28", NULL),
1426         _OMAP3_BALLENTRY(DSS_DATA15, "aa27", NULL),
1427         _OMAP3_BALLENTRY(DSS_DATA16, "g25", NULL),
1428         _OMAP3_BALLENTRY(DSS_DATA17, "h27", NULL),
1429         _OMAP3_BALLENTRY(DSS_DATA18, "h26", NULL),
1430         _OMAP3_BALLENTRY(DSS_DATA19, "h25", NULL),
1431         _OMAP3_BALLENTRY(DSS_DATA2, "ag23", NULL),
1432         _OMAP3_BALLENTRY(DSS_DATA20, "e28", NULL),
1433         _OMAP3_BALLENTRY(DSS_DATA21, "j26", NULL),
1434         _OMAP3_BALLENTRY(DSS_DATA22, "ac27", NULL),
1435         _OMAP3_BALLENTRY(DSS_DATA23, "ac28", NULL),
1436         _OMAP3_BALLENTRY(DSS_DATA3, "ah23", NULL),
1437         _OMAP3_BALLENTRY(DSS_DATA4, "ag24", NULL),
1438         _OMAP3_BALLENTRY(DSS_DATA5, "ah24", NULL),
1439         _OMAP3_BALLENTRY(DSS_DATA6, "e26", NULL),
1440         _OMAP3_BALLENTRY(DSS_DATA7, "f28", NULL),
1441         _OMAP3_BALLENTRY(DSS_DATA8, "f27", NULL),
1442         _OMAP3_BALLENTRY(DSS_DATA9, "g26", NULL),
1443         _OMAP3_BALLENTRY(DSS_HSYNC, "d26", NULL),
1444         _OMAP3_BALLENTRY(DSS_PCLK, "d28", NULL),
1445         _OMAP3_BALLENTRY(DSS_VSYNC, "d27", NULL),
1446         _OMAP3_BALLENTRY(ETK_CLK, "af10", NULL),
1447         _OMAP3_BALLENTRY(ETK_CTL, "ae10", NULL),
1448         _OMAP3_BALLENTRY(ETK_D0, "af11", NULL),
1449         _OMAP3_BALLENTRY(ETK_D1, "ag12", NULL),
1450         _OMAP3_BALLENTRY(ETK_D10, "ae7", NULL),
1451         _OMAP3_BALLENTRY(ETK_D11, "af7", NULL),
1452         _OMAP3_BALLENTRY(ETK_D12, "ag7", NULL),
1453         _OMAP3_BALLENTRY(ETK_D13, "ah7", NULL),
1454         _OMAP3_BALLENTRY(ETK_D14, "ag8", NULL),
1455         _OMAP3_BALLENTRY(ETK_D15, "ah8", NULL),
1456         _OMAP3_BALLENTRY(ETK_D2, "ah12", NULL),
1457         _OMAP3_BALLENTRY(ETK_D3, "ae13", NULL),
1458         _OMAP3_BALLENTRY(ETK_D4, "ae11", NULL),
1459         _OMAP3_BALLENTRY(ETK_D5, "ah9", NULL),
1460         _OMAP3_BALLENTRY(ETK_D6, "af13", NULL),
1461         _OMAP3_BALLENTRY(ETK_D7, "ah14", NULL),
1462         _OMAP3_BALLENTRY(ETK_D8, "af9", NULL),
1463         _OMAP3_BALLENTRY(ETK_D9, "ag9", NULL),
1464         _OMAP3_BALLENTRY(GPMC_A1, "n4", "ac15"),
1465         _OMAP3_BALLENTRY(GPMC_A10, "k3", "ab19"),
1466         _OMAP3_BALLENTRY(GPMC_A2, "m4", "ab15"),
1467         _OMAP3_BALLENTRY(GPMC_A3, "l4", "ac16"),
1468         _OMAP3_BALLENTRY(GPMC_A4, "k4", "ab16"),
1469         _OMAP3_BALLENTRY(GPMC_A5, "t3", "ac17"),
1470         _OMAP3_BALLENTRY(GPMC_A6, "r3", "ab17"),
1471         _OMAP3_BALLENTRY(GPMC_A7, "n3", "ac18"),
1472         _OMAP3_BALLENTRY(GPMC_A8, "m3", "ab18"),
1473         _OMAP3_BALLENTRY(GPMC_A9, "l3", "ac19"),
1474         _OMAP3_BALLENTRY(GPMC_CLK, "t4", "w2"),
1475         _OMAP3_BALLENTRY(GPMC_D10, "p1", "ab4"),
1476         _OMAP3_BALLENTRY(GPMC_D11, "r1", "ac4"),
1477         _OMAP3_BALLENTRY(GPMC_D12, "r2", "ab6"),
1478         _OMAP3_BALLENTRY(GPMC_D13, "t2", "ac6"),
1479         _OMAP3_BALLENTRY(GPMC_D14, "w1", "ab7"),
1480         _OMAP3_BALLENTRY(GPMC_D15, "y1", "ac7"),
1481         _OMAP3_BALLENTRY(GPMC_D8, "h2", "ab3"),
1482         _OMAP3_BALLENTRY(GPMC_D9, "k2", "ac3"),
1483         _OMAP3_BALLENTRY(GPMC_NBE0_CLE, "g3", "ac12"),
1484         _OMAP3_BALLENTRY(GPMC_NBE1, "u3", NULL),
1485         _OMAP3_BALLENTRY(GPMC_NCS1, "h3", "y1"),
1486         _OMAP3_BALLENTRY(GPMC_NCS2, "v8", NULL),
1487         _OMAP3_BALLENTRY(GPMC_NCS3, "u8", NULL),
1488         _OMAP3_BALLENTRY(GPMC_NCS4, "t8", NULL),
1489         _OMAP3_BALLENTRY(GPMC_NCS5, "r8", NULL),
1490         _OMAP3_BALLENTRY(GPMC_NCS6, "p8", NULL),
1491         _OMAP3_BALLENTRY(GPMC_NCS7, "n8", NULL),
1492         _OMAP3_BALLENTRY(GPMC_NWP, "h1", "ab10"),
1493         _OMAP3_BALLENTRY(GPMC_WAIT1, "l8", "ac10"),
1494         _OMAP3_BALLENTRY(GPMC_WAIT2, "k8", NULL),
1495         _OMAP3_BALLENTRY(GPMC_WAIT3, "j8", NULL),
1496         _OMAP3_BALLENTRY(HDQ_SIO, "j25", NULL),
1497         _OMAP3_BALLENTRY(HSUSB0_CLK, "t28", NULL),
1498         _OMAP3_BALLENTRY(HSUSB0_DATA0, "t27", NULL),
1499         _OMAP3_BALLENTRY(HSUSB0_DATA1, "u28", NULL),
1500         _OMAP3_BALLENTRY(HSUSB0_DATA2, "u27", NULL),
1501         _OMAP3_BALLENTRY(HSUSB0_DATA3, "u26", NULL),
1502         _OMAP3_BALLENTRY(HSUSB0_DATA4, "u25", NULL),
1503         _OMAP3_BALLENTRY(HSUSB0_DATA5, "v28", NULL),
1504         _OMAP3_BALLENTRY(HSUSB0_DATA6, "v27", NULL),
1505         _OMAP3_BALLENTRY(HSUSB0_DATA7, "v26", NULL),
1506         _OMAP3_BALLENTRY(HSUSB0_DIR, "r28", NULL),
1507         _OMAP3_BALLENTRY(HSUSB0_NXT, "t26", NULL),
1508         _OMAP3_BALLENTRY(HSUSB0_STP, "t25", NULL),
1509         _OMAP3_BALLENTRY(I2C2_SCL, "af15", NULL),
1510         _OMAP3_BALLENTRY(I2C2_SDA, "ae15", NULL),
1511         _OMAP3_BALLENTRY(I2C3_SCL, "af14", NULL),
1512         _OMAP3_BALLENTRY(I2C3_SDA, "ag14", NULL),
1513         _OMAP3_BALLENTRY(I2C4_SCL, "ad26", NULL),
1514         _OMAP3_BALLENTRY(I2C4_SDA, "ae26", NULL),
1515         _OMAP3_BALLENTRY(JTAG_EMU0, "aa11", NULL),
1516         _OMAP3_BALLENTRY(JTAG_EMU1, "aa10", NULL),
1517         _OMAP3_BALLENTRY(MCBSP1_CLKR, "y21", NULL),
1518         _OMAP3_BALLENTRY(MCBSP1_CLKX, "w21", NULL),
1519         _OMAP3_BALLENTRY(MCBSP1_DR, "u21", NULL),
1520         _OMAP3_BALLENTRY(MCBSP1_DX, "v21", NULL),
1521         _OMAP3_BALLENTRY(MCBSP1_FSR, "aa21", NULL),
1522         _OMAP3_BALLENTRY(MCBSP1_FSX, "k26", NULL),
1523         _OMAP3_BALLENTRY(MCBSP2_CLKX, "n21", NULL),
1524         _OMAP3_BALLENTRY(MCBSP2_DR, "r21", NULL),
1525         _OMAP3_BALLENTRY(MCBSP2_DX, "m21", NULL),
1526         _OMAP3_BALLENTRY(MCBSP2_FSX, "p21", NULL),
1527         _OMAP3_BALLENTRY(MCBSP3_CLKX, "af5", NULL),
1528         _OMAP3_BALLENTRY(MCBSP3_DR, "ae6", NULL),
1529         _OMAP3_BALLENTRY(MCBSP3_DX, "af6", NULL),
1530         _OMAP3_BALLENTRY(MCBSP3_FSX, "ae5", NULL),
1531         _OMAP3_BALLENTRY(MCBSP4_CLKX, "ae1", NULL),
1532         _OMAP3_BALLENTRY(MCBSP4_DR, "ad1", NULL),
1533         _OMAP3_BALLENTRY(MCBSP4_DX, "ad2", NULL),
1534         _OMAP3_BALLENTRY(MCBSP4_FSX, "ac1", NULL),
1535         _OMAP3_BALLENTRY(MCBSP_CLKS, "t21", NULL),
1536         _OMAP3_BALLENTRY(MCSPI1_CLK, "ab3", NULL),
1537         _OMAP3_BALLENTRY(MCSPI1_CS0, "ac2", NULL),
1538         _OMAP3_BALLENTRY(MCSPI1_CS1, "ac3", NULL),
1539         _OMAP3_BALLENTRY(MCSPI1_CS2, "ab1", NULL),
1540         _OMAP3_BALLENTRY(MCSPI1_CS3, "ab2", NULL),
1541         _OMAP3_BALLENTRY(MCSPI1_SIMO, "ab4", NULL),
1542         _OMAP3_BALLENTRY(MCSPI1_SOMI, "aa4", NULL),
1543         _OMAP3_BALLENTRY(MCSPI2_CLK, "aa3", NULL),
1544         _OMAP3_BALLENTRY(MCSPI2_CS0, "y4", NULL),
1545         _OMAP3_BALLENTRY(MCSPI2_CS1, "v3", NULL),
1546         _OMAP3_BALLENTRY(MCSPI2_SIMO, "y2", NULL),
1547         _OMAP3_BALLENTRY(MCSPI2_SOMI, "y3", NULL),
1548         _OMAP3_BALLENTRY(SDMMC1_CLK, "n28", NULL),
1549         _OMAP3_BALLENTRY(SDMMC1_CMD, "m27", NULL),
1550         _OMAP3_BALLENTRY(SDMMC1_DAT0, "n27", NULL),
1551         _OMAP3_BALLENTRY(SDMMC1_DAT1, "n26", NULL),
1552         _OMAP3_BALLENTRY(SDMMC1_DAT2, "n25", NULL),
1553         _OMAP3_BALLENTRY(SDMMC1_DAT3, "p28", NULL),
1554         _OMAP3_BALLENTRY(SDMMC1_DAT4, "p27", NULL),
1555         _OMAP3_BALLENTRY(SDMMC1_DAT5, "p26", NULL),
1556         _OMAP3_BALLENTRY(SDMMC1_DAT6, "r27", NULL),
1557         _OMAP3_BALLENTRY(SDMMC1_DAT7, "r25", NULL),
1558         _OMAP3_BALLENTRY(SDMMC2_CLK, "ae2", NULL),
1559         _OMAP3_BALLENTRY(SDMMC2_CMD, "ag5", NULL),
1560         _OMAP3_BALLENTRY(SDMMC2_DAT0, "ah5", NULL),
1561         _OMAP3_BALLENTRY(SDMMC2_DAT1, "ah4", NULL),
1562         _OMAP3_BALLENTRY(SDMMC2_DAT2, "ag4", NULL),
1563         _OMAP3_BALLENTRY(SDMMC2_DAT3, "af4", NULL),
1564         _OMAP3_BALLENTRY(SDMMC2_DAT4, "ae4", NULL),
1565         _OMAP3_BALLENTRY(SDMMC2_DAT5, "ah3", NULL),
1566         _OMAP3_BALLENTRY(SDMMC2_DAT6, "af3", NULL),
1567         _OMAP3_BALLENTRY(SDMMC2_DAT7, "ae3", NULL),
1568         _OMAP3_BALLENTRY(SYS_BOOT0, "ah26", NULL),
1569         _OMAP3_BALLENTRY(SYS_BOOT1, "ag26", NULL),
1570         _OMAP3_BALLENTRY(SYS_BOOT2, "ae14", NULL),
1571         _OMAP3_BALLENTRY(SYS_BOOT3, "af18", NULL),
1572         _OMAP3_BALLENTRY(SYS_BOOT4, "af19", NULL),
1573         _OMAP3_BALLENTRY(SYS_BOOT5, "ae21", NULL),
1574         _OMAP3_BALLENTRY(SYS_BOOT6, "af21", NULL),
1575         _OMAP3_BALLENTRY(SYS_CLKOUT1, "ag25", NULL),
1576         _OMAP3_BALLENTRY(SYS_CLKOUT2, "ae22", NULL),
1577         _OMAP3_BALLENTRY(SYS_CLKREQ, "af25", NULL),
1578         _OMAP3_BALLENTRY(SYS_NIRQ, "af26", NULL),
1579         _OMAP3_BALLENTRY(SYS_NRESWARM, "af24", NULL),
1580         _OMAP3_BALLENTRY(SYS_OFF_MODE, "af22", NULL),
1581         _OMAP3_BALLENTRY(UART1_CTS, "w8", NULL),
1582         _OMAP3_BALLENTRY(UART1_RTS, "aa9", NULL),
1583         _OMAP3_BALLENTRY(UART1_RX, "y8", NULL),
1584         _OMAP3_BALLENTRY(UART1_TX, "aa8", NULL),
1585         _OMAP3_BALLENTRY(UART2_CTS, "ab26", NULL),
1586         _OMAP3_BALLENTRY(UART2_RTS, "ab25", NULL),
1587         _OMAP3_BALLENTRY(UART2_RX, "ad25", NULL),
1588         _OMAP3_BALLENTRY(UART2_TX, "aa25", NULL),
1589         _OMAP3_BALLENTRY(UART3_CTS_RCTX, "h18", NULL),
1590         _OMAP3_BALLENTRY(UART3_RTS_SD, "h19", NULL),
1591         _OMAP3_BALLENTRY(UART3_RX_IRRX, "h20", NULL),
1592         _OMAP3_BALLENTRY(UART3_TX_IRTX, "h21", NULL),
1593         { .reg_offset = OMAP_MUX_TERMINATOR },
1594 };
1595 #else
1596 #define omap3_cbb_ball   NULL
1597 #endif
1598
1599 /*
1600  * Signals different on 36XX CBP package comapared to 34XX CBC package
1601  */
1602 #if defined(CONFIG_OMAP_MUX) && defined(CONFIG_OMAP_PACKAGE_CBP)
1603 static struct omap_mux __initdata omap36xx_cbp_subset[] = {
1604         _OMAP3_MUXENTRY(CAM_D0, 99,
1605                 "cam_d0", NULL, "csi2_dx2", NULL,
1606                 "gpio_99", NULL, NULL, "safe_mode"),
1607         _OMAP3_MUXENTRY(CAM_D1, 100,
1608                 "cam_d1", NULL, "csi2_dy2", NULL,
1609                 "gpio_100", NULL, NULL, "safe_mode"),
1610         _OMAP3_MUXENTRY(CAM_D10, 109,
1611                 "cam_d10", "ssi2_wake", NULL, NULL,
1612                 "gpio_109", "hw_dbg8", NULL, "safe_mode"),
1613         _OMAP3_MUXENTRY(CAM_D2, 101,
1614                 "cam_d2", "ssi2_rdy_tx", NULL, NULL,
1615                 "gpio_101", "hw_dbg4", NULL, "safe_mode"),
1616         _OMAP3_MUXENTRY(CAM_D3, 102,
1617                 "cam_d3", "ssi2_dat_rx", NULL, NULL,
1618                 "gpio_102", "hw_dbg5", NULL, "safe_mode"),
1619         _OMAP3_MUXENTRY(CAM_D4, 103,
1620                 "cam_d4", "ssi2_flag_rx", NULL, NULL,
1621                 "gpio_103", "hw_dbg6", NULL, "safe_mode"),
1622         _OMAP3_MUXENTRY(CAM_D5, 104,
1623                 "cam_d5", "ssi2_rdy_rx", NULL, NULL,
1624                 "gpio_104", "hw_dbg7", NULL, "safe_mode"),
1625         _OMAP3_MUXENTRY(CAM_HS, 94,
1626                 "cam_hs", "ssi2_dat_tx", NULL, NULL,
1627                 "gpio_94", "hw_dbg0", NULL, "safe_mode"),
1628         _OMAP3_MUXENTRY(CAM_VS, 95,
1629                 "cam_vs", "ssi2_flag_tx", NULL, NULL,
1630                 "gpio_95", "hw_dbg1", NULL, "safe_mode"),
1631         _OMAP3_MUXENTRY(DSS_DATA0, 70,
1632                 "dss_data0", "dsi_dx0", "uart1_cts", NULL,
1633                 "gpio_70", NULL, NULL, "safe_mode"),
1634         _OMAP3_MUXENTRY(DSS_DATA1, 71,
1635                 "dss_data1", "dsi_dy0", "uart1_rts", NULL,
1636                 "gpio_71", NULL, NULL, "safe_mode"),
1637         _OMAP3_MUXENTRY(DSS_DATA2, 72,
1638                 "dss_data2", "dsi_dx1", NULL, NULL,
1639                 "gpio_72", NULL, NULL, "safe_mode"),
1640         _OMAP3_MUXENTRY(DSS_DATA3, 73,
1641                 "dss_data3", "dsi_dy1", NULL, NULL,
1642                 "gpio_73", NULL, NULL, "safe_mode"),
1643         _OMAP3_MUXENTRY(DSS_DATA4, 74,
1644                 "dss_data4", "dsi_dx2", "uart3_rx_irrx", NULL,
1645                 "gpio_74", NULL, NULL, "safe_mode"),
1646         _OMAP3_MUXENTRY(DSS_DATA5, 75,
1647                 "dss_data5", "dsi_dy2", "uart3_tx_irtx", NULL,
1648                 "gpio_75", NULL, NULL, "safe_mode"),
1649         _OMAP3_MUXENTRY(DSS_DATA6, 76,
1650                 "dss_data6", NULL, "uart1_tx", "dssvenc656_data6",
1651                 "gpio_76", "hw_dbg14", NULL, "safe_mode"),
1652         _OMAP3_MUXENTRY(DSS_DATA7, 77,
1653                 "dss_data7", NULL, "uart1_rx", "dssvenc656_data7",
1654                 "gpio_77", "hw_dbg15", NULL, "safe_mode"),
1655         _OMAP3_MUXENTRY(DSS_DATA8, 78,
1656                 "dss_data8", NULL, "uart3_rx_irrx", NULL,
1657                 "gpio_78", "hw_dbg16", NULL, "safe_mode"),
1658         _OMAP3_MUXENTRY(DSS_DATA9, 79,
1659                 "dss_data9", NULL, "uart3_tx_irtx", NULL,
1660                 "gpio_79", "hw_dbg17", NULL, "safe_mode"),
1661         _OMAP3_MUXENTRY(ETK_D12, 26,
1662                 "etk_d12", "sys_drm_msecure", NULL, "hsusb2_dir",
1663                 "gpio_26", NULL, "hsusb2_tll_dir", "hw_dbg14"),
1664         _OMAP3_MUXENTRY(GPMC_A11, 0,
1665                 "gpmc_a11", NULL, NULL, NULL,
1666                 NULL, NULL, NULL, "safe_mode"),
1667         _OMAP3_MUXENTRY(GPMC_WAIT2, 64,
1668                 "gpmc_wait2", NULL, "uart4_tx", NULL,
1669                 "gpio_64", NULL, NULL, "safe_mode"),
1670         _OMAP3_MUXENTRY(GPMC_WAIT3, 65,
1671                 "gpmc_wait3", "sys_ndmareq1", "uart4_rx", NULL,
1672                 "gpio_65", NULL, NULL, "safe_mode"),
1673         _OMAP3_MUXENTRY(HSUSB0_DATA0, 125,
1674                 "hsusb0_data0", NULL, "uart3_tx_irtx", NULL,
1675                 "gpio_125", "uart2_tx", NULL, "safe_mode"),
1676         _OMAP3_MUXENTRY(HSUSB0_DATA1, 130,
1677                 "hsusb0_data1", NULL, "uart3_rx_irrx", NULL,
1678                 "gpio_130", "uart2_rx", NULL, "safe_mode"),
1679         _OMAP3_MUXENTRY(HSUSB0_DATA2, 131,
1680                 "hsusb0_data2", NULL, "uart3_rts_sd", NULL,
1681                 "gpio_131", "uart2_rts", NULL, "safe_mode"),
1682         _OMAP3_MUXENTRY(HSUSB0_DATA3, 169,
1683                 "hsusb0_data3", NULL, "uart3_cts_rctx", NULL,
1684                 "gpio_169", "uart2_cts", NULL, "safe_mode"),
1685         _OMAP3_MUXENTRY(MCBSP1_CLKR, 156,
1686                 "mcbsp1_clkr", "mcspi4_clk", "sim_cd", NULL,
1687                 "gpio_156", NULL, NULL, "safe_mode"),
1688         _OMAP3_MUXENTRY(MCBSP1_FSR, 157,
1689                 "mcbsp1_fsr", "adpllv2d_dithering_en1",
1690                 "cam_global_reset", NULL,
1691                 "gpio_157", NULL, NULL, "safe_mode"),
1692         _OMAP3_MUXENTRY(MCBSP4_CLKX, 152,
1693                 "mcbsp4_clkx", "ssi1_dat_rx", NULL, NULL,
1694                 "gpio_152", "hsusb3_tll_data1", "mm3_txse0", "safe_mode"),
1695         _OMAP3_MUXENTRY(MCBSP4_DR, 153,
1696                 "mcbsp4_dr", "ssi1_flag_rx", NULL, NULL,
1697                 "gpio_153", "hsusb3_tll_data0", "mm3_rxrcv", "safe_mode"),
1698         _OMAP3_MUXENTRY(MCBSP4_DX, 154,
1699                 "mcbsp4_dx", "ssi1_rdy_rx", NULL, NULL,
1700                 "gpio_154", "hsusb3_tll_data2", "mm3_txdat", "safe_mode"),
1701         _OMAP3_MUXENTRY(MCBSP4_FSX, 155,
1702                 "mcbsp4_fsx", "ssi1_wake", NULL, NULL,
1703                 "gpio_155", "hsusb3_tll_data3", "mm3_txen_n", "safe_mode"),
1704         _OMAP3_MUXENTRY(MCSPI1_CS1, 175,
1705                 "mcspi1_cs1", "adpllv2d_dithering_en2", NULL, "sdmmc3_cmd",
1706                 "gpio_175", NULL, NULL, "safe_mode"),
1707         _OMAP3_MUXENTRY(SAD2D_MBUSFLAG, 0,
1708                 "sad2d_mbusflag", "mad2d_sbusflag", NULL, NULL,
1709                 NULL, NULL, NULL, NULL),
1710         _OMAP3_MUXENTRY(SAD2D_MCAD28, 0,
1711                 "sad2d_mcad28", "mad2d_mcad28", NULL, NULL,
1712                 NULL, NULL, NULL, NULL),
1713         _OMAP3_MUXENTRY(SAD2D_MCAD29, 0,
1714                 "sad2d_mcad29", "mad2d_mcad29", NULL, NULL,
1715                 NULL, NULL, NULL, NULL),
1716         _OMAP3_MUXENTRY(SAD2D_MCAD32, 0,
1717                 "sad2d_mcad32", "mad2d_mcad32", NULL, NULL,
1718                 NULL, NULL, NULL, NULL),
1719         _OMAP3_MUXENTRY(SAD2D_MCAD33, 0,
1720                 "sad2d_mcad33", "mad2d_mcad33", NULL, NULL,
1721                 NULL, NULL, NULL, NULL),
1722         _OMAP3_MUXENTRY(SAD2D_MCAD34, 0,
1723                 "sad2d_mcad34", "mad2d_mcad34", NULL, NULL,
1724                 NULL, NULL, NULL, NULL),
1725         _OMAP3_MUXENTRY(SAD2D_MCAD35, 0,
1726                 "sad2d_mcad35", "mad2d_mcad35", NULL, NULL,
1727                 NULL, NULL, NULL, NULL),
1728         _OMAP3_MUXENTRY(SAD2D_MCAD36, 0,
1729                 "sad2d_mcad36", "mad2d_mcad36", NULL, NULL,
1730                 NULL, NULL, NULL, NULL),
1731         _OMAP3_MUXENTRY(SAD2D_MREAD, 0,
1732                 "sad2d_mread", "mad2d_sread", NULL, NULL,
1733                 NULL, NULL, NULL, NULL),
1734         _OMAP3_MUXENTRY(SAD2D_MWRITE, 0,
1735                 "sad2d_mwrite", "mad2d_swrite", NULL, NULL,
1736                 NULL, NULL, NULL, NULL),
1737         _OMAP3_MUXENTRY(SAD2D_SBUSFLAG, 0,
1738                 "sad2d_sbusflag", "mad2d_mbusflag", NULL, NULL,
1739                 NULL, NULL, NULL, NULL),
1740         _OMAP3_MUXENTRY(SAD2D_SREAD, 0,
1741                 "sad2d_sread", "mad2d_mread", NULL, NULL,
1742                 NULL, NULL, NULL, NULL),
1743         _OMAP3_MUXENTRY(SAD2D_SWRITE, 0,
1744                 "sad2d_swrite", "mad2d_mwrite", NULL, NULL,
1745                 NULL, NULL, NULL, NULL),
1746         _OMAP3_MUXENTRY(SDMMC1_CLK, 120,
1747                 "sdmmc1_clk", "ms_clk", NULL, NULL,
1748                 "gpio_120", NULL, NULL, "safe_mode"),
1749         _OMAP3_MUXENTRY(SDMMC1_CMD, 121,
1750                 "sdmmc1_cmd", "ms_bs", NULL, NULL,
1751                 "gpio_121", NULL, NULL, "safe_mode"),
1752         _OMAP3_MUXENTRY(SDMMC1_DAT0, 122,
1753                 "sdmmc1_dat0", "ms_dat0", NULL, NULL,
1754                 "gpio_122", NULL, NULL, "safe_mode"),
1755         _OMAP3_MUXENTRY(SDMMC1_DAT1, 123,
1756                 "sdmmc1_dat1", "ms_dat1", NULL, NULL,
1757                 "gpio_123", NULL, NULL, "safe_mode"),
1758         _OMAP3_MUXENTRY(SDMMC1_DAT2, 124,
1759                 "sdmmc1_dat2", "ms_dat2", NULL, NULL,
1760                 "gpio_124", NULL, NULL, "safe_mode"),
1761         _OMAP3_MUXENTRY(SDMMC1_DAT3, 125,
1762                 "sdmmc1_dat3", "ms_dat3", NULL, NULL,
1763                 "gpio_125", NULL, NULL, "safe_mode"),
1764         _OMAP3_MUXENTRY(SDRC_CKE0, 0,
1765                 "sdrc_cke0", NULL, NULL, NULL,
1766                 NULL, NULL, NULL, "safe_mode_out1"),
1767         _OMAP3_MUXENTRY(SDRC_CKE1, 0,
1768                 "sdrc_cke1", NULL, NULL, NULL,
1769                 NULL, NULL, NULL, "safe_mode_out1"),
1770         _OMAP3_MUXENTRY(SIM_IO, 126,
1771                 "sim_io", "sim_io_low_impedance", NULL, NULL,
1772                 "gpio_126", NULL, NULL, "safe_mode"),
1773         _OMAP3_MUXENTRY(SIM_CLK, 127,
1774                 "sim_clk", NULL, NULL, NULL,
1775                 "gpio_127", NULL, NULL, "safe_mode"),
1776         _OMAP3_MUXENTRY(SIM_PWRCTRL, 128,
1777                 "sim_pwrctrl", NULL, NULL, NULL,
1778                 "gpio_128", NULL, NULL, "safe_mode"),
1779         _OMAP3_MUXENTRY(SIM_RST, 129,
1780                 "sim_rst", NULL, NULL, NULL,
1781                 "gpio_129", NULL, NULL, "safe_mode"),
1782         _OMAP3_MUXENTRY(SYS_BOOT0, 2,
1783                 "sys_boot0", NULL, NULL, "dss_data18",
1784                 "gpio_2", NULL, NULL, "safe_mode"),
1785         _OMAP3_MUXENTRY(SYS_BOOT1, 3,
1786                 "sys_boot1", NULL, NULL, "dss_data19",
1787                 "gpio_3", NULL, NULL, "safe_mode"),
1788         _OMAP3_MUXENTRY(SYS_BOOT3, 5,
1789                 "sys_boot3", NULL, NULL, "dss_data20",
1790                 "gpio_5", NULL, NULL, "safe_mode"),
1791         _OMAP3_MUXENTRY(SYS_BOOT4, 6,
1792                 "sys_boot4", "sdmmc2_dir_dat2", NULL, "dss_data21",
1793                 "gpio_6", NULL, NULL, "safe_mode"),
1794         _OMAP3_MUXENTRY(SYS_BOOT5, 7,
1795                 "sys_boot5", "sdmmc2_dir_dat3", NULL, "dss_data22",
1796                 "gpio_7", NULL, NULL, "safe_mode"),
1797         _OMAP3_MUXENTRY(SYS_BOOT6, 8,
1798                 "sys_boot6", NULL, NULL, "dss_data23",
1799                 "gpio_8", NULL, NULL, "safe_mode"),
1800         _OMAP3_MUXENTRY(UART1_CTS, 150,
1801                 "uart1_cts", "ssi1_rdy_tx", NULL, NULL,
1802                 "gpio_150", "hsusb3_tll_clk", NULL, "safe_mode"),
1803         _OMAP3_MUXENTRY(UART1_RTS, 149,
1804                 "uart1_rts", "ssi1_flag_tx", NULL, NULL,
1805                 "gpio_149", NULL, NULL, "safe_mode"),
1806         _OMAP3_MUXENTRY(UART1_TX, 148,
1807                 "uart1_tx", "ssi1_dat_tx", NULL, NULL,
1808                 "gpio_148", NULL, NULL, "safe_mode"),
1809         { .reg_offset = OMAP_MUX_TERMINATOR },
1810 };
1811 #else
1812 #define omap36xx_cbp_subset     NULL
1813 #endif
1814
1815 /*
1816  * Balls for 36XX CBP package
1817  * 515-pin s-PBGA Package, 0.50mm Ball Pitch (Top), 0.40mm Ball Pitch (Bottom)
1818  */
1819 #if defined(CONFIG_OMAP_MUX) && defined(CONFIG_DEBUG_FS)                \
1820                 && defined (CONFIG_OMAP_PACKAGE_CBP)
1821 static struct omap_ball __initdata omap36xx_cbp_ball[] = {
1822         _OMAP3_BALLENTRY(CAM_D0, "ag17", NULL),
1823         _OMAP3_BALLENTRY(CAM_D1, "ah17", NULL),
1824         _OMAP3_BALLENTRY(CAM_D10, "b25", NULL),
1825         _OMAP3_BALLENTRY(CAM_D11, "c26", NULL),
1826         _OMAP3_BALLENTRY(CAM_D2, "b24", NULL),
1827         _OMAP3_BALLENTRY(CAM_D3, "c24", NULL),
1828         _OMAP3_BALLENTRY(CAM_D4, "d24", NULL),
1829         _OMAP3_BALLENTRY(CAM_D5, "a25", NULL),
1830         _OMAP3_BALLENTRY(CAM_D6, "k28", NULL),
1831         _OMAP3_BALLENTRY(CAM_D7, "l28", NULL),
1832         _OMAP3_BALLENTRY(CAM_D8, "k27", NULL),
1833         _OMAP3_BALLENTRY(CAM_D9, "l27", NULL),
1834         _OMAP3_BALLENTRY(CAM_FLD, "c23", NULL),
1835         _OMAP3_BALLENTRY(CAM_HS, "a24", NULL),
1836         _OMAP3_BALLENTRY(CAM_PCLK, "c27", NULL),
1837         _OMAP3_BALLENTRY(CAM_STROBE, "d25", NULL),
1838         _OMAP3_BALLENTRY(CAM_VS, "a23", NULL),
1839         _OMAP3_BALLENTRY(CAM_WEN, "b23", NULL),
1840         _OMAP3_BALLENTRY(CAM_XCLKA, "c25", NULL),
1841         _OMAP3_BALLENTRY(CAM_XCLKB, "b26", NULL),
1842         _OMAP3_BALLENTRY(CSI2_DX0, "ag19", NULL),
1843         _OMAP3_BALLENTRY(CSI2_DX1, "ag18", NULL),
1844         _OMAP3_BALLENTRY(CSI2_DY0, "ah19", NULL),
1845         _OMAP3_BALLENTRY(CSI2_DY1, "ah18", NULL),
1846         _OMAP3_BALLENTRY(DSS_ACBIAS, "e27", NULL),
1847         _OMAP3_BALLENTRY(DSS_DATA0, "ag22", NULL),
1848         _OMAP3_BALLENTRY(DSS_DATA1, "ah22", NULL),
1849         _OMAP3_BALLENTRY(DSS_DATA10, "ad28", NULL),
1850         _OMAP3_BALLENTRY(DSS_DATA11, "ad27", NULL),
1851         _OMAP3_BALLENTRY(DSS_DATA12, "ab28", NULL),
1852         _OMAP3_BALLENTRY(DSS_DATA13, "ab27", NULL),
1853         _OMAP3_BALLENTRY(DSS_DATA14, "aa28", NULL),
1854         _OMAP3_BALLENTRY(DSS_DATA15, "aa27", NULL),
1855         _OMAP3_BALLENTRY(DSS_DATA16, "g25", NULL),
1856         _OMAP3_BALLENTRY(DSS_DATA17, "h27", NULL),
1857         _OMAP3_BALLENTRY(DSS_DATA18, "h26", NULL),
1858         _OMAP3_BALLENTRY(DSS_DATA19, "h25", NULL),
1859         _OMAP3_BALLENTRY(DSS_DATA2, "ag23", NULL),
1860         _OMAP3_BALLENTRY(DSS_DATA20, "e28", NULL),
1861         _OMAP3_BALLENTRY(DSS_DATA21, "j26", NULL),
1862         _OMAP3_BALLENTRY(DSS_DATA22, "ac27", NULL),
1863         _OMAP3_BALLENTRY(DSS_DATA23, "ac28", NULL),
1864         _OMAP3_BALLENTRY(DSS_DATA3, "ah23", NULL),
1865         _OMAP3_BALLENTRY(DSS_DATA4, "ag24", NULL),
1866         _OMAP3_BALLENTRY(DSS_DATA5, "ah24", NULL),
1867         _OMAP3_BALLENTRY(DSS_DATA6, "e26", NULL),
1868         _OMAP3_BALLENTRY(DSS_DATA7, "f28", NULL),
1869         _OMAP3_BALLENTRY(DSS_DATA8, "f27", NULL),
1870         _OMAP3_BALLENTRY(DSS_DATA9, "g26", NULL),
1871         _OMAP3_BALLENTRY(DSS_HSYNC, "d26", NULL),
1872         _OMAP3_BALLENTRY(DSS_PCLK, "d28", NULL),
1873         _OMAP3_BALLENTRY(DSS_VSYNC, "d27", NULL),
1874         _OMAP3_BALLENTRY(ETK_CLK, "af10", NULL),
1875         _OMAP3_BALLENTRY(ETK_CTL, "ae10", NULL),
1876         _OMAP3_BALLENTRY(ETK_D0, "af11", NULL),
1877         _OMAP3_BALLENTRY(ETK_D1, "ag12", NULL),
1878         _OMAP3_BALLENTRY(ETK_D10, "ae7", NULL),
1879         _OMAP3_BALLENTRY(ETK_D11, "af7", NULL),
1880         _OMAP3_BALLENTRY(ETK_D12, "ag7", NULL),
1881         _OMAP3_BALLENTRY(ETK_D13, "ah7", NULL),
1882         _OMAP3_BALLENTRY(ETK_D14, "ag8", NULL),
1883         _OMAP3_BALLENTRY(ETK_D15, "ah8", NULL),
1884         _OMAP3_BALLENTRY(ETK_D2, "ah12", NULL),
1885         _OMAP3_BALLENTRY(ETK_D3, "ae13", NULL),
1886         _OMAP3_BALLENTRY(ETK_D4, "ae11", NULL),
1887         _OMAP3_BALLENTRY(ETK_D5, "ah9", NULL),
1888         _OMAP3_BALLENTRY(ETK_D6, "af13", NULL),
1889         _OMAP3_BALLENTRY(ETK_D7, "ah14", NULL),
1890         _OMAP3_BALLENTRY(ETK_D8, "af9", NULL),
1891         _OMAP3_BALLENTRY(ETK_D9, "ag9", NULL),
1892         _OMAP3_BALLENTRY(GPMC_A1, "n4", "ac15"),
1893         _OMAP3_BALLENTRY(GPMC_A10, "k3", "ab19"),
1894         _OMAP3_BALLENTRY(GPMC_A11, NULL, "ac20"),
1895         _OMAP3_BALLENTRY(GPMC_A2, "m4", "ab15"),
1896         _OMAP3_BALLENTRY(GPMC_A3, "l4", "ac16"),
1897         _OMAP3_BALLENTRY(GPMC_A4, "k4", "ab16"),
1898         _OMAP3_BALLENTRY(GPMC_A5, "t3", "ac17"),
1899         _OMAP3_BALLENTRY(GPMC_A6, "r3", "ab17"),
1900         _OMAP3_BALLENTRY(GPMC_A7, "n3", "ac18"),
1901         _OMAP3_BALLENTRY(GPMC_A8, "m3", "ab18"),
1902         _OMAP3_BALLENTRY(GPMC_A9, "l3", "ac19"),
1903         _OMAP3_BALLENTRY(GPMC_CLK, "t4", "w2"),
1904         _OMAP3_BALLENTRY(GPMC_D10, "p1", "ab4"),
1905         _OMAP3_BALLENTRY(GPMC_D11, "r1", "ac4"),
1906         _OMAP3_BALLENTRY(GPMC_D12, "r2", "ab6"),
1907         _OMAP3_BALLENTRY(GPMC_D13, "t2", "ac6"),
1908         _OMAP3_BALLENTRY(GPMC_D14, "w1", "ab7"),
1909         _OMAP3_BALLENTRY(GPMC_D15, "y1", "ac7"),
1910         _OMAP3_BALLENTRY(GPMC_D9, "k2", "ac3"),
1911         _OMAP3_BALLENTRY(GPMC_NBE0_CLE, "g3", "ac12"),
1912         _OMAP3_BALLENTRY(GPMC_NBE1, "u3", NULL),
1913         _OMAP3_BALLENTRY(GPMC_NCS1, "h3", "y1"),
1914         _OMAP3_BALLENTRY(GPMC_NCS2, "v8", NULL),
1915         _OMAP3_BALLENTRY(GPMC_NCS3, "u8", NULL),
1916         _OMAP3_BALLENTRY(GPMC_NCS4, "t8", NULL),
1917         _OMAP3_BALLENTRY(GPMC_NCS5, "r8", NULL),
1918         _OMAP3_BALLENTRY(GPMC_NCS6, "p8", NULL),
1919         _OMAP3_BALLENTRY(GPMC_NCS7, "n8", NULL),
1920         _OMAP3_BALLENTRY(GPMC_NWP, "h1", "ab10"),
1921         _OMAP3_BALLENTRY(GPMC_WAIT1, "l8", "ac10"),
1922         _OMAP3_BALLENTRY(GPMC_WAIT2, "k8", NULL),
1923         _OMAP3_BALLENTRY(GPMC_WAIT3, "j8", NULL),
1924         _OMAP3_BALLENTRY(HDQ_SIO, "j25", NULL),
1925         _OMAP3_BALLENTRY(HSUSB0_CLK, "t28", NULL),
1926         _OMAP3_BALLENTRY(HSUSB0_DATA0, "t27", NULL),
1927         _OMAP3_BALLENTRY(HSUSB0_DATA1, "u28", NULL),
1928         _OMAP3_BALLENTRY(HSUSB0_DATA2, "u27", NULL),
1929         _OMAP3_BALLENTRY(HSUSB0_DATA3, "u26", NULL),
1930         _OMAP3_BALLENTRY(HSUSB0_DATA4, "u25", NULL),
1931         _OMAP3_BALLENTRY(HSUSB0_DATA5, "v28", NULL),
1932         _OMAP3_BALLENTRY(HSUSB0_DATA6, "v27", NULL),
1933         _OMAP3_BALLENTRY(HSUSB0_DATA7, "v26", NULL),
1934         _OMAP3_BALLENTRY(HSUSB0_DIR, "r28", NULL),
1935         _OMAP3_BALLENTRY(HSUSB0_NXT, "t26", NULL),
1936         _OMAP3_BALLENTRY(HSUSB0_STP, "t25", NULL),
1937         _OMAP3_BALLENTRY(I2C2_SCL, "af15", NULL),
1938         _OMAP3_BALLENTRY(I2C2_SDA, "ae15", NULL),
1939         _OMAP3_BALLENTRY(I2C3_SCL, "af14", NULL),
1940         _OMAP3_BALLENTRY(I2C3_SDA, "ag14", NULL),
1941         _OMAP3_BALLENTRY(I2C4_SCL, "ad26", NULL),
1942         _OMAP3_BALLENTRY(I2C4_SDA, "ae26", NULL),
1943         _OMAP3_BALLENTRY(JTAG_EMU0, "aa11", NULL),
1944         _OMAP3_BALLENTRY(JTAG_EMU1, "aa10", NULL),
1945         _OMAP3_BALLENTRY(MCBSP1_CLKR, "y21", NULL),
1946         _OMAP3_BALLENTRY(MCBSP1_CLKX, "w21", NULL),
1947         _OMAP3_BALLENTRY(MCBSP1_DR, "u21", NULL),
1948         _OMAP3_BALLENTRY(MCBSP1_DX, "v21", NULL),
1949         _OMAP3_BALLENTRY(MCBSP1_FSR, "aa21", NULL),
1950         _OMAP3_BALLENTRY(MCBSP1_FSX, "k26", NULL),
1951         _OMAP3_BALLENTRY(MCBSP2_CLKX, "n21", NULL),
1952         _OMAP3_BALLENTRY(MCBSP2_DR, "r21", NULL),
1953         _OMAP3_BALLENTRY(MCBSP2_DX, "m21", NULL),
1954         _OMAP3_BALLENTRY(MCBSP2_FSX, "p21", NULL),
1955         _OMAP3_BALLENTRY(MCBSP3_CLKX, "af5", NULL),
1956         _OMAP3_BALLENTRY(MCBSP3_DR, "ae6", NULL),
1957         _OMAP3_BALLENTRY(MCBSP3_DX, "af6", NULL),
1958         _OMAP3_BALLENTRY(MCBSP3_FSX, "ae5", NULL),
1959         _OMAP3_BALLENTRY(MCBSP4_CLKX, "ae1", NULL),
1960         _OMAP3_BALLENTRY(MCBSP4_DR, "ad1", NULL),
1961         _OMAP3_BALLENTRY(MCBSP4_DX, "ad2", NULL),
1962         _OMAP3_BALLENTRY(MCBSP4_FSX, "ac1", NULL),
1963         _OMAP3_BALLENTRY(MCBSP_CLKS, "t21", NULL),
1964         _OMAP3_BALLENTRY(MCSPI1_CLK, "ab3", NULL),
1965         _OMAP3_BALLENTRY(MCSPI1_CS0, "ac2", NULL),
1966         _OMAP3_BALLENTRY(MCSPI1_CS1, "ac3", NULL),
1967         _OMAP3_BALLENTRY(MCSPI1_CS2, "ab1", NULL),
1968         _OMAP3_BALLENTRY(MCSPI1_CS3, "ab2", NULL),
1969         _OMAP3_BALLENTRY(MCSPI1_SIMO, "ab4", NULL),
1970         _OMAP3_BALLENTRY(MCSPI1_SOMI, "aa4", NULL),
1971         _OMAP3_BALLENTRY(MCSPI2_CLK, "aa3", NULL),
1972         _OMAP3_BALLENTRY(MCSPI2_CS0, "y4", NULL),
1973         _OMAP3_BALLENTRY(MCSPI2_CS1, "v3", NULL),
1974         _OMAP3_BALLENTRY(MCSPI2_SIMO, "y2", NULL),
1975         _OMAP3_BALLENTRY(MCSPI2_SOMI, "y3", NULL),
1976         _OMAP3_BALLENTRY(SDMMC1_CLK, "n28", NULL),
1977         _OMAP3_BALLENTRY(SDMMC1_CMD, "m27", NULL),
1978         _OMAP3_BALLENTRY(SDMMC1_DAT0, "n27", NULL),
1979         _OMAP3_BALLENTRY(SDMMC1_DAT1, "n26", NULL),
1980         _OMAP3_BALLENTRY(SDMMC1_DAT2, "n25", NULL),
1981         _OMAP3_BALLENTRY(SDMMC1_DAT3, "p28", NULL),
1982         _OMAP3_BALLENTRY(SDMMC2_CLK, "ae2", NULL),
1983         _OMAP3_BALLENTRY(SDMMC2_CMD, "ag5", NULL),
1984         _OMAP3_BALLENTRY(SDMMC2_DAT0, "ah5", NULL),
1985         _OMAP3_BALLENTRY(SDMMC2_DAT1, "ah4", NULL),
1986         _OMAP3_BALLENTRY(SDMMC2_DAT2, "ag4", NULL),
1987         _OMAP3_BALLENTRY(SDMMC2_DAT3, "af4", NULL),
1988         _OMAP3_BALLENTRY(SDMMC2_DAT4, "ae4", NULL),
1989         _OMAP3_BALLENTRY(SDMMC2_DAT5, "ah3", NULL),
1990         _OMAP3_BALLENTRY(SDMMC2_DAT6, "af3", NULL),
1991         _OMAP3_BALLENTRY(SDMMC2_DAT7, "ae3", NULL),
1992         _OMAP3_BALLENTRY(SDRC_CKE0, "h16", "j22"),
1993         _OMAP3_BALLENTRY(SDRC_CKE1, "h17", "j23"),
1994         _OMAP3_BALLENTRY(SIM_CLK, "p26", NULL),
1995         _OMAP3_BALLENTRY(SIM_IO, "p27", NULL),
1996         _OMAP3_BALLENTRY(SIM_PWRCTRL, "r27", NULL),
1997         _OMAP3_BALLENTRY(SIM_RST, "r25", NULL),
1998         _OMAP3_BALLENTRY(SYS_BOOT0, "ah26", NULL),
1999         _OMAP3_BALLENTRY(SYS_BOOT1, "ag26", NULL),
2000         _OMAP3_BALLENTRY(SYS_BOOT2, "ae14", NULL),
2001         _OMAP3_BALLENTRY(SYS_BOOT3, "af18", NULL),
2002         _OMAP3_BALLENTRY(SYS_BOOT4, "af19", NULL),
2003         _OMAP3_BALLENTRY(SYS_BOOT5, "ae21", NULL),
2004         _OMAP3_BALLENTRY(SYS_BOOT6, "af21", NULL),
2005         _OMAP3_BALLENTRY(SYS_CLKOUT1, "ag25", NULL),
2006         _OMAP3_BALLENTRY(SYS_CLKOUT2, "ae22", NULL),
2007         _OMAP3_BALLENTRY(SYS_CLKREQ, "af25", NULL),
2008         _OMAP3_BALLENTRY(SYS_NIRQ, "af26", NULL),
2009         _OMAP3_BALLENTRY(SYS_NRESWARM, "af24", NULL),
2010         _OMAP3_BALLENTRY(SYS_OFF_MODE, "af22", NULL),
2011         _OMAP3_BALLENTRY(UART1_CTS, "w8", NULL),
2012         _OMAP3_BALLENTRY(UART1_RTS, "aa9", NULL),
2013         _OMAP3_BALLENTRY(UART1_RX, "y8", NULL),
2014         _OMAP3_BALLENTRY(UART1_TX, "aa8", NULL),
2015         _OMAP3_BALLENTRY(UART2_CTS, "ab26", NULL),
2016         _OMAP3_BALLENTRY(UART2_RTS, "ab25", NULL),
2017         _OMAP3_BALLENTRY(UART2_RX, "ad25", NULL),
2018         _OMAP3_BALLENTRY(UART2_TX, "aa25", NULL),
2019         _OMAP3_BALLENTRY(UART3_CTS_RCTX, "h18", NULL),
2020         _OMAP3_BALLENTRY(UART3_RTS_SD, "h19", NULL),
2021         _OMAP3_BALLENTRY(UART3_RX_IRRX, "h20", NULL),
2022         _OMAP3_BALLENTRY(UART3_TX_IRTX, "h21", NULL),
2023         { .reg_offset = OMAP_MUX_TERMINATOR },
2024 };
2025 #else
2026 #define omap36xx_cbp_ball        NULL
2027 #endif
2028
2029 int __init omap3_mux_init(struct omap_board_mux *board_subset, int flags)
2030 {
2031         struct omap_mux *package_subset;
2032         struct omap_ball *package_balls;
2033
2034         switch (flags & OMAP_PACKAGE_MASK) {
2035         case OMAP_PACKAGE_CBC:
2036                 package_subset = omap3_cbc_subset;
2037                 package_balls = omap3_cbc_ball;
2038                 break;
2039         case OMAP_PACKAGE_CBB:
2040                 package_subset = omap3_cbb_subset;
2041                 package_balls = omap3_cbb_ball;
2042                 break;
2043         case OMAP_PACKAGE_CUS:
2044                 package_subset = omap3_cus_subset;
2045                 package_balls = omap3_cus_ball;
2046                 break;
2047         case OMAP_PACKAGE_CBP:
2048                 package_subset = omap36xx_cbp_subset;
2049                 package_balls = omap36xx_cbp_ball;
2050                 break;
2051         default:
2052                 pr_err("%s Unknown omap package, mux disabled\n", __func__);
2053                 return -EINVAL;
2054         }
2055
2056         return omap_mux_init("core", 0,
2057                              OMAP3_CONTROL_PADCONF_MUX_PBASE,
2058                              OMAP3_CONTROL_PADCONF_MUX_SIZE,
2059                              omap3_muxmodes, package_subset, board_subset,
2060                              package_balls);
2061 }