xref: /netbsd-src/sys/arch/arm/imx/imx23_digctlreg.h (revision 7788a0781fe6ff2cce37368b4578a7ade0850cb1)
1 /* $Id: imx23_digctlreg.h,v 1.1 2012/11/20 19:06:13 jkunz Exp $ */
2 
3 /*
4  * Copyright (c) 2012 The NetBSD Foundation, Inc.
5  * All rights reserved.
6  *
7  * This code is derived from software contributed to The NetBSD Foundation
8  * by Petri Laakso.
9  *
10  * Redistribution and use in source and binary forms, with or without
11  * modification, are permitted provided that the following conditions
12  * are met:
13  * 1. Redistributions of source code must retain the above copyright
14  *    notice, this list of conditions and the following disclaimer.
15  * 2. Redistributions in binary form must reproduce the above copyright
16  *    notice, this list of conditions and the following disclaimer in the
17  *    documentation and/or other materials provided with the distribution.
18  *
19  * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
20  * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
21  * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
22  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
23  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
24  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
25  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
26  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
27  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
29  * POSSIBILITY OF SUCH DAMAGE.
30  */
31 
32 #ifndef _ARM_IMX_IMX23_DIGCTLREG_H_
33 #define _ARM_IMX_IMX23_DIGCTLREG_H_
34 
35 #include <sys/cdefs.h>
36 
37 #define HW_DIGCTL_BASE 0x8001C000
38 
39 /*
40  * DIGCTL Control Register.
41  */
42 #define HW_DIGCTL_CTRL		0x000
43 #define HW_DIGCTL_CTRL_SET	0x004
44 #define HW_DIGCTL_CTRL_CLR	0x008
45 #define HW_DIGCTL_CTRL_TOG	0x00C
46 
47 #define HW_DIGCTL_CTRL_RSVD3			__BIT(31)
48 #define HW_DIGCTL_CTRL_XTAL24M_GATE		__BIT(30)
49 #define HW_DIGCTL_CTRL_TRAP_IRQ			__BIT(29)
50 #define HW_DIGCTL_CTRL_RSVD2			__BITS(28, 27)
51 #define HW_DIGCTL_CTRL_CACHE_BIST_TMODE		__BIT(26)
52 #define HW_DIGCTL_CTRL_LCD_BIST_CLKEN		__BIT(25)
53 #define HW_DIGCTL_CTRL_LCD_BIST_START		__BIT(24)
54 #define HW_DIGCTL_CTRL_DCP_BIST_CLKEN		__BIT(23)
55 #define HW_DIGCTL_CTRL_DCP_BIST_START		__BIT(22)
56 #define HW_DIGCTL_CTRL_ARM_BIST_CLKEN		__BIT(21)
57 #define HW_DIGCTL_CTRL_USB_TESTMODE		__BIT(20)
58 #define HW_DIGCTL_CTRL_ANALOG_TESTMODE		__BIT(19)
59 #define HW_DIGCTL_CTRL_DIGITAL_TESTMODE		__BIT(18)
60 #define HW_DIGCTL_CTRL_ARM_BIST_START		__BIT(17)
61 #define HW_DIGCTL_CTRL_UART_LOOPBACK		__BIT(16)
62 #define HW_DIGCTL_CTRL_SAIF_LOOPBACK		__BIT(15)
63 #define HW_DIGCTL_CTRL_SAIF_CLKMUX_SEL		__BITS(14, 13)
64 #define HW_DIGCTL_CTRL_SAIF_CLKMST_SEL		__BIT(12)
65 #define HW_DIGCTL_CTRL_SAIF_ALT_BITCLK_SEL	__BIT(11)
66 #define HW_DIGCTL_CTRL_RSVD1			__BIT(10)
67 #define HW_DIGCTL_CTRL_SY_ENDIAN		__BIT(9)
68 #define HW_DIGCTL_CTRL_SY_SFTRST		__BIT(8)
69 #define HW_DIGCTL_CTRL_SY_CLKGATE		__BIT(7)
70 #define HW_DIGCTL_CTRL_USE_SERIAL_JTAG		__BIT(6)
71 #define HW_DIGCTL_CTRL_TRAP_IN_RANGE		__BIT(5)
72 #define HW_DIGCTL_CTRL_TRAP_ENABLE		__BIT(4)
73 #define HW_DIGCTL_CTRL_DEBUG_DISABLE		__BIT(3)
74 #define HW_DIGCTL_CTRL_USB_CLKGATE		__BIT(2)
75 #define HW_DIGCTL_CTRL_JTAG_SHIELD		__BIT(1)
76 #define HW_DIGCTL_CTRL_LATCH_ENTROPY		__BIT(0)
77 
78 /*
79  * DIGCTL Status Register.
80  */
81 #define HW_DIGCTL_STATUS	0x010
82 #define HW_DIGCTL_STATUS_SET	0x014
83 #define HW_DIGCTL_STATUS_CLR	0x018
84 #define HW_DIGCTL_STATUS_TOG	0x01C
85 
86 #define HW_DIGCTL_STATUS_USB_HS_PRESENT		__BIT(31)
87 #define HW_DIGCTL_STATUS_USB_OTG_PRESENT	__BIT(30)
88 #define HW_DIGCTL_STATUS_USB_HOST_PRESENT	__BIT(29)
89 #define HW_DIGCTL_STATUS_USB_DEVICE_PRESENT	__BIT(28)
90 #define HW_DIGCTL_STATUS_RSVD2			__BITS(27, 11)
91 #define HW_DIGCTL_STATUS_DCP_BIST_FAIL		__BIT(10)
92 #define HW_DIGCTL_STATUS_DCP_BIST_PASS		__BIT(9)
93 #define HW_DIGCTL_STATUS_DCP_BIST_DONE		__BIT(8)
94 #define HW_DIGCTL_STATUS_LCD_BIST_FAIL		__BIT(7)
95 #define HW_DIGCTL_STATUS_LCD_BIST_PASS		__BIT(6)
96 #define HW_DIGCTL_STATUS_LCD_BIST_DONE		__BIT(5)
97 #define HW_DIGCTL_STATUS_JTAG_IN_USE		__BIT(4)
98 #define HW_DIGCTL_STATUS_PACKAGE_TYPE		__BITS(3, 1)
99 #define HW_DIGCTL_STATUS_WRITTEN		__BIT(0)
100 
101 /*
102  * Free-Running HCLK Counter Register.
103  */
104 #define HW_DIGCTL_HCLKCOUNT	0x020
105 #define HW_DIGCTL_HCLKCOUNT_SET	0x024
106 #define HW_DIGCTL_HCLKCOUNT_CLR	0x028
107 #define HW_DIGCTL_HCLKCOUNT_TOG	0x02C
108 
109 #define HW_DIGCTL_HCLKCOUNT_COUNT	__BITS(31, 0)
110 
111 /*
112  * On-Chip RAM Control Register.
113  */
114 #define HW_DIGCTL_RAMCTRL	0x030
115 #define HW_DIGCTL_RAMCTRL_SET	0x034
116 #define HW_DIGCTL_RAMCTRL_CLR	0x038
117 #define HW_DIGCTL_RAMCTRL_TOG	0x03C
118 
119 #define HW_DIGCTL_RAMCTRL_RSVD1		__BITS(31, 12)
120 #define HW_DIGCTL_RAMCTRL_SPEED_SELECT	__BITS(11, 8)
121 #define HW_DIGCTL_RAMCTRL_RSVD0		__BITS(7, 1)
122 #define HW_DIGCTL_RAMCTRL_RAM_REPAIR_EN	__BIT(0)
123 
124 /*
125  * On-Chip RAM Repair Address Register.
126  */
127 #define HW_DIGCTL_RAMREPAIR	0x040
128 #define HW_DIGCTL_RAMREPAIR_SET	0x044
129 #define HW_DIGCTL_RAMREPAIR_CLR	0x048
130 #define HW_DIGCTL_RAMREPAIR_TOG	0x04C
131 
132 #define HW_DIGCTL_RAMREPAIR_RSVD1	__BITS(31, 16)
133 #define HW_DIGCTL_RAMREPAIR_ADDR	__BITS(15, 0)
134 
135 /*
136  * On-Chip ROM Control Register.
137  */
138 #define HW_DIGCTL_ROMCTRL	0x050
139 #define HW_DIGCTL_ROMCTRL_SET	0x054
140 #define HW_DIGCTL_ROMCTRL_CLR	0x058
141 #define HW_DIGCTL_ROMCTRL_TOG	0x05C
142 
143 #define HW_DIGCTL_ROMCTRL_RSVD0		__BITS(31, 4)
144 #define HW_DIGCTL_ROMCTRL_RD_MARGIN	__BITS(3, 0)
145 
146 /*
147  * Software Write-Once Register.
148  */
149 #define HW_DIGCTL_WRITEONCE	0x060
150 
151 #define HW_DIGCTL_WRITEONCE_BITS	__BITS(31, 0)
152 
153 /*
154  * Entropy Register.
155  */
156 #define HW_DIGCTL_ENTROPY	0x090
157 
158 #define HW_DIGCTL_ENTROPY_VALUE	__BITS(31, 0)
159 
160 /*
161  * Entropy Latched Register.
162  */
163 #define HW_DIGCTL_ENTROPY_LATCHED	0x0A0
164 
165 #define HW_DIGCTL_ENTROPY_VALUE	__BITS(31, 0)
166 
167 /*
168  * SJTAG Debug Register.
169  */
170 #define HW_DIGCTL_SJTAGDBG	0x0B0
171 #define HW_DIGCTL_SJTAGDBG_SET	0x0B4
172 #define HW_DIGCTL_SJTAGDBG_CLR	0x0B8
173 #define HW_DIGCTL_SJTAGDBG_TOG	0x0BC
174 
175 #define HW_DIGCTL_SJTAGDBG_RSVD2		__BITS(31, 27)
176 #define HW_DIGCTL_SJTAGDBG_SJTAG_STATE		__BITS(26, 16)
177 #define HW_DIGCTL_SJTAGDBG_RSVD1		__BITS(15, 11)
178 #define HW_DIGCTL_SJTAGDBG_SJTAG_TDO		__BIT(10)
179 #define HW_DIGCTL_SJTAGDBG_SJTAG_TDI		__BIT(9)
180 #define HW_DIGCTL_SJTAGDBG_SJTAG_MODE		__BIT(8)
181 #define HW_DIGCTL_SJTAGDBG_DELAYED_ACTIVE	__BITS(7, 4)
182 #define HW_DIGCTL_SJTAGDBG_ACTIVE		__BIT(3)
183 #define HW_DIGCTL_SJTAGDBG_SJTAG_PIN_STATE	__BIT(2)
184 #define HW_DIGCTL_SJTAGDBG_SJTAG_DEBUG_DATA	__BIT(1)
185 #define HW_DIGCTL_SJTAGDBG_SJTAG_DEBUG_OE	__BIT(0)
186 
187 /*
188  * Digital Control Microseconds Counter Register.
189  */
190 #define HW_DIGCTL_MICROSECONDS		0x0C0
191 #define HW_DIGCTL_MICROSECONDS_SET	0x0C4
192 #define HW_DIGCTL_MICROSECONDS_CLR	0x0C8
193 #define HW_DIGCTL_MICROSECONDS_TOG	0x0CC
194 
195 #define HW_DIGCTL_MICROSECONDS_VALUE	__BITS(31, 0)
196 
197 /*
198  * Digital Control Debug Read Test Register.
199  */
200 #define HW_DIGCTL_DBGRD	0x0D0
201 
202 #define HW_DIGCTL_DBGRD_COMPLEMENT	__BITS(31, 0)
203 
204 /*
205  * Digital Control Debug Register.
206  */
207 #define HW_DIGCTL_DBG	0x0E0
208 
209 #define HW_DIGCTL_DBG_VALUE	__BITS(31, 0)
210 
211 /*
212  * SRAM BIST Control and Status Register.
213  */
214 #define HW_DIGCTL_OCRAM_BIST_CSR	0x0F0
215 #define HW_DIGCTL_OCRAM_BIST_CSR_SET	0x0F4
216 #define HW_DIGCTL_OCRAM_BIST_CSR_CLR	0x0F8
217 #define HW_DIGCTL_OCRAM_BIST_CSR_TOG	0x0FC
218 
219 #define HW_DIGCTL_OCRAM_BIST_CSR_RSVD1			__BITS(31, 11)
220 #define HW_DIGCTL_OCRAM_BIST_CSR_BIST_DEBUG_MODE	__BIT(10)
221 #define HW_DIGCTL_OCRAM_BIST_CSR_BIST_DATA_CHANGE	__BIT(9)
222 #define HW_DIGCTL_OCRAM_BIST_CSR_BIST_CLKEN		__BIT(8)
223 #define HW_DIGCTL_OCRAM_BIST_CSR_RSVD0			__BITS(7, 4)
224 #define HW_DIGCTL_OCRAM_BIST_CSR_FAIL			__BIT(3)
225 #define HW_DIGCTL_OCRAM_BIST_CSR_PASS			__BIT(2)
226 #define HW_DIGCTL_OCRAM_BIST_CSR_DONE			__BIT(1)
227 #define HW_DIGCTL_OCRAM_BIST_CSR_START			__BIT(0)
228 
229 /*
230  * SRAM Status Register 0.
231  */
232 #define HW_DIGCTL_OCRAM_STATUS0		0x110
233 #define HW_DIGCTL_OCRAM_STATUS0_SET	0x114
234 #define HW_DIGCTL_OCRAM_STATUS0_CLR	0x118
235 #define HW_DIGCTL_OCRAM_STATUS0_TOG	0x11C
236 
237 #define HW_DIGCTL_OCRAM_STATUS0_FAILDATA00	__BITS(31, 0)
238 
239 /*
240  * SRAM Status Register 1.
241  */
242 #define HW_DIGCTL_OCRAM_STATUS1		0x120
243 #define HW_DIGCTL_OCRAM_STATUS1_SET	0x124
244 #define HW_DIGCTL_OCRAM_STATUS1_CLR	0x128
245 #define HW_DIGCTL_OCRAM_STATUS1_TOG	0x12C
246 
247 #define HW_DIGCTL_OCRAM_STATUS1_FAILDATA01	__BITS(31, 0)
248 
249 /*
250  * SRAM Status Register 2.
251  */
252 #define HW_DIGCTL_OCRAM_STATUS2		0x130
253 #define HW_DIGCTL_OCRAM_STATUS2_SET	0x134
254 #define HW_DIGCTL_OCRAM_STATUS2_CLR	0x138
255 #define HW_DIGCTL_OCRAM_STATUS2_TOG	0x13C
256 
257 #define HW_DIGCTL_OCRAM_STATUS2_FAILDATA10	__BITS(31, 0)
258 
259 /*
260  * SRAM Status Register 3.
261  */
262 #define HW_DIGCTL_OCRAM_STATUS3		0x140
263 #define HW_DIGCTL_OCRAM_STATUS3_SET	0x144
264 #define HW_DIGCTL_OCRAM_STATUS3_CLR	0x148
265 #define HW_DIGCTL_OCRAM_STATUS3_TOG	0x14C
266 
267 #define HW_DIGCTL_OCRAM_STATUS3_FAILDATA20	__BITS(31, 0)
268 
269 /*
270  * SRAM Status Register 4.
271  */
272 #define HW_DIGCTL_OCRAM_STATUS4		0x150
273 #define HW_DIGCTL_OCRAM_STATUS4_SET	0x154
274 #define HW_DIGCTL_OCRAM_STATUS4_CLR	0x158
275 #define HW_DIGCTL_OCRAM_STATUS4_TOG	0x15C
276 
277 #define HW_DIGCTL_OCRAM_STATUS4_FAILDATA20	__BITS(31, 0)
278 
279 /*
280  * SRAM Status Register 5.
281  */
282 #define HW_DIGCTL_OCRAM_STATUS5		0x160
283 #define HW_DIGCTL_OCRAM_STATUS5_SET	0x164
284 #define HW_DIGCTL_OCRAM_STATUS5_CLR	0x168
285 #define HW_DIGCTL_OCRAM_STATUS5_TOG	0x16C
286 
287 #define HW_DIGCTL_OCRAM_STATUS5_FAILDATA21	__BITS(31, 0)
288 
289 /*
290  * SRAM Status Register 6.
291  */
292 #define HW_DIGCTL_OCRAM_STATUS6		0x170
293 #define HW_DIGCTL_OCRAM_STATUS6_SET	0x174
294 #define HW_DIGCTL_OCRAM_STATUS6_CLR	0x178
295 #define HW_DIGCTL_OCRAM_STATUS6_TOG	0x17C
296 
297 #define HW_DIGCTL_OCRAM_STATUS6_FAILDATA30	__BITS(31, 0)
298 
299 /*
300  * SRAM Status Register 7.
301  */
302 #define HW_DIGCTL_OCRAM_STATUS7		0x180
303 #define HW_DIGCTL_OCRAM_STATUS7_SET	0x184
304 #define HW_DIGCTL_OCRAM_STATUS7_CLR	0x188
305 #define HW_DIGCTL_OCRAM_STATUS7_TOG	0x18C
306 
307 #define HW_DIGCTL_OCRAM_STATUS7_FAILDATA31	__BITS(31, 0)
308 
309 /*
310  * SRAM Status Register 8.
311  */
312 #define HW_DIGCTL_OCRAM_STATUS8		0x190
313 #define HW_DIGCTL_OCRAM_STATUS8_SET	0x194
314 #define HW_DIGCTL_OCRAM_STATUS8_CLR	0x198
315 #define HW_DIGCTL_OCRAM_STATUS8_TOG	0x19C
316 
317 #define HW_DIGCTL_OCRAM_STATUS8_RSVD3		__BITS(31, 29)
318 #define HW_DIGCTL_OCRAM_STATUS8_FAILADDR01	__BITS(28, 16)
319 #define HW_DIGCTL_OCRAM_STATUS8_RSVD2		__BITS(15, 13)
320 #define HW_DIGCTL_OCRAM_STATUS8_FAILADDR00	__BITS(12, 0)
321 
322 /*
323  * SRAM Status Register 9.
324  */
325 #define HW_DIGCTL_OCRAM_STATUS9		0x1A0
326 #define HW_DIGCTL_OCRAM_STATUS9_SET	0x1A4
327 #define HW_DIGCTL_OCRAM_STATUS9_CLR	0x1A8
328 #define HW_DIGCTL_OCRAM_STATUS9_TOG	0x1AC
329 
330 #define HW_DIGCTL_OCRAM_STATUS9_RSVD3		__BITS(31, 29)
331 #define HW_DIGCTL_OCRAM_STATUS9_FAILADDR11	__BITS(28, 16)
332 #define HW_DIGCTL_OCRAM_STATUS9_RSVD2		__BITS(15, 13)
333 #define HW_DIGCTL_OCRAM_STATUS9_FAILADDR10	__BITS(12, 0)
334 
335 /*
336  * SRAM Status Register 10.
337  */
338 #define HW_DIGCTL_OCRAM_STATUS10	0x1B0
339 #define HW_DIGCTL_OCRAM_STATUS10_SET	0x1B4
340 #define HW_DIGCTL_OCRAM_STATUS10_CLR	0x1B8
341 #define HW_DIGCTL_OCRAM_STATUS10_TOG	0x1BC
342 
343 #define HW_DIGCTL_OCRAM_STATUS10_RSVD3		__BITS(31, 29)
344 #define HW_DIGCTL_OCRAM_STATUS10_FAILADDR21	__BITS(28, 16)
345 #define HW_DIGCTL_OCRAM_STATUS10_RSVD2		__BITS(15, 13)
346 #define HW_DIGCTL_OCRAM_STATUS10_FAILADDR20	__BITS(12, 0)
347 
348 /*
349  * SRAM Status Register 11.
350  */
351 #define HW_DIGCTL_OCRAM_STATUS11	0x1C0
352 #define HW_DIGCTL_OCRAM_STATUS11_SET	0x1C4
353 #define HW_DIGCTL_OCRAM_STATUS11_CLR	0x1C8
354 #define HW_DIGCTL_OCRAM_STATUS11_TOG	0x1CC
355 
356 #define HW_DIGCTL_OCRAM_STATUS11_RSVD3		__BITS(31, 29)
357 #define HW_DIGCTL_OCRAM_STATUS11_FAILADDR31	__BITS(28, 16)
358 #define HW_DIGCTL_OCRAM_STATUS11_RSVD2		__BITS(15, 13)
359 #define HW_DIGCTL_OCRAM_STATUS11_FAILADDR30	__BITS(12, 0)
360 
361 /*
362  * SRAM Status Register 12.
363  */
364 #define HW_DIGCTL_OCRAM_STATUS12	0x1D0
365 #define HW_DIGCTL_OCRAM_STATUS12_SET	0x1D4
366 #define HW_DIGCTL_OCRAM_STATUS12_CLR	0x1D8
367 #define HW_DIGCTL_OCRAM_STATUS12_TOG	0x1DC
368 
369 #define HW_DIGCTL_OCRAM_STATUS12_RSVD3		__BITS(31, 28)
370 #define HW_DIGCTL_OCRAM_STATUS12_FAILSTATE11	__BITS(27, 24)
371 #define HW_DIGCTL_OCRAM_STATUS12_RSVD2		__BITS(23, 20)
372 #define HW_DIGCTL_OCRAM_STATUS12_FAILSTATE10	__BITS(19, 16)
373 #define HW_DIGCTL_OCRAM_STATUS12_RSVD1		__BITS(15, 12)
374 #define HW_DIGCTL_OCRAM_STATUS12_FAILSTATE01	__BITS(11, 8)
375 #define HW_DIGCTL_OCRAM_STATUS12_RSVD0		__BITS(7, 4)
376 #define HW_DIGCTL_OCRAM_STATUS12_FAILSTATE00	__BITS(3, 0)
377 
378 /*
379  * SRAM Status Register 13.
380  */
381 #define HW_DIGCTL_OCRAM_STATUS13	0x1E0
382 #define HW_DIGCTL_OCRAM_STATUS13_SET	0x1E4
383 #define HW_DIGCTL_OCRAM_STATUS13_CLR	0x1E8
384 #define HW_DIGCTL_OCRAM_STATUS13_TOG	0x1EC
385 
386 #define HW_DIGCTL_OCRAM_STATUS13_RSVD3		__BITS(31, 28)
387 #define HW_DIGCTL_OCRAM_STATUS13_FAILSTATE31	__BITS(27, 24)
388 #define HW_DIGCTL_OCRAM_STATUS13_RSVD2		__BITS(23, 20)
389 #define HW_DIGCTL_OCRAM_STATUS13_FAILSTATE30	__BITS(19, 16)
390 #define HW_DIGCTL_OCRAM_STATUS13_RSVD1		__BITS(15, 12)
391 #define HW_DIGCTL_OCRAM_STATUS13_FAILSTATE21	__BITS(11, 8)
392 #define HW_DIGCTL_OCRAM_STATUS13_RSVD0		__BITS(7, 4)
393 #define HW_DIGCTL_OCRAM_STATUS13_FAILSTATE20	__BITS(3, 0)
394 
395 /*
396  * Digital Control Scratch Register 0.
397  */
398 #define HW_DIGCTL_SCRATCH0	0x290
399 
400 #define HW_DIGCTL_SCRATCH0_PTR	__BITS(31, 0)
401 
402 /*
403  * Digital Control Scratch Register 1.
404  */
405 #define HW_DIGCTL_SCRATCH1	0x2A0
406 
407 #define HW_DIGCTL_SCRATCH1_PTR	__BITS(31, 0)
408 
409 /*
410  * Digital Control ARM Cache Register.
411  */
412 #define HW_DIGCTL_ARMCACHE	0x2B0
413 
414 #define HW_DIGCTL_ARMCACHE_RSVD4	__BITS(31, 18)
415 #define HW_DIGCTL_ARMCACHE_VALID_SS	__BITS(17, 16)
416 #define HW_DIGCTL_ARMCACHE_RSVD3	__BITS(15, 14)
417 #define HW_DIGCTL_ARMCACHE_DRTY_SS	__BITS(13, 12)
418 #define HW_DIGCTL_ARMCACHE_RSVD2	__BITS(11, 10)
419 #define HW_DIGCTL_ARMCACHE_CACHE_SS	__BITS(9, 8)
420 #define HW_DIGCTL_ARMCACHE_RSVD1	__BITS(7, 6)
421 #define HW_DIGCTL_ARMCACHE_DTAG_SS	__BITS(5, 4)
422 #define HW_DIGCTL_ARMCACHE_RSVD0	__BITS(3, 2)
423 #define HW_DIGCTL_ARMCACHE_ITAG_SS	__BITS(1, 0)
424 
425 /*
426  * Debug Trap Range Low Address.
427  */
428 #define HW_DIGCTL_DEBUG_TRAP_ADDR_LOW	0x2C0
429 
430 #define HW_DIGCTL_DEBUG_TRAP_ADDR_LOW_ADDR	__BITS(31, 0)
431 
432 /*
433  * Debug Trap Range High Address.
434  */
435 #define HW_DIGCTL_DEBUG_TRAP_ADDR_HIGH	0x2D0
436 
437 #define HW_DIGCTL_DEBUG_TRAP_ADDR_HIGH_ADDR	__BITS(31, 0)
438 
439 /*
440  * Freescale Copyright Identifier Register.
441  */
442 #define HW_DIGCTL_SGTL	0x300
443 
444 #define HW_DIGCTL_SGTL_COPYRIGHT	__BITS(31, 0)
445 
446 /*
447  * Digital Control Chip Revision Register.
448  */
449 #define HW_DIGCTL_CHIPID	0x310
450 
451 #define HW_DIGCTL_CHIPID_PRODUCT_CODE	__BITS(31, 16)
452 #define HW_DIGCTL_CHIPID_RSVD0		__BITS(16, 8)
453 #define HW_DIGCTL_CHIPID_REVISION	__BITS(7, 0)
454 
455 /*
456  * AHB Statistics Control Register.
457  */
458 #define HW_DIGCTL_AHB_STATS_SELECT	0x330
459 
460 #define HW_DIGCTL_AHB_STATS_SELECT_RSVD3		__BITS(31, 28)
461 #define HW_DIGCTL_AHB_STATS_SELECT_L3_MASTER_SELECT	__BITS(27, 24)
462 #define HW_DIGCTL_AHB_STATS_SELECT_RSVD2		__BITS(23, 20)
463 #define HW_DIGCTL_AHB_STATS_SELECT_L2_MASTER_SELECT	__BITS(19, 16)
464 #define HW_DIGCTL_AHB_STATS_SELECT_RSVD1		__BITS(15, 12)
465 #define HW_DIGCTL_AHB_STATS_SELECT_L1_MASTER_SELECT	__BITS(11, 8)
466 #define HW_DIGCTL_AHB_STATS_SELECT_RSVD0		__BITS(7, 4)
467 #define HW_DIGCTL_AHB_STATS_SELECT_L0_MASTER_SELECT	__BITS(3, 0)
468 
469 /*
470  * AHB Layer 0 Transfer Count Register.
471  */
472 #define HW_DIGCTL_L0_AHB_ACTIVE_CYCLES	0x340
473 
474 #define HW_DIGCTL_L0_AHB_ACTIVE_CYCLES_COUNT	__BITS(31, 0)
475 
476 /*
477  * AHB Layer 0 Performance Metric for Stalled Bus Cycles Register.
478  */
479 #define HW_DIGCTL_L0_AHB_DATA_STALLED	0x350
480 
481 #define HW_DIGCTL_L0_AHB_DATA_STALLED_COUNT	__BITS(31, 0)
482 
483 /*
484  * AHB Layer 0 Performance Metric for Valid Bus Cycles Register.
485  */
486 #define HW_DIGCTL_L0_AHB_DATA_CYCLES	0x360
487 
488 #define HW_DIGCTL_L0_AHB_DATA_CYCLES_COUNT	__BITS(31, 0)
489 
490 /*
491  * AHB Layer 1 Transfer Count Register.
492  */
493 #define HW_DIGCTL_L1_AHB_ACTIVE_CYCLES	0x370
494 
495 #define HW_DIGCTL_L1_AHB_ACTIVE_CYCLES_COUNT	__BITS(31, 0)
496 
497 /*
498  * AHB Layer 1 Performance Metric for Stalled Bus Cycles Register.
499  */
500 #define HW_DIGCTL_L1_AHB_DATA_STALLED	0x380
501 
502 #define HW_DIGCTL_L1_AHB_DATA_STALLED_COUNT	__BITS(31, 0)
503 
504 /*
505  * AHB Layer 1 Performance Metric for Stalled Bus Cycles Register.
506  */
507 #define HW_DIGCTL_L1_AHB_DATA_STALLED	0x380
508 
509 #define HW_DIGCTL_L1_AHB_DATA_STALLED_COUNT	__BITS(31, 0)
510 
511 /*
512  * AHB Layer 1 Performance Metric for Valid Bus Cycles Register.
513  */
514 #define HW_DIGCTL_L1_AHB_DATA_CYCLES	0x390
515 
516 #define HW_DIGCTL_L1_AHB_DATA_CYCLES_COUNT	__BITS(31, 0)
517 
518 /*
519  * AHB Layer 2 Transfer Count Register.
520  */
521 #define HW_DIGCTL_L2_AHB_ACTIVE_CYCLES	0x3A0
522 
523 #define HW_DIGCTL_L2_AHB_ACTIVE_CYCLES_COUNT	__BITS(31, 0)
524 
525 /*
526  * AHB Layer 2 Performance Metric for Stalled Bus Cycles Register.
527  */
528 #define HW_DIGCTL_L2_AHB_DATA_STALLED	0x3B0
529 
530 #define HW_DIGCTL_L2_AHB_DATA_STALLED_COUNT	__BITS(31, 0)
531 
532 /*
533  * AHB Layer 2 Performance Metric for Valid Bus Cycles Register.
534  */
535 #define HW_DIGCTL_L2_AHB_DATA_CYCLES	0x3C0
536 
537 #define HW_DIGCTL_L2_AHB_DATA_CYCLES_COUNT	__BITS(31, 0)
538 
539 /*
540  * AHB Layer 3 Transfer Count Register.
541  */
542 #define HW_DIGCTL_L3_AHB_ACTIVE_CYCLES	0x3D0
543 
544 #define HW_DIGCTL_L3_AHB_ACTIVE_CYCLES_COUNT	__BITS(31, 0)
545 
546 /*
547  * AHB Layer 3 Performance Metric for Stalled Bus Cycles Register.
548  */
549 #define HW_DIGCTL_L3_AHB_DATA_STALLED	0x3E0
550 
551 #define HW_DIGCTL_L3_AHB_DATA_STALLED_COUNT	__BITS(31, 0)
552 
553 /*
554  * AHB Layer 3 Performance Metric for Valid Bus Cycles Register.
555  */
556 #define HW_DIGCTL_L3_AHB_DATA_CYCLES	0x3F0
557 
558 #define HW_DIGCTL_L3_AHB_DATA_CYCLES_COUNT	__BITS(31, 0)
559 
560 /*
561  * EMI CLK/CLKN Delay Adjustment Register.
562  */
563 #define HW_DIGCTL_EMICLK_DELAY	0x500
564 
565 #define HW_DIGCTL_EMICLK_DELAY_RSVD0	__BITS(31, 5)
566 #define HW_DIGCTL_EMICLK_DELAY_NUM_TAPS	__BITS(4, 0)
567 
568 #endif /* !_ARM_IMX_IMX23_DIGCTLREG_H_ */
569