lin
2025-08-21 57113df3a0e2be01232281fad9a5f2c060567981
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
/*
 * Copyright (C) 2009 Nokia
 * Copyright (C) 2009 Texas Instruments
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 as
 * published by the Free Software Foundation.
 */
 
#define OMAP3_CONTROL_PADCONF_MUX_PBASE                0x48002030LU
 
#define OMAP3_MUX(mode0, mux_value)                    \
{                                    \
   .reg_offset    = (OMAP3_CONTROL_PADCONF_##mode0##_OFFSET),    \
   .value        = (mux_value),                    \
}
 
/*
 * OMAP3 CONTROL_PADCONF* register offsets for pin-muxing
 *
 * Extracted from the TRM.  Add 0x48002030 to these values to get the
 * absolute addresses.  The name in the macro is the mode-0 name of
 * the pin.  NOTE: These registers are 16-bits wide.
 *
 * Note that 34XX TRM uses MMC instead of SDMMC and SAD2D instead
 * of CHASSIS for some registers. For the defines, we follow the
 * 36XX naming, and use SDMMC and CHASSIS.
 */
#define OMAP3_CONTROL_PADCONF_SDRC_D0_OFFSET            0x000
#define OMAP3_CONTROL_PADCONF_SDRC_D1_OFFSET            0x002
#define OMAP3_CONTROL_PADCONF_SDRC_D2_OFFSET            0x004
#define OMAP3_CONTROL_PADCONF_SDRC_D3_OFFSET            0x006
#define OMAP3_CONTROL_PADCONF_SDRC_D4_OFFSET            0x008
#define OMAP3_CONTROL_PADCONF_SDRC_D5_OFFSET            0x00a
#define OMAP3_CONTROL_PADCONF_SDRC_D6_OFFSET            0x00c
#define OMAP3_CONTROL_PADCONF_SDRC_D7_OFFSET            0x00e
#define OMAP3_CONTROL_PADCONF_SDRC_D8_OFFSET            0x010
#define OMAP3_CONTROL_PADCONF_SDRC_D9_OFFSET            0x012
#define OMAP3_CONTROL_PADCONF_SDRC_D10_OFFSET            0x014
#define OMAP3_CONTROL_PADCONF_SDRC_D11_OFFSET            0x016
#define OMAP3_CONTROL_PADCONF_SDRC_D12_OFFSET            0x018
#define OMAP3_CONTROL_PADCONF_SDRC_D13_OFFSET            0x01a
#define OMAP3_CONTROL_PADCONF_SDRC_D14_OFFSET            0x01c
#define OMAP3_CONTROL_PADCONF_SDRC_D15_OFFSET            0x01e
#define OMAP3_CONTROL_PADCONF_SDRC_D16_OFFSET            0x020
#define OMAP3_CONTROL_PADCONF_SDRC_D17_OFFSET            0x022
#define OMAP3_CONTROL_PADCONF_SDRC_D18_OFFSET            0x024
#define OMAP3_CONTROL_PADCONF_SDRC_D19_OFFSET            0x026
#define OMAP3_CONTROL_PADCONF_SDRC_D20_OFFSET            0x028
#define OMAP3_CONTROL_PADCONF_SDRC_D21_OFFSET            0x02a
#define OMAP3_CONTROL_PADCONF_SDRC_D22_OFFSET            0x02c
#define OMAP3_CONTROL_PADCONF_SDRC_D23_OFFSET            0x02e
#define OMAP3_CONTROL_PADCONF_SDRC_D24_OFFSET            0x030
#define OMAP3_CONTROL_PADCONF_SDRC_D25_OFFSET            0x032
#define OMAP3_CONTROL_PADCONF_SDRC_D26_OFFSET            0x034
#define OMAP3_CONTROL_PADCONF_SDRC_D27_OFFSET            0x036
#define OMAP3_CONTROL_PADCONF_SDRC_D28_OFFSET            0x038
#define OMAP3_CONTROL_PADCONF_SDRC_D29_OFFSET            0x03a
#define OMAP3_CONTROL_PADCONF_SDRC_D30_OFFSET            0x03c
#define OMAP3_CONTROL_PADCONF_SDRC_D31_OFFSET            0x03e
#define OMAP3_CONTROL_PADCONF_SDRC_CLK_OFFSET            0x040
#define OMAP3_CONTROL_PADCONF_SDRC_DQS0_OFFSET            0x042
#define OMAP3_CONTROL_PADCONF_SDRC_DQS1_OFFSET            0x044
#define OMAP3_CONTROL_PADCONF_SDRC_DQS2_OFFSET            0x046
#define OMAP3_CONTROL_PADCONF_SDRC_DQS3_OFFSET            0x048
#define OMAP3_CONTROL_PADCONF_GPMC_A1_OFFSET            0x04a
#define OMAP3_CONTROL_PADCONF_GPMC_A2_OFFSET            0x04c
#define OMAP3_CONTROL_PADCONF_GPMC_A3_OFFSET            0x04e
#define OMAP3_CONTROL_PADCONF_GPMC_A4_OFFSET            0x050
#define OMAP3_CONTROL_PADCONF_GPMC_A5_OFFSET            0x052
#define OMAP3_CONTROL_PADCONF_GPMC_A6_OFFSET            0x054
#define OMAP3_CONTROL_PADCONF_GPMC_A7_OFFSET            0x056
#define OMAP3_CONTROL_PADCONF_GPMC_A8_OFFSET            0x058
#define OMAP3_CONTROL_PADCONF_GPMC_A9_OFFSET            0x05a
#define OMAP3_CONTROL_PADCONF_GPMC_A10_OFFSET            0x05c
#define OMAP3_CONTROL_PADCONF_GPMC_D0_OFFSET            0x05e
#define OMAP3_CONTROL_PADCONF_GPMC_D1_OFFSET            0x060
#define OMAP3_CONTROL_PADCONF_GPMC_D2_OFFSET            0x062
#define OMAP3_CONTROL_PADCONF_GPMC_D3_OFFSET            0x064
#define OMAP3_CONTROL_PADCONF_GPMC_D4_OFFSET            0x066
#define OMAP3_CONTROL_PADCONF_GPMC_D5_OFFSET            0x068
#define OMAP3_CONTROL_PADCONF_GPMC_D6_OFFSET            0x06a
#define OMAP3_CONTROL_PADCONF_GPMC_D7_OFFSET            0x06c
#define OMAP3_CONTROL_PADCONF_GPMC_D8_OFFSET            0x06e
#define OMAP3_CONTROL_PADCONF_GPMC_D9_OFFSET            0x070
#define OMAP3_CONTROL_PADCONF_GPMC_D10_OFFSET            0x072
#define OMAP3_CONTROL_PADCONF_GPMC_D11_OFFSET            0x074
#define OMAP3_CONTROL_PADCONF_GPMC_D12_OFFSET            0x076
#define OMAP3_CONTROL_PADCONF_GPMC_D13_OFFSET            0x078
#define OMAP3_CONTROL_PADCONF_GPMC_D14_OFFSET            0x07a
#define OMAP3_CONTROL_PADCONF_GPMC_D15_OFFSET            0x07c
#define OMAP3_CONTROL_PADCONF_GPMC_NCS0_OFFSET            0x07e
#define OMAP3_CONTROL_PADCONF_GPMC_NCS1_OFFSET            0x080
#define OMAP3_CONTROL_PADCONF_GPMC_NCS2_OFFSET            0x082
#define OMAP3_CONTROL_PADCONF_GPMC_NCS3_OFFSET            0x084
#define OMAP3_CONTROL_PADCONF_GPMC_NCS4_OFFSET            0x086
#define OMAP3_CONTROL_PADCONF_GPMC_NCS5_OFFSET            0x088
#define OMAP3_CONTROL_PADCONF_GPMC_NCS6_OFFSET            0x08a
#define OMAP3_CONTROL_PADCONF_GPMC_NCS7_OFFSET            0x08c
#define OMAP3_CONTROL_PADCONF_GPMC_CLK_OFFSET            0x08e
#define OMAP3_CONTROL_PADCONF_GPMC_NADV_ALE_OFFSET        0x090
#define OMAP3_CONTROL_PADCONF_GPMC_NOE_OFFSET            0x092
#define OMAP3_CONTROL_PADCONF_GPMC_NWE_OFFSET            0x094
#define OMAP3_CONTROL_PADCONF_GPMC_NBE0_CLE_OFFSET        0x096
#define OMAP3_CONTROL_PADCONF_GPMC_NBE1_OFFSET            0x098
#define OMAP3_CONTROL_PADCONF_GPMC_NWP_OFFSET            0x09a
#define OMAP3_CONTROL_PADCONF_GPMC_WAIT0_OFFSET            0x09c
#define OMAP3_CONTROL_PADCONF_GPMC_WAIT1_OFFSET            0x09e
#define OMAP3_CONTROL_PADCONF_GPMC_WAIT2_OFFSET            0x0a0
#define OMAP3_CONTROL_PADCONF_GPMC_WAIT3_OFFSET            0x0a2
#define OMAP3_CONTROL_PADCONF_DSS_PCLK_OFFSET            0x0a4
#define OMAP3_CONTROL_PADCONF_DSS_HSYNC_OFFSET            0x0a6
#define OMAP3_CONTROL_PADCONF_DSS_VSYNC_OFFSET            0x0a8
#define OMAP3_CONTROL_PADCONF_DSS_ACBIAS_OFFSET            0x0aa
#define OMAP3_CONTROL_PADCONF_DSS_DATA0_OFFSET            0x0ac
#define OMAP3_CONTROL_PADCONF_DSS_DATA1_OFFSET            0x0ae
#define OMAP3_CONTROL_PADCONF_DSS_DATA2_OFFSET            0x0b0
#define OMAP3_CONTROL_PADCONF_DSS_DATA3_OFFSET            0x0b2
#define OMAP3_CONTROL_PADCONF_DSS_DATA4_OFFSET            0x0b4
#define OMAP3_CONTROL_PADCONF_DSS_DATA5_OFFSET            0x0b6
#define OMAP3_CONTROL_PADCONF_DSS_DATA6_OFFSET            0x0b8
#define OMAP3_CONTROL_PADCONF_DSS_DATA7_OFFSET            0x0ba
#define OMAP3_CONTROL_PADCONF_DSS_DATA8_OFFSET            0x0bc
#define OMAP3_CONTROL_PADCONF_DSS_DATA9_OFFSET            0x0be
#define OMAP3_CONTROL_PADCONF_DSS_DATA10_OFFSET            0x0c0
#define OMAP3_CONTROL_PADCONF_DSS_DATA11_OFFSET            0x0c2
#define OMAP3_CONTROL_PADCONF_DSS_DATA12_OFFSET            0x0c4
#define OMAP3_CONTROL_PADCONF_DSS_DATA13_OFFSET            0x0c6
#define OMAP3_CONTROL_PADCONF_DSS_DATA14_OFFSET            0x0c8
#define OMAP3_CONTROL_PADCONF_DSS_DATA15_OFFSET            0x0ca
#define OMAP3_CONTROL_PADCONF_DSS_DATA16_OFFSET            0x0cc
#define OMAP3_CONTROL_PADCONF_DSS_DATA17_OFFSET            0x0ce
#define OMAP3_CONTROL_PADCONF_DSS_DATA18_OFFSET            0x0d0
#define OMAP3_CONTROL_PADCONF_DSS_DATA19_OFFSET            0x0d2
#define OMAP3_CONTROL_PADCONF_DSS_DATA20_OFFSET            0x0d4
#define OMAP3_CONTROL_PADCONF_DSS_DATA21_OFFSET            0x0d6
#define OMAP3_CONTROL_PADCONF_DSS_DATA22_OFFSET            0x0d8
#define OMAP3_CONTROL_PADCONF_DSS_DATA23_OFFSET            0x0da
#define OMAP3_CONTROL_PADCONF_CAM_HS_OFFSET            0x0dc
#define OMAP3_CONTROL_PADCONF_CAM_VS_OFFSET            0x0de
#define OMAP3_CONTROL_PADCONF_CAM_XCLKA_OFFSET            0x0e0
#define OMAP3_CONTROL_PADCONF_CAM_PCLK_OFFSET            0x0e2
#define OMAP3_CONTROL_PADCONF_CAM_FLD_OFFSET            0x0e4
#define OMAP3_CONTROL_PADCONF_CAM_D0_OFFSET            0x0e6
#define OMAP3_CONTROL_PADCONF_CAM_D1_OFFSET            0x0e8
#define OMAP3_CONTROL_PADCONF_CAM_D2_OFFSET            0x0ea
#define OMAP3_CONTROL_PADCONF_CAM_D3_OFFSET            0x0ec
#define OMAP3_CONTROL_PADCONF_CAM_D4_OFFSET            0x0ee
#define OMAP3_CONTROL_PADCONF_CAM_D5_OFFSET            0x0f0
#define OMAP3_CONTROL_PADCONF_CAM_D6_OFFSET            0x0f2
#define OMAP3_CONTROL_PADCONF_CAM_D7_OFFSET            0x0f4
#define OMAP3_CONTROL_PADCONF_CAM_D8_OFFSET            0x0f6
#define OMAP3_CONTROL_PADCONF_CAM_D9_OFFSET            0x0f8
#define OMAP3_CONTROL_PADCONF_CAM_D10_OFFSET            0x0fa
#define OMAP3_CONTROL_PADCONF_CAM_D11_OFFSET            0x0fc
#define OMAP3_CONTROL_PADCONF_CAM_XCLKB_OFFSET            0x0fe
#define OMAP3_CONTROL_PADCONF_CAM_WEN_OFFSET            0x100
#define OMAP3_CONTROL_PADCONF_CAM_STROBE_OFFSET            0x102
#define OMAP3_CONTROL_PADCONF_CSI2_DX0_OFFSET            0x104
#define OMAP3_CONTROL_PADCONF_CSI2_DY0_OFFSET            0x106
#define OMAP3_CONTROL_PADCONF_CSI2_DX1_OFFSET            0x108
#define OMAP3_CONTROL_PADCONF_CSI2_DY1_OFFSET            0x10a
#define OMAP3_CONTROL_PADCONF_MCBSP2_FSX_OFFSET            0x10c
#define OMAP3_CONTROL_PADCONF_MCBSP2_CLKX_OFFSET        0x10e
#define OMAP3_CONTROL_PADCONF_MCBSP2_DR_OFFSET            0x110
#define OMAP3_CONTROL_PADCONF_MCBSP2_DX_OFFSET            0x112
#define OMAP3_CONTROL_PADCONF_SDMMC1_CLK_OFFSET            0x114
#define OMAP3_CONTROL_PADCONF_SDMMC1_CMD_OFFSET            0x116
#define OMAP3_CONTROL_PADCONF_SDMMC1_DAT0_OFFSET        0x118
#define OMAP3_CONTROL_PADCONF_SDMMC1_DAT1_OFFSET        0x11a
#define OMAP3_CONTROL_PADCONF_SDMMC1_DAT2_OFFSET        0x11c
#define OMAP3_CONTROL_PADCONF_SDMMC1_DAT3_OFFSET        0x11e
 
/* SDMMC1_DAT4 - DAT7 are SIM_IO SIM_CLK SIM_PWRCTRL and SIM_RST on 36xx */
#define OMAP3_CONTROL_PADCONF_SDMMC1_DAT4_OFFSET        0x120
#define OMAP3_CONTROL_PADCONF_SDMMC1_DAT5_OFFSET        0x122
#define OMAP3_CONTROL_PADCONF_SDMMC1_DAT6_OFFSET        0x124
#define OMAP3_CONTROL_PADCONF_SDMMC1_DAT7_OFFSET        0x126
 
#define OMAP3_CONTROL_PADCONF_SDMMC2_CLK_OFFSET            0x128
#define OMAP3_CONTROL_PADCONF_SDMMC2_CMD_OFFSET            0x12a
#define OMAP3_CONTROL_PADCONF_SDMMC2_DAT0_OFFSET        0x12c
#define OMAP3_CONTROL_PADCONF_SDMMC2_DAT1_OFFSET        0x12e
#define OMAP3_CONTROL_PADCONF_SDMMC2_DAT2_OFFSET        0x130
#define OMAP3_CONTROL_PADCONF_SDMMC2_DAT3_OFFSET        0x132
#define OMAP3_CONTROL_PADCONF_SDMMC2_DAT4_OFFSET        0x134
#define OMAP3_CONTROL_PADCONF_SDMMC2_DAT5_OFFSET        0x136
#define OMAP3_CONTROL_PADCONF_SDMMC2_DAT6_OFFSET        0x138
#define OMAP3_CONTROL_PADCONF_SDMMC2_DAT7_OFFSET        0x13a
#define OMAP3_CONTROL_PADCONF_MCBSP3_DX_OFFSET            0x13c
#define OMAP3_CONTROL_PADCONF_MCBSP3_DR_OFFSET            0x13e
#define OMAP3_CONTROL_PADCONF_MCBSP3_CLKX_OFFSET        0x140
#define OMAP3_CONTROL_PADCONF_MCBSP3_FSX_OFFSET            0x142
#define OMAP3_CONTROL_PADCONF_UART2_CTS_OFFSET            0x144
#define OMAP3_CONTROL_PADCONF_UART2_RTS_OFFSET            0x146
#define OMAP3_CONTROL_PADCONF_UART2_TX_OFFSET            0x148
#define OMAP3_CONTROL_PADCONF_UART2_RX_OFFSET            0x14a
#define OMAP3_CONTROL_PADCONF_UART1_TX_OFFSET            0x14c
#define OMAP3_CONTROL_PADCONF_UART1_RTS_OFFSET            0x14e
#define OMAP3_CONTROL_PADCONF_UART1_CTS_OFFSET            0x150
#define OMAP3_CONTROL_PADCONF_UART1_RX_OFFSET            0x152
#define OMAP3_CONTROL_PADCONF_MCBSP4_CLKX_OFFSET        0x154
#define OMAP3_CONTROL_PADCONF_MCBSP4_DR_OFFSET            0x156
#define OMAP3_CONTROL_PADCONF_MCBSP4_DX_OFFSET            0x158
#define OMAP3_CONTROL_PADCONF_MCBSP4_FSX_OFFSET            0x15a
#define OMAP3_CONTROL_PADCONF_MCBSP1_CLKR_OFFSET        0x15c
#define OMAP3_CONTROL_PADCONF_MCBSP1_FSR_OFFSET            0x15e
#define OMAP3_CONTROL_PADCONF_MCBSP1_DX_OFFSET            0x160
#define OMAP3_CONTROL_PADCONF_MCBSP1_DR_OFFSET            0x162
#define OMAP3_CONTROL_PADCONF_MCBSP_CLKS_OFFSET            0x164
#define OMAP3_CONTROL_PADCONF_MCBSP1_FSX_OFFSET            0x166
#define OMAP3_CONTROL_PADCONF_MCBSP1_CLKX_OFFSET        0x168
#define OMAP3_CONTROL_PADCONF_UART3_CTS_RCTX_OFFSET        0x16a
#define OMAP3_CONTROL_PADCONF_UART3_RTS_SD_OFFSET        0x16c
#define OMAP3_CONTROL_PADCONF_UART3_RX_IRRX_OFFSET        0x16e
#define OMAP3_CONTROL_PADCONF_UART3_TX_IRTX_OFFSET        0x170
#define OMAP3_CONTROL_PADCONF_HSUSB0_CLK_OFFSET            0x172
#define OMAP3_CONTROL_PADCONF_HSUSB0_STP_OFFSET            0x174
#define OMAP3_CONTROL_PADCONF_HSUSB0_DIR_OFFSET            0x176
#define OMAP3_CONTROL_PADCONF_HSUSB0_NXT_OFFSET            0x178
#define OMAP3_CONTROL_PADCONF_HSUSB0_DATA0_OFFSET        0x17a
#define OMAP3_CONTROL_PADCONF_HSUSB0_DATA1_OFFSET        0x17c
#define OMAP3_CONTROL_PADCONF_HSUSB0_DATA2_OFFSET        0x17e
#define OMAP3_CONTROL_PADCONF_HSUSB0_DATA3_OFFSET        0x180
#define OMAP3_CONTROL_PADCONF_HSUSB0_DATA4_OFFSET        0x182
#define OMAP3_CONTROL_PADCONF_HSUSB0_DATA5_OFFSET        0x184
#define OMAP3_CONTROL_PADCONF_HSUSB0_DATA6_OFFSET        0x186
#define OMAP3_CONTROL_PADCONF_HSUSB0_DATA7_OFFSET        0x188
#define OMAP3_CONTROL_PADCONF_I2C1_SCL_OFFSET            0x18a
#define OMAP3_CONTROL_PADCONF_I2C1_SDA_OFFSET            0x18c
#define OMAP3_CONTROL_PADCONF_I2C2_SCL_OFFSET            0x18e
#define OMAP3_CONTROL_PADCONF_I2C2_SDA_OFFSET            0x190
#define OMAP3_CONTROL_PADCONF_I2C3_SCL_OFFSET            0x192
#define OMAP3_CONTROL_PADCONF_I2C3_SDA_OFFSET            0x194
#define OMAP3_CONTROL_PADCONF_HDQ_SIO_OFFSET            0x196
#define OMAP3_CONTROL_PADCONF_MCSPI1_CLK_OFFSET            0x198
#define OMAP3_CONTROL_PADCONF_MCSPI1_SIMO_OFFSET        0x19a
#define OMAP3_CONTROL_PADCONF_MCSPI1_SOMI_OFFSET        0x19c
#define OMAP3_CONTROL_PADCONF_MCSPI1_CS0_OFFSET            0x19e
#define OMAP3_CONTROL_PADCONF_MCSPI1_CS1_OFFSET            0x1a0
#define OMAP3_CONTROL_PADCONF_MCSPI1_CS2_OFFSET            0x1a2
#define OMAP3_CONTROL_PADCONF_MCSPI1_CS3_OFFSET            0x1a4
#define OMAP3_CONTROL_PADCONF_MCSPI2_CLK_OFFSET            0x1a6
#define OMAP3_CONTROL_PADCONF_MCSPI2_SIMO_OFFSET        0x1a8
#define OMAP3_CONTROL_PADCONF_MCSPI2_SOMI_OFFSET        0x1aa
#define OMAP3_CONTROL_PADCONF_MCSPI2_CS0_OFFSET            0x1ac
#define OMAP3_CONTROL_PADCONF_MCSPI2_CS1_OFFSET            0x1ae
#define OMAP3_CONTROL_PADCONF_SYS_NIRQ_OFFSET            0x1b0
#define OMAP3_CONTROL_PADCONF_SYS_CLKOUT2_OFFSET        0x1b2
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD0_OFFSET        0x1b4
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD1_OFFSET        0x1b6
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD2_OFFSET        0x1b8
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD3_OFFSET        0x1ba
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD4_OFFSET        0x1bc
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD5_OFFSET        0x1be
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD6_OFFSET        0x1c0
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD7_OFFSET        0x1c2
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD8_OFFSET        0x1c4
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD9_OFFSET        0x1c6
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD10_OFFSET        0x1c8
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD11_OFFSET        0x1ca
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD12_OFFSET        0x1cc
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD13_OFFSET        0x1ce
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD14_OFFSET        0x1d0
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD15_OFFSET        0x1d2
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD16_OFFSET        0x1d4
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD17_OFFSET        0x1d6
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD18_OFFSET        0x1d8
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD19_OFFSET        0x1da
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD20_OFFSET        0x1dc
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD21_OFFSET        0x1de
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD22_OFFSET        0x1e0
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD23_OFFSET        0x1e2
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD24_OFFSET        0x1e4
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD25_OFFSET        0x1e6
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD26_OFFSET        0x1e8
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD27_OFFSET        0x1ea
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD28_OFFSET        0x1ec
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD29_OFFSET        0x1ee
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD30_OFFSET        0x1f0
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD31_OFFSET        0x1f2
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD32_OFFSET        0x1f4
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD33_OFFSET        0x1f6
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD34_OFFSET        0x1f8
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD35_OFFSET        0x1fa
#define OMAP3_CONTROL_PADCONF_SAD2D_MCAD36_OFFSET        0x1fc
 
/* Note that 34xx TRM has SAD2D instead of CHASSIS for these */
#define OMAP3_CONTROL_PADCONF_CHASSIS_CLK26MI_OFFSET        0x1fe
#define OMAP3_CONTROL_PADCONF_CHASSIS_NRESPWRON_OFFSET        0x200
#define OMAP3_CONTROL_PADCONF_CHASSIS_NRESWARW_OFFSET        0x202
#define OMAP3_CONTROL_PADCONF_CHASSIS_NIRQ_OFFSET        0x204
#define OMAP3_CONTROL_PADCONF_CHASSIS_FIQ_OFFSET        0x206
#define OMAP3_CONTROL_PADCONF_CHASSIS_ARMIRQ_OFFSET        0x208
#define OMAP3_CONTROL_PADCONF_CHASSIS_IVAIRQ_OFFSET        0x20a
#define OMAP3_CONTROL_PADCONF_CHASSIS_DMAREQ0_OFFSET        0x20c
#define OMAP3_CONTROL_PADCONF_CHASSIS_DMAREQ1_OFFSET        0x20e
#define OMAP3_CONTROL_PADCONF_CHASSIS_DMAREQ2_OFFSET        0x210
#define OMAP3_CONTROL_PADCONF_CHASSIS_DMAREQ3_OFFSET        0x212
#define OMAP3_CONTROL_PADCONF_CHASSIS_NTRST_OFFSET        0x214
#define OMAP3_CONTROL_PADCONF_CHASSIS_TDI_OFFSET        0x216
#define OMAP3_CONTROL_PADCONF_CHASSIS_TDO_OFFSET        0x218
#define OMAP3_CONTROL_PADCONF_CHASSIS_TMS_OFFSET        0x21a
#define OMAP3_CONTROL_PADCONF_CHASSIS_TCK_OFFSET        0x21c
#define OMAP3_CONTROL_PADCONF_CHASSIS_RTCK_OFFSET        0x21e
#define OMAP3_CONTROL_PADCONF_CHASSIS_MSTDBY_OFFSET        0x220
#define OMAP3_CONTROL_PADCONF_CHASSIS_IDLEREQ_OFFSET        0x222
#define OMAP3_CONTROL_PADCONF_CHASSIS_IDLEACK_OFFSET        0x224
 
#define OMAP3_CONTROL_PADCONF_SAD2D_MWRITE_OFFSET        0x226
#define OMAP3_CONTROL_PADCONF_SAD2D_SWRITE_OFFSET        0x228
#define OMAP3_CONTROL_PADCONF_SAD2D_MREAD_OFFSET        0x22a
#define OMAP3_CONTROL_PADCONF_SAD2D_SREAD_OFFSET        0x22c
#define OMAP3_CONTROL_PADCONF_SAD2D_MBUSFLAG_OFFSET        0x22e
#define OMAP3_CONTROL_PADCONF_SAD2D_SBUSFLAG_OFFSET        0x230
#define OMAP3_CONTROL_PADCONF_SDRC_CKE0_OFFSET            0x232
#define OMAP3_CONTROL_PADCONF_SDRC_CKE1_OFFSET            0x234
 
/* 36xx only */
#define OMAP3_CONTROL_PADCONF_GPMC_A11_OFFSET            0x236
#define OMAP3_CONTROL_PADCONF_SDRC_BA0_OFFSET            0x570
#define OMAP3_CONTROL_PADCONF_SDRC_BA1_OFFSET            0x572
#define OMAP3_CONTROL_PADCONF_SDRC_A0_OFFSET            0x574
#define OMAP3_CONTROL_PADCONF_SDRC_A1_OFFSET            0x576
#define OMAP3_CONTROL_PADCONF_SDRC_A2_OFFSET            0x578
#define OMAP3_CONTROL_PADCONF_SDRC_A3_OFFSET            0x57a
#define OMAP3_CONTROL_PADCONF_SDRC_A4_OFFSET            0x57c
#define OMAP3_CONTROL_PADCONF_SDRC_A5_OFFSET            0x57e
#define OMAP3_CONTROL_PADCONF_SDRC_A6_OFFSET            0x580
#define OMAP3_CONTROL_PADCONF_SDRC_A7_OFFSET            0x582
#define OMAP3_CONTROL_PADCONF_SDRC_A8_OFFSET            0x584
#define OMAP3_CONTROL_PADCONF_SDRC_A9_OFFSET            0x586
#define OMAP3_CONTROL_PADCONF_SDRC_A10_OFFSET            0x588
#define OMAP3_CONTROL_PADCONF_SDRC_A11_OFFSET            0x58a
#define OMAP3_CONTROL_PADCONF_SDRC_A12_OFFSET            0x58c
#define OMAP3_CONTROL_PADCONF_SDRC_A13_OFFSET            0x58e
#define OMAP3_CONTROL_PADCONF_SDRC_A14_OFFSET            0x590
#define OMAP3_CONTROL_PADCONF_SDRC_NCS0_OFFSET            0x592
#define OMAP3_CONTROL_PADCONF_SDRC_NCS1_OFFSET            0x594
#define OMAP3_CONTROL_PADCONF_SDRC_NCLK_OFFSET            0x596
#define OMAP3_CONTROL_PADCONF_SDRC_NRAS_OFFSET            0x598
#define OMAP3_CONTROL_PADCONF_SDRC_NCAS_OFFSET            0x59a
#define OMAP3_CONTROL_PADCONF_SDRC_NWE_OFFSET            0x59c
#define OMAP3_CONTROL_PADCONF_SDRC_DM0_OFFSET            0x59e
#define OMAP3_CONTROL_PADCONF_SDRC_DM1_OFFSET            0x5a0
#define OMAP3_CONTROL_PADCONF_SDRC_DM2_OFFSET            0x5a2
#define OMAP3_CONTROL_PADCONF_SDRC_DM3_OFFSET            0x5a4
 
/* 36xx only, these are SDMMC1_DAT4 - DAT7 on 34xx */
#define OMAP3_CONTROL_PADCONF_SIM_IO_OFFSET            0x120
#define OMAP3_CONTROL_PADCONF_SIM_CLK_OFFSET            0x122
#define OMAP3_CONTROL_PADCONF_SIM_PWRCTRL_OFFSET        0x124
#define OMAP3_CONTROL_PADCONF_SIM_RST_OFFSET            0x126
 
#define OMAP3_CONTROL_PADCONF_ETK_CLK_OFFSET            0x5a8
#define OMAP3_CONTROL_PADCONF_ETK_CTL_OFFSET            0x5aa
#define OMAP3_CONTROL_PADCONF_ETK_D0_OFFSET            0x5ac
#define OMAP3_CONTROL_PADCONF_ETK_D1_OFFSET            0x5ae
#define OMAP3_CONTROL_PADCONF_ETK_D2_OFFSET            0x5b0
#define OMAP3_CONTROL_PADCONF_ETK_D3_OFFSET            0x5b2
#define OMAP3_CONTROL_PADCONF_ETK_D4_OFFSET            0x5b4
#define OMAP3_CONTROL_PADCONF_ETK_D5_OFFSET            0x5b6
#define OMAP3_CONTROL_PADCONF_ETK_D6_OFFSET            0x5b8
#define OMAP3_CONTROL_PADCONF_ETK_D7_OFFSET            0x5ba
#define OMAP3_CONTROL_PADCONF_ETK_D8_OFFSET            0x5bc
#define OMAP3_CONTROL_PADCONF_ETK_D9_OFFSET            0x5be
#define OMAP3_CONTROL_PADCONF_ETK_D10_OFFSET            0x5c0
#define OMAP3_CONTROL_PADCONF_ETK_D11_OFFSET            0x5c2
#define OMAP3_CONTROL_PADCONF_ETK_D12_OFFSET            0x5c4
#define OMAP3_CONTROL_PADCONF_ETK_D13_OFFSET            0x5c6
#define OMAP3_CONTROL_PADCONF_ETK_D14_OFFSET            0x5c8
#define OMAP3_CONTROL_PADCONF_ETK_D15_OFFSET            0x5ca
#define OMAP3_CONTROL_PADCONF_I2C4_SCL_OFFSET            0x9d0
#define OMAP3_CONTROL_PADCONF_I2C4_SDA_OFFSET            0x9d2
#define OMAP3_CONTROL_PADCONF_SYS_32K_OFFSET            0x9d4
#define OMAP3_CONTROL_PADCONF_SYS_CLKREQ_OFFSET            0x9d6
#define OMAP3_CONTROL_PADCONF_SYS_NRESWARM_OFFSET        0x9d8
#define OMAP3_CONTROL_PADCONF_SYS_BOOT0_OFFSET            0x9da
#define OMAP3_CONTROL_PADCONF_SYS_BOOT1_OFFSET            0x9dc
#define OMAP3_CONTROL_PADCONF_SYS_BOOT2_OFFSET            0x9de
#define OMAP3_CONTROL_PADCONF_SYS_BOOT3_OFFSET            0x9e0
#define OMAP3_CONTROL_PADCONF_SYS_BOOT4_OFFSET            0x9e2
#define OMAP3_CONTROL_PADCONF_SYS_BOOT5_OFFSET            0x9e4
#define OMAP3_CONTROL_PADCONF_SYS_BOOT6_OFFSET            0x9e6
#define OMAP3_CONTROL_PADCONF_SYS_OFF_MODE_OFFSET        0x9e8
#define OMAP3_CONTROL_PADCONF_SYS_CLKOUT1_OFFSET        0x9ea
#define OMAP3_CONTROL_PADCONF_JTAG_NTRST_OFFSET            0x9ec
#define OMAP3_CONTROL_PADCONF_JTAG_TCK_OFFSET            0x9ee
#define OMAP3_CONTROL_PADCONF_JTAG_TMS_TMSC_OFFSET        0x9f0
#define OMAP3_CONTROL_PADCONF_JTAG_TDI_OFFSET            0x9f2
#define OMAP3_CONTROL_PADCONF_JTAG_EMU0_OFFSET            0x9f4
#define OMAP3_CONTROL_PADCONF_JTAG_EMU1_OFFSET            0x9f6
#define OMAP3_CONTROL_PADCONF_SAD2D_SWAKEUP_OFFSET        0xa1c
#define OMAP3_CONTROL_PADCONF_JTAG_RTCK_OFFSET            0xa1e
#define OMAP3_CONTROL_PADCONF_JTAG_TDO_OFFSET            0xa20
#define OMAP3_CONTROL_PADCONF_GPIO_127                0xa24
#define OMAP3_CONTROL_PADCONF_GPIO_126                0xa26
#define OMAP3_CONTROL_PADCONF_GPIO_128                0xa28
#define OMAP3_CONTROL_PADCONF_GPIO_129                0xa2a
 
#define OMAP3_CONTROL_PADCONF_MUX_SIZE                \
       (OMAP3_CONTROL_PADCONF_GPIO_129 + 0x2)