~pmdj/ubuntu/trusty/qemu/2.9+applesmc+fadtv3

« back to all changes in this revision

Viewing changes to roms/u-boot/arch/arm/include/asm/arch-vf610/imx-regs.h

  • Committer: Phil Dennis-Jordan
  • Date: 2017-07-21 08:03:43 UTC
  • mfrom: (1.1.1)
  • Revision ID: phil@philjordan.eu-20170721080343-2yr2vdj7713czahv
New upstream release 2.9.0.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 * Copyright 2013 Freescale Semiconductor, Inc.
 
3
 *
 
4
 * SPDX-License-Identifier:     GPL-2.0+
 
5
 */
 
6
 
 
7
#ifndef __ASM_ARCH_IMX_REGS_H__
 
8
#define __ASM_ARCH_IMX_REGS_H__
 
9
 
 
10
#define ARCH_MXC
 
11
 
 
12
#define IRAM_BASE_ADDR          0x3F000000      /* internal ram */
 
13
#define IRAM_SIZE               0x00080000      /* 512 KB */
 
14
 
 
15
#define AIPS0_BASE_ADDR         0x40000000
 
16
#define AIPS1_BASE_ADDR         0x40080000
 
17
 
 
18
/* AIPS 0 */
 
19
#define MSCM_BASE_ADDR          (AIPS0_BASE_ADDR + 0x00001000)
 
20
#define MSCM_IR_BASE_ADDR       (AIPS0_BASE_ADDR + 0x00001800)
 
21
#define CA5SCU_BASE_ADDR        (AIPS0_BASE_ADDR + 0x00002000)
 
22
#define CA5_INTD_BASE_ADDR      (AIPS0_BASE_ADDR + 0x00003000)
 
23
#define CA5_L2C_BASE_ADDR       (AIPS0_BASE_ADDR + 0x00006000)
 
24
#define NIC0_BASE_ADDR          (AIPS0_BASE_ADDR + 0x00008000)
 
25
#define NIC1_BASE_ADDR          (AIPS0_BASE_ADDR + 0x00009000)
 
26
#define NIC2_BASE_ADDR          (AIPS0_BASE_ADDR + 0x0000A000)
 
27
#define NIC3_BASE_ADDR          (AIPS0_BASE_ADDR + 0x0000B000)
 
28
#define NIC4_BASE_ADDR          (AIPS0_BASE_ADDR + 0x0000C000)
 
29
#define NIC5_BASE_ADDR          (AIPS0_BASE_ADDR + 0x0000D000)
 
30
#define NIC6_BASE_ADDR          (AIPS0_BASE_ADDR + 0x0000E000)
 
31
#define NIC7_BASE_ADDR          (AIPS0_BASE_ADDR + 0x0000F000)
 
32
#define AHBTZASC_BASE_ADDR      (AIPS0_BASE_ADDR + 0x00010000)
 
33
#define TZASC_SYS0_BASE_ADDR    (AIPS0_BASE_ADDR + 0x00011000)
 
34
#define TZASC_SYS1_BASE_ADDR    (AIPS0_BASE_ADDR + 0x00012000)
 
35
#define TZASC_GFX_BASE_ADDR     (AIPS0_BASE_ADDR + 0x00013000)
 
36
#define TZASC_DDR0_BASE_ADDR    (AIPS0_BASE_ADDR + 0x00014000)
 
37
#define TZASC_DDR1_BASE_ADDR    (AIPS0_BASE_ADDR + 0x00015000)
 
38
#define CSU_BASE_ADDR           (AIPS0_BASE_ADDR + 0x00017000)
 
39
#define DMA0_BASE_ADDR          (AIPS0_BASE_ADDR + 0x00018000)
 
40
#define DMA0_TCD_BASE_ADDR      (AIPS0_BASE_ADDR + 0x00019000)
 
41
#define SEMA4_BASE_ADDR         (AIPS0_BASE_ADDR + 0x0001D000)
 
42
#define FB_BASE_ADDR            (AIPS0_BASE_ADDR + 0x0001E000)
 
43
#define DMA_MUX0_BASE_ADDR      (AIPS0_BASE_ADDR + 0x00024000)
 
44
#define UART0_BASE              (AIPS0_BASE_ADDR + 0x00027000)
 
45
#define UART1_BASE              (AIPS0_BASE_ADDR + 0x00028000)
 
46
#define UART2_BASE              (AIPS0_BASE_ADDR + 0x00029000)
 
47
#define UART3_BASE              (AIPS0_BASE_ADDR + 0x0002A000)
 
48
#define SPI0_BASE_ADDR          (AIPS0_BASE_ADDR + 0x0002C000)
 
49
#define SPI1_BASE_ADDR          (AIPS0_BASE_ADDR + 0x0002D000)
 
50
#define SAI0_BASE_ADDR          (AIPS0_BASE_ADDR + 0x0002F000)
 
51
#define SAI1_BASE_ADDR          (AIPS0_BASE_ADDR + 0x00030000)
 
52
#define SAI2_BASE_ADDR          (AIPS0_BASE_ADDR + 0x00031000)
 
53
#define SAI3_BASE_ADDR          (AIPS0_BASE_ADDR + 0x00032000)
 
54
#define CRC_BASE_ADDR           (AIPS0_BASE_ADDR + 0x00033000)
 
55
#define PDB_BASE_ADDR           (AIPS0_BASE_ADDR + 0x00036000)
 
56
#define PIT_BASE_ADDR           (AIPS0_BASE_ADDR + 0x00037000)
 
57
#define FTM0_BASE_ADDR          (AIPS0_BASE_ADDR + 0x00038000)
 
58
#define FTM1_BASE_ADDR          (AIPS0_BASE_ADDR + 0x00039000)
 
59
#define ADC_BASE_ADDR           (AIPS0_BASE_ADDR + 0x0003B000)
 
60
#define TCON0_BASE_ADDR         (AIPS0_BASE_ADDR + 0x0003D000)
 
61
#define WDOG1_BASE_ADDR         (AIPS0_BASE_ADDR + 0x0003E000)
 
62
#define LPTMR_BASE_ADDR         (AIPS0_BASE_ADDR + 0x00040000)
 
63
#define RLE_BASE_ADDR           (AIPS0_BASE_ADDR + 0x00042000)
 
64
#define MLB_BASE_ADDR           (AIPS0_BASE_ADDR + 0x00043000)
 
65
#define QSPI0_BASE_ADDR         (AIPS0_BASE_ADDR + 0x00044000)
 
66
#define IOMUXC_BASE_ADDR        (AIPS0_BASE_ADDR + 0x00048000)
 
67
#define ANADIG_BASE_ADDR        (AIPS0_BASE_ADDR + 0x00050000)
 
68
#define SCSCM_BASE_ADDR         (AIPS0_BASE_ADDR + 0x00052000)
 
69
#define ASRC_BASE_ADDR          (AIPS0_BASE_ADDR + 0x00060000)
 
70
#define SPDIF_BASE_ADDR         (AIPS0_BASE_ADDR + 0x00061000)
 
71
#define ESAI_BASE_ADDR          (AIPS0_BASE_ADDR + 0x00062000)
 
72
#define ESAI_FIFO_BASE_ADDR     (AIPS0_BASE_ADDR + 0x00063000)
 
73
#define WDOG_BASE_ADDR          (AIPS0_BASE_ADDR + 0x00065000)
 
74
#define I2C0_BASE_ADDR          (AIPS0_BASE_ADDR + 0x00066000)
 
75
#define WKUP_BASE_ADDR          (AIPS0_BASE_ADDR + 0x0006A000)
 
76
#define CCM_BASE_ADDR           (AIPS0_BASE_ADDR + 0x0006B000)
 
77
#define GPC_BASE_ADDR           (AIPS0_BASE_ADDR + 0x0006C000)
 
78
#define VREG_DIG_BASE_ADDR      (AIPS0_BASE_ADDR + 0x0006D000)
 
79
#define SRC_BASE_ADDR           (AIPS0_BASE_ADDR + 0x0006E000)
 
80
#define CMU_BASE_ADDR           (AIPS0_BASE_ADDR + 0x0006F000)
 
81
 
 
82
/* AIPS 1 */
 
83
#define OCOTP_BASE_ADDR         (AIPS1_BASE_ADDR + 0x00025000)
 
84
#define DDR_BASE_ADDR           (AIPS1_BASE_ADDR + 0x0002E000)
 
85
#define ESDHC0_BASE_ADDR        (AIPS1_BASE_ADDR + 0x00031000)
 
86
#define ESDHC1_BASE_ADDR        (AIPS1_BASE_ADDR + 0x00032000)
 
87
#define ENET_BASE_ADDR          (AIPS1_BASE_ADDR + 0x00050000)
 
88
#define ENET1_BASE_ADDR         (AIPS1_BASE_ADDR + 0x00051000)
 
89
 
 
90
/* MUX mode and PAD ctrl are in one register */
 
91
#define CONFIG_IOMUX_SHARE_CONF_REG
 
92
 
 
93
#define FEC_QUIRK_ENET_MAC
 
94
#define I2C_QUIRK_REG
 
95
 
 
96
/* MSCM interrupt rounter */
 
97
#define MSCM_IRSPRC_CP0_EN                              1
 
98
#define MSCM_IRSPRC_NUM                                 112
 
99
 
 
100
/* DDRMC */
 
101
#define DDRMC_PHY_DQ_TIMING                             0x00002613
 
102
#define DDRMC_PHY_DQS_TIMING                            0x00002615
 
103
#define DDRMC_PHY_CTRL                                  0x01210080
 
104
#define DDRMC_PHY_MASTER_CTRL                           0x0001012a
 
105
#define DDRMC_PHY_SLAVE_CTRL                            0x00012020
 
106
 
 
107
#define DDRMC_PHY50_DDR3_MODE                           (1 << 12)
 
108
#define DDRMC_PHY50_EN_SW_HALF_CYCLE                    (1 << 8)
 
109
 
 
110
#define DDRMC_CR00_DRAM_CLASS_DDR3                      (0x6 << 8)
 
111
#define DDRMC_CR00_DRAM_CLASS_LPDDR2                    (0x5 << 8)
 
112
#define DDRMC_CR00_START                                1
 
113
#define DDRMC_CR02_DRAM_TINIT(v)                        ((v) & 0xffffff)
 
114
#define DDRMC_CR10_TRST_PWRON(v)                        (v)
 
115
#define DDRMC_CR11_CKE_INACTIVE(v)                      (v)
 
116
#define DDRMC_CR12_WRLAT(v)                             (((v) & 0x1f) << 8)
 
117
#define DDRMC_CR12_CASLAT_LIN(v)                        ((v) & 0x3f)
 
118
#define DDRMC_CR13_TRC(v)                               (((v) & 0xff) << 24)
 
119
#define DDRMC_CR13_TRRD(v)                              (((v) & 0xff) << 16)
 
120
#define DDRMC_CR13_TCCD(v)                              (((v) & 0x1f) << 8)
 
121
#define DDRMC_CR13_TBST_INT_INTERVAL(v)                 ((v) & 0x7)
 
122
#define DDRMC_CR14_TFAW(v)                              (((v) & 0x3f) << 24)
 
123
#define DDRMC_CR14_TRP(v)                               (((v) & 0x1f) << 16)
 
124
#define DDRMC_CR14_TWTR(v)                              (((v) & 0xf) << 8)
 
125
#define DDRMC_CR14_TRAS_MIN(v)                          ((v) & 0xff)
 
126
#define DDRMC_CR16_TMRD(v)                              (((v) & 0x1f) << 24)
 
127
#define DDRMC_CR16_TRTP(v)                              (((v) & 0xf) << 16)
 
128
#define DDRMC_CR17_TRAS_MAX(v)                          (((v) & 0x1ffff) << 8)
 
129
#define DDRMC_CR17_TMOD(v)                              ((v) & 0xff)
 
130
#define DDRMC_CR18_TCKESR(v)                            (((v) & 0x1f) << 8)
 
131
#define DDRMC_CR18_TCKE(v)                              ((v) & 0x7)
 
132
#define DDRMC_CR20_AP_EN                                (1 << 24)
 
133
#define DDRMC_CR21_TRCD_INT(v)                          (((v) & 0xff) << 16)
 
134
#define DDRMC_CR21_TRAS_LOCKOUT                         (1 << 8)
 
135
#define DDRMC_CR21_CCMAP_EN                             1
 
136
#define DDRMC_CR22_TDAL(v)                              (((v) & 0x3f) << 16)
 
137
#define DDRMC_CR23_BSTLEN(v)                            (((v) & 0x7) << 24)
 
138
#define DDRMC_CR23_TDLL(v)                              ((v) & 0xff)
 
139
#define DDRMC_CR24_TRP_AB(v)                            ((v) & 0x1f)
 
140
#define DDRMC_CR25_TREF_EN                              (1 << 16)
 
141
#define DDRMC_CR26_TREF(v)                              (((v) & 0xffff) << 16)
 
142
#define DDRMC_CR26_TRFC(v)                              ((v) & 0x3ff)
 
143
#define DDRMC_CR28_TREF_INT(v)                          ((v) & 0xffff)
 
144
#define DDRMC_CR29_TPDEX(v)                             ((v) & 0xffff)
 
145
#define DDRMC_CR30_TXPDLL(v)                            ((v) & 0xffff)
 
146
#define DDRMC_CR31_TXSNR(v)                             (((v) & 0xffff) << 16)
 
147
#define DDRMC_CR31_TXSR(v)                              ((v) & 0xffff)
 
148
#define DDRMC_CR33_EN_QK_SREF                           (1 << 16)
 
149
#define DDRMC_CR34_CKSRX(v)                             (((v) & 0xf) << 16)
 
150
#define DDRMC_CR34_CKSRE(v)                             (((v) & 0xf) << 8)
 
151
#define DDRMC_CR38_FREQ_CHG_EN                          (1 << 8)
 
152
#define DDRMC_CR39_PHY_INI_COM(v)                       (((v) & 0xffff) << 16)
 
153
#define DDRMC_CR39_PHY_INI_STA(v)                       (((v) & 0xff) << 8)
 
154
#define DDRMC_CR39_FRQ_CH_DLLOFF(v)                     ((v) & 0x3)
 
155
#define DDRMC_CR41_PHY_INI_STRT_INI_DIS                 1
 
156
#define DDRMC_CR48_MR1_DA_0(v)                          (((v) & 0xffff) << 16)
 
157
#define DDRMC_CR48_MR0_DA_0(v)                          ((v) & 0xffff)
 
158
#define DDRMC_CR66_ZQCL(v)                              (((v) & 0xfff) << 16)
 
159
#define DDRMC_CR66_ZQINIT(v)                            ((v) & 0xfff)
 
160
#define DDRMC_CR67_ZQCS(v)                              ((v) & 0xfff)
 
161
#define DDRMC_CR69_ZQ_ON_SREF_EX(v)                     (((v) & 0xf) << 8)
 
162
#define DDRMC_CR70_REF_PER_ZQ(v)                        (v)
 
163
#define DDRMC_CR72_ZQCS_ROTATE                          (1 << 24)
 
164
#define DDRMC_CR73_APREBIT(v)                           (((v) & 0xf) << 24)
 
165
#define DDRMC_CR73_COL_DIFF(v)                          (((v) & 0x7) << 16)
 
166
#define DDRMC_CR73_ROW_DIFF(v)                          (((v) & 0x3) << 8)
 
167
#define DDRMC_CR74_BANKSPLT_EN                          (1 << 24)
 
168
#define DDRMC_CR74_ADDR_CMP_EN                          (1 << 16)
 
169
#define DDRMC_CR74_CMD_AGE_CNT(v)                       (((v) & 0xff) << 8)
 
170
#define DDRMC_CR74_AGE_CNT(v)                           ((v) & 0xff)
 
171
#define DDRMC_CR75_RW_PG_EN                             (1 << 24)
 
172
#define DDRMC_CR75_RW_EN                                (1 << 16)
 
173
#define DDRMC_CR75_PRI_EN                               (1 << 8)
 
174
#define DDRMC_CR75_PLEN                                 1
 
175
#define DDRMC_CR76_NQENT_ACTDIS(v)                      (((v) & 0x7) << 24)
 
176
#define DDRMC_CR76_D_RW_G_BKCN(v)                       (((v) & 0x3) << 16)
 
177
#define DDRMC_CR76_W2R_SPLT_EN                          (1 << 8)
 
178
#define DDRMC_CR76_CS_EN                                1
 
179
#define DDRMC_CR77_CS_MAP                               (1 << 24)
 
180
#define DDRMC_CR77_DI_RD_INTLEAVE                       (1 << 8)
 
181
#define DDRMC_CR77_SWAP_EN                              1
 
182
#define DDRMC_CR78_BUR_ON_FLY_BIT(v)                    ((v) & 0xf)
 
183
#define DDRMC_CR79_CTLUPD_AREF                          (1 << 24)
 
184
#define DDRMC_CR82_INT_MASK                             0x1fffffff
 
185
#define DDRMC_CR87_ODT_WR_MAPCS0                        (1 << 24)
 
186
#define DDRMC_CR87_ODT_RD_MAPCS0                        (1 << 16)
 
187
#define DDRMC_CR88_TODTL_CMD(v)                         (((v) & 0x1f) << 16)
 
188
#define DDRMC_CR89_AODT_RWSMCS(v)                       ((v) & 0xf)
 
189
#define DDRMC_CR91_R2W_SMCSDL(v)                        (((v) & 0x7) << 16)
 
190
#define DDRMC_CR96_WLMRD(v)                             (((v) & 0x3f) << 8)
 
191
#define DDRMC_CR96_WLDQSEN(v)                           ((v) & 0x3f)
 
192
#define DDRMC_CR105_RDLVL_DL_0(v)                       (((v) & 0xff) << 8)
 
193
#define DDRMC_CR110_RDLVL_DL_1(v)                       ((v) & 0xff)
 
194
#define DDRMC_CR114_RDLVL_GTDL_2(v)                     (((v) & 0xffff) << 8)
 
195
#define DDRMC_CR117_AXI0_W_PRI(v)                       (((v) & 0x3) << 8)
 
196
#define DDRMC_CR117_AXI0_R_PRI(v)                       ((v) & 0x3)
 
197
#define DDRMC_CR118_AXI1_W_PRI(v)                       (((v) & 0x3) << 24)
 
198
#define DDRMC_CR118_AXI1_R_PRI(v)                       (((v) & 0x3) << 16)
 
199
#define DDRMC_CR120_AXI0_PRI1_RPRI(v)                   (((v) & 0xf) << 24)
 
200
#define DDRMC_CR120_AXI0_PRI0_RPRI(v)                   (((v) & 0xf) << 16)
 
201
#define DDRMC_CR121_AXI0_PRI3_RPRI(v)                   (((v) & 0xf) << 8)
 
202
#define DDRMC_CR121_AXI0_PRI2_RPRI(v)                   ((v) & 0xf)
 
203
#define DDRMC_CR122_AXI1_PRI1_RPRI(v)                   (((v) & 0xf) << 24)
 
204
#define DDRMC_CR122_AXI1_PRI0_RPRI(v)                   (((v) & 0xf) << 16)
 
205
#define DDRMC_CR122_AXI0_PRIRLX(v)                      ((v) & 0x3ff)
 
206
#define DDRMC_CR123_AXI1_PRI3_RPRI(v)                   (((v) & 0xf) << 8)
 
207
#define DDRMC_CR123_AXI1_PRI2_RPRI(v)                   ((v) & 0xf)
 
208
#define DDRMC_CR124_AXI1_PRIRLX(v)                      ((v) & 0x3ff)
 
209
#define DDRMC_CR126_PHY_RDLAT(v)                        (((v) & 0x3f) << 8)
 
210
#define DDRMC_CR132_WRLAT_ADJ(v)                        (((v) & 0x1f) << 8)
 
211
#define DDRMC_CR132_RDLAT_ADJ(v)                        ((v) & 0x3f)
 
212
#define DDRMC_CR139_PHY_WRLV_RESPLAT(v)                 (((v) & 0xff) << 24)
 
213
#define DDRMC_CR139_PHY_WRLV_LOAD(v)                    (((v) & 0xff) << 16)
 
214
#define DDRMC_CR139_PHY_WRLV_DLL(v)                     (((v) & 0xff) << 8)
 
215
#define DDRMC_CR139_PHY_WRLV_EN(v)                      ((v) & 0xff)
 
216
#define DDRMC_CR154_PAD_ZQ_EARLY_CMP_EN_TIMER(v)        (((v) & 0x1f) << 27)
 
217
#define DDRMC_CR154_PAD_ZQ_MODE(v)                      (((v) & 0x3) << 21)
 
218
#define DDRMC_CR155_AXI0_AWCACHE                        (1 << 10)
 
219
#define DDRMC_CR155_PAD_ODT_BYTE1(v)                    ((v) & 0x7)
 
220
#define DDRMC_CR158_TWR(v)                              ((v) & 0x3f)
 
221
 
 
222
#if !(defined(__KERNEL_STRICT_NAMES) || defined(__ASSEMBLY__))
 
223
#include <asm/types.h>
 
224
 
 
225
/* System Reset Controller (SRC) */
 
226
struct src {
 
227
        u32 scr;
 
228
        u32 sbmr1;
 
229
        u32 srsr;
 
230
        u32 secr;
 
231
        u32 gpsr;
 
232
        u32 sicr;
 
233
        u32 simr;
 
234
        u32 sbmr2;
 
235
        u32 gpr0;
 
236
        u32 gpr1;
 
237
        u32 gpr2;
 
238
        u32 gpr3;
 
239
        u32 gpr4;
 
240
        u32 hab0;
 
241
        u32 hab1;
 
242
        u32 hab2;
 
243
        u32 hab3;
 
244
        u32 hab4;
 
245
        u32 hab5;
 
246
        u32 misc0;
 
247
        u32 misc1;
 
248
        u32 misc2;
 
249
        u32 misc3;
 
250
};
 
251
 
 
252
/* Periodic Interrupt Timer (PIT) */
 
253
struct pit_reg {
 
254
        u32 mcr;
 
255
        u32 recv0[55];
 
256
        u32 ltmr64h;
 
257
        u32 ltmr64l;
 
258
        u32 recv1[6];
 
259
        u32 ldval0;
 
260
        u32 cval0;
 
261
        u32 tctrl0;
 
262
        u32 tflg0;
 
263
        u32 ldval1;
 
264
        u32 cval1;
 
265
        u32 tctrl1;
 
266
        u32 tflg1;
 
267
        u32 ldval2;
 
268
        u32 cval2;
 
269
        u32 tctrl2;
 
270
        u32 tflg2;
 
271
        u32 ldval3;
 
272
        u32 cval3;
 
273
        u32 tctrl3;
 
274
        u32 tflg3;
 
275
        u32 ldval4;
 
276
        u32 cval4;
 
277
        u32 tctrl4;
 
278
        u32 tflg4;
 
279
        u32 ldval5;
 
280
        u32 cval5;
 
281
        u32 tctrl5;
 
282
        u32 tflg5;
 
283
        u32 ldval6;
 
284
        u32 cval6;
 
285
        u32 tctrl6;
 
286
        u32 tflg6;
 
287
        u32 ldval7;
 
288
        u32 cval7;
 
289
        u32 tctrl7;
 
290
        u32 tflg7;
 
291
};
 
292
 
 
293
/* Watchdog Timer (WDOG) */
 
294
struct wdog_regs {
 
295
        u16 wcr;
 
296
        u16 wsr;
 
297
        u16 wrsr;
 
298
        u16 wicr;
 
299
        u16 wmcr;
 
300
};
 
301
 
 
302
/* LPDDR2/DDR3 SDRAM Memory Controller (DDRMC) */
 
303
struct ddrmr_regs {
 
304
        u32 cr[162];
 
305
        u32 rsvd[94];
 
306
        u32 phy[53];
 
307
};
 
308
 
 
309
/* On-Chip One Time Programmable Controller (OCOTP) */
 
310
struct ocotp_regs {
 
311
        u32 ctrl;
 
312
        u32 ctrl_set;
 
313
        u32 ctrl_clr;
 
314
        u32 ctrl_tog;
 
315
        u32 timing;
 
316
        u32 rsvd0[3];
 
317
        u32 data;
 
318
        u32 rsvd1[3];
 
319
        u32 read_ctrl;
 
320
        u32 rsvd2[3];
 
321
        u32 read_fuse_data;
 
322
        u32 rsvd3[7];
 
323
        u32 scs;
 
324
        u32 scs_set;
 
325
        u32 scs_clr;
 
326
        u32 scs_tog;
 
327
        u32 crc_addr;
 
328
        u32 rsvd4[3];
 
329
        u32 crc_value;
 
330
        u32 rsvd5[3];
 
331
        u32 version;
 
332
        u32 rsvd6[0xdb];
 
333
 
 
334
        struct fuse_bank {
 
335
                u32 fuse_regs[0x20];
 
336
        } bank[16];
 
337
};
 
338
 
 
339
struct fuse_bank0_regs {
 
340
        u32 lock;
 
341
        u32 rsvd0[3];
 
342
        u32 uid_low;
 
343
        u32 rsvd1[3];
 
344
        u32 uid_high;
 
345
        u32 rsvd2[0x17];
 
346
};
 
347
 
 
348
struct fuse_bank4_regs {
 
349
        u32 sjc_resp0;
 
350
        u32 rsvd0[3];
 
351
        u32 sjc_resp1;
 
352
        u32 rsvd1[3];
 
353
        u32 mac_addr0;
 
354
        u32 rsvd2[3];
 
355
        u32 mac_addr1;
 
356
        u32 rsvd3[3];
 
357
        u32 mac_addr2;
 
358
        u32 rsvd4[3];
 
359
        u32 mac_addr3;
 
360
        u32 rsvd5[3];
 
361
        u32 gp1;
 
362
        u32 rsvd6[3];
 
363
        u32 gp2;
 
364
        u32 rsvd7[3];
 
365
};
 
366
 
 
367
/* UART */
 
368
struct lpuart_fsl {
 
369
        u8 ubdh;
 
370
        u8 ubdl;
 
371
        u8 uc1;
 
372
        u8 uc2;
 
373
        u8 us1;
 
374
        u8 us2;
 
375
        u8 uc3;
 
376
        u8 ud;
 
377
        u8 uma1;
 
378
        u8 uma2;
 
379
        u8 uc4;
 
380
        u8 uc5;
 
381
        u8 ued;
 
382
        u8 umodem;
 
383
        u8 uir;
 
384
        u8 reserved;
 
385
        u8 upfifo;
 
386
        u8 ucfifo;
 
387
        u8 usfifo;
 
388
        u8 utwfifo;
 
389
        u8 utcfifo;
 
390
        u8 urwfifo;
 
391
        u8 urcfifo;
 
392
        u8 rsvd[28];
 
393
};
 
394
 
 
395
/* MSCM Interrupt Router */
 
396
struct mscm_ir {
 
397
        u32 ircp0ir;
 
398
        u32 ircp1ir;
 
399
        u32 rsvd1[6];
 
400
        u32 ircpgir;
 
401
        u32 rsvd2[23];
 
402
        u16 irsprc[112];
 
403
        u16 rsvd3[848];
 
404
};
 
405
 
 
406
#endif  /* __ASSEMBLER__*/
 
407
 
 
408
#endif  /* __ASM_ARCH_IMX_REGS_H__ */