adm5120reg.h revision 1.1.20.2 1 1.1.20.2 yamt /* $NetBSD: adm5120reg.h,v 1.1.20.2 2007/09/03 14:27:51 yamt Exp $ */
2 1.1.20.2 yamt
3 1.1.20.2 yamt /*-
4 1.1.20.2 yamt * Copyright (c) 2007 Ruslan Ermilov and Vsevolod Lobko.
5 1.1.20.2 yamt * All rights reserved.
6 1.1.20.2 yamt *
7 1.1.20.2 yamt * Redistribution and use in source and binary forms, with or
8 1.1.20.2 yamt * without modification, are permitted provided that the following
9 1.1.20.2 yamt * conditions are met:
10 1.1.20.2 yamt * 1. Redistributions of source code must retain the above copyright
11 1.1.20.2 yamt * notice, this list of conditions and the following disclaimer.
12 1.1.20.2 yamt * 2. Redistributions in binary form must reproduce the above
13 1.1.20.2 yamt * copyright notice, this list of conditions and the following
14 1.1.20.2 yamt * disclaimer in the documentation and/or other materials provided
15 1.1.20.2 yamt * with the distribution.
16 1.1.20.2 yamt * 3. The names of the authors may not be used to endorse or promote
17 1.1.20.2 yamt * products derived from this software without specific prior
18 1.1.20.2 yamt * written permission.
19 1.1.20.2 yamt *
20 1.1.20.2 yamt * THIS SOFTWARE IS PROVIDED BY THE AUTHORS ``AS IS'' AND ANY
21 1.1.20.2 yamt * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
22 1.1.20.2 yamt * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
23 1.1.20.2 yamt * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS
24 1.1.20.2 yamt * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
25 1.1.20.2 yamt * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
26 1.1.20.2 yamt * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
27 1.1.20.2 yamt * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
28 1.1.20.2 yamt * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
29 1.1.20.2 yamt * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
30 1.1.20.2 yamt * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
31 1.1.20.2 yamt * OF SUCH DAMAGE.
32 1.1.20.2 yamt */
33 1.1.20.2 yamt /*-
34 1.1.20.2 yamt * Copyright (c) 2001 The NetBSD Foundation, Inc.
35 1.1.20.2 yamt * All rights reserved.
36 1.1.20.2 yamt *
37 1.1.20.2 yamt * This code is derived from software contributed to The NetBSD Foundation
38 1.1.20.2 yamt * by Jason R. Thorpe.
39 1.1.20.2 yamt *
40 1.1.20.2 yamt * Redistribution and use in source and binary forms, with or without
41 1.1.20.2 yamt * modification, are permitted provided that the following conditions
42 1.1.20.2 yamt * are met:
43 1.1.20.2 yamt * 1. Redistributions of source code must retain the above copyright
44 1.1.20.2 yamt * notice, this list of conditions and the following disclaimer.
45 1.1.20.2 yamt * 2. Redistributions in binary form must reproduce the above copyright
46 1.1.20.2 yamt * notice, this list of conditions and the following disclaimer in the
47 1.1.20.2 yamt * documentation and/or other materials provided with the distribution.
48 1.1.20.2 yamt * 3. All advertising materials mentioning features or use of this software
49 1.1.20.2 yamt * must display the following acknowledgement:
50 1.1.20.2 yamt * This product includes software developed by the NetBSD
51 1.1.20.2 yamt * Foundation, Inc. and its contributors.
52 1.1.20.2 yamt * 4. Neither the name of The NetBSD Foundation nor the names of its
53 1.1.20.2 yamt * contributors may be used to endorse or promote products derived
54 1.1.20.2 yamt * from this software without specific prior written permission.
55 1.1.20.2 yamt *
56 1.1.20.2 yamt * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
57 1.1.20.2 yamt * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
58 1.1.20.2 yamt * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
59 1.1.20.2 yamt * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
60 1.1.20.2 yamt * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
61 1.1.20.2 yamt * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
62 1.1.20.2 yamt * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
63 1.1.20.2 yamt * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
64 1.1.20.2 yamt * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
65 1.1.20.2 yamt * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
66 1.1.20.2 yamt * POSSIBILITY OF SUCH DAMAGE.
67 1.1.20.2 yamt */
68 1.1.20.2 yamt
69 1.1.20.2 yamt #ifndef _ADM5120REG_H_
70 1.1.20.2 yamt #define _ADM5120REG_H_
71 1.1.20.2 yamt
72 1.1.20.2 yamt /*
73 1.1.20.2 yamt * Memory map and register definitions for the Alchemy Semiconductor Pb1000.
74 1.1.20.2 yamt */
75 1.1.20.2 yamt
76 1.1.20.2 yamt /* Last byte of physical address space. */
77 1.1.20.2 yamt #define ADM5120_TOP 0x1fffffff
78 1.1.20.2 yamt #define ADM5120_BOTTOM 0x0
79 1.1.20.2 yamt
80 1.1.20.2 yamt /* Flash addresses */
81 1.1.20.2 yamt #define ADM5120_BASE_SRAM0 0x1fc00000
82 1.1.20.2 yamt
83 1.1.20.2 yamt /* UARTs */
84 1.1.20.2 yamt #define ADM5120_BASE_UART1 0x12800000
85 1.1.20.2 yamt #define ADM5120_BASE_UART0 0x12600000
86 1.1.20.2 yamt
87 1.1.20.2 yamt /* ICU */
88 1.1.20.2 yamt #define ADM5120_BASE_ICU 0x12200000
89 1.1.20.2 yamt #define ICU_STATUS_REG 0x00
90 1.1.20.2 yamt #define ICU_RAW_STATUS_REG 0x04
91 1.1.20.2 yamt #define ICU_ENABLE_REG 0x08
92 1.1.20.2 yamt #define ICU_DISABLE_REG 0x0c
93 1.1.20.2 yamt #define ICU_SOFT_REG 0x10
94 1.1.20.2 yamt #define ICU_MODE_REG 0x14
95 1.1.20.2 yamt #define ICU_FIQ_STATUS_REG 0x18
96 1.1.20.2 yamt #define ICU_TESTSRC_REG 0x1c
97 1.1.20.2 yamt #define ICU_SRCSEL_REG 0x20
98 1.1.20.2 yamt #define ICU_LEVEL_REG 0x24
99 1.1.20.2 yamt #define ICU_INT_MASK 0x3ff
100 1.1.20.2 yamt
101 1.1.20.2 yamt /* Switch */
102 1.1.20.2 yamt #define ADM5120_BASE_SWITCH 0x12000000
103 1.1.20.2 yamt #define SW_CODE_REG 0x00
104 1.1.20.2 yamt #define CLKS_MASK 0x00300000
105 1.1.20.2 yamt #define CLKS_175MHZ 0x00000000
106 1.1.20.2 yamt #define CLKS_200MHZ 0x00100000
107 1.1.20.2 yamt #define SW_SFTRES_REG 0x04
108 1.1.20.2 yamt #define SW_MEMCONT_REG 0x1c
109 1.1.20.2 yamt #define SDRAM_SIZE_4MBYTES 0x0001
110 1.1.20.2 yamt #define SDRAM_SIZE_8MBYTES 0x0002
111 1.1.20.2 yamt #define SDRAM_SIZE_16MBYTES 0x0003
112 1.1.20.2 yamt #define SDRAM_SIZE_64MBYTES 0x0004
113 1.1.20.2 yamt #define SDRAM_SIZE_128MBYTES 0x0005
114 1.1.20.2 yamt #define SDRAM_SIZE_MASK 0x0007
115 1.1.20.2 yamt #define SRAM0_SIZE_SHIFT 8
116 1.1.20.2 yamt #define SRAM1_SIZE_SHIFT 16
117 1.1.20.2 yamt #define SRAM_MASK 0x0007
118 1.1.20.2 yamt #define SRAM_SSIZE 0x40000
119 1.1.20.2 yamt
120 1.1.20.2 yamt #define ADM5120_BASE_PCI_CONFDATA 0x115ffff8
121 1.1.20.2 yamt #define ADM5120_BASE_PCI_CONFADDR 0x115ffff0
122 1.1.20.2 yamt #define ADM5120_BASE_PCI_IO 0x11500000
123 1.1.20.2 yamt #define ADM5120_BASE_PCI_MEM 0x11400000
124 1.1.20.2 yamt #define ADM5120_BASE_USB 0x11200000
125 1.1.20.2 yamt #define ADM5120_BASE_MPMC 0x11000000
126 1.1.20.2 yamt #define ADM5120_BASE_EXTIO1 0x10e00000
127 1.1.20.2 yamt #define ADM5120_BASE_EXTIO0 0x10c00000
128 1.1.20.2 yamt #define ADM5120_BASE_RSVD0 0x10800000
129 1.1.20.2 yamt #define ADM5120_BASE_SRAM1 0x10000000
130 1.1.20.2 yamt
131 1.1.20.2 yamt #define _REG_READ(b, o) *((volatile uint32_t *)MIPS_PHYS_TO_KSEG1((b) + (o)))
132 1.1.20.2 yamt #define SW_READ(o) _REG_READ(ADM5120_BASE_SWITCH, o)
133 1.1.20.2 yamt
134 1.1.20.2 yamt #define _REG_WRITE(b, o, v) (_REG_READ(b, o)) = (v)
135 1.1.20.2 yamt #define SW_WRITE(o, v) _REG_WRITE(ADM5120_BASE_SWITCH,o, v)
136 1.1.20.2 yamt
137 1.1.20.2 yamt /* USB */
138 1.1.20.2 yamt
139 1.1.20.2 yamt /* Watchdog Timers: base address is switch controller */
140 1.1.20.2 yamt
141 1.1.20.2 yamt #define ADM5120_WDOG0 0x00c0
142 1.1.20.2 yamt #define ADM5120_WDOG1 0x00c4
143 1.1.20.2 yamt
144 1.1.20.2 yamt #define ADM5120_WDOG0_WTTR __BIT(31) /* 0: do not reset,
145 1.1.20.2 yamt * 1: reset on wdog expiration
146 1.1.20.2 yamt */
147 1.1.20.2 yamt #define ADM5120_WDOG1_WDE __BIT(31) /* 0: deactivate,
148 1.1.20.2 yamt * 1: drop all CPU-bound
149 1.1.20.2 yamt * packets, disable flow
150 1.1.20.2 yamt * control on all ports.
151 1.1.20.2 yamt */
152 1.1.20.2 yamt #define ADM5120_WDOG_WTS_MASK __BITS(30, 16) /* Watchdog Timer Set:
153 1.1.20.2 yamt * timer expires when it
154 1.1.20.2 yamt * reaches WTS. Units of
155 1.1.20.2 yamt * 10ms.
156 1.1.20.2 yamt */
157 1.1.20.2 yamt #define ADM5120_WDOG_RSVD __BIT(15)
158 1.1.20.2 yamt #define ADM5120_WDOG_WT_MASK __BITS(14, 0) /* Watchdog Timer:
159 1.1.20.2 yamt * counts up, write to clear.
160 1.1.20.2 yamt */
161 1.1.20.2 yamt
162 1.1.20.2 yamt /* GPIO: base address is switch controller */
163 1.1.20.2 yamt #define ADM5120_GPIO0 0x00b8
164 1.1.20.2 yamt
165 1.1.20.2 yamt #define ADM5120_GPIO0_OV __BITS(31, 24) /* rw: output value */
166 1.1.20.2 yamt #define ADM5120_GPIO0_OE __BITS(23, 16) /* rw: output enable,
167 1.1.20.2 yamt * bit[n] = 0 -> input
168 1.1.20.2 yamt * bit[n] = 1 -> output
169 1.1.20.2 yamt */
170 1.1.20.2 yamt #define ADM5120_GPIO0_IV __BITS(15, 8) /* ro: input value */
171 1.1.20.2 yamt #define ADM5120_GPIO0_RSVD __BITS(7, 0) /* rw: reserved */
172 1.1.20.2 yamt
173 1.1.20.2 yamt #define ADM5120_GPIO2 0x00bc
174 1.1.20.2 yamt #define ADM5120_GPIO2_EW __BIT(6) /* 1: enable wait state pin,
175 1.1.20.2 yamt * pin GPIO[0], for GPIO[1]
176 1.1.20.2 yamt * or GPIO[3] Chip Select:
177 1.1.20.2 yamt * memory controller waits for
178 1.1.20.2 yamt * WAIT# inactive (high).
179 1.1.20.2 yamt */
180 1.1.20.2 yamt #define ADM5120_GPIO2_CSX1 __BIT(5) /* 1: GPIO[3:4] act as
181 1.1.20.2 yamt * Chip Select for
182 1.1.20.2 yamt * External I/O 1 (CSX1)
183 1.1.20.2 yamt * and External Interrupt 1
184 1.1.20.2 yamt * (INTX1), respectively.
185 1.1.20.2 yamt * 0: CSX1/INTX1 disabled
186 1.1.20.2 yamt */
187 1.1.20.2 yamt #define ADM5120_GPIO2_CSX0 __BIT(4) /* 1: GPIO[1:2] act as
188 1.1.20.2 yamt * Chip Select for
189 1.1.20.2 yamt * External I/O 0 (CSX0)
190 1.1.20.2 yamt * and External Interrupt 0
191 1.1.20.2 yamt * (INTX0), respectively.
192 1.1.20.2 yamt * 0: CSX0/INTX0 disabled
193 1.1.20.2 yamt */
194 1.1.20.2 yamt
195 1.1.20.2 yamt /* MultiPort Memory Controller (MPMC) */
196 1.1.20.2 yamt
197 1.1.20.2 yamt #define ADM5120_MPMC_CONTROL 0x000
198 1.1.20.2 yamt #define ADM5120_MPMC_CONTROL_DWB __BIT(3) /* write 1 to
199 1.1.20.2 yamt * drain write
200 1.1.20.2 yamt * buffers. write 0
201 1.1.20.2 yamt * for normal buffer
202 1.1.20.2 yamt * operation.
203 1.1.20.2 yamt */
204 1.1.20.2 yamt #define ADM5120_MPMC_CONTROL_LPM __BIT(2) /* 1: activate low-power
205 1.1.20.2 yamt * mode. SDRAM is
206 1.1.20.2 yamt * still refreshed.
207 1.1.20.2 yamt */
208 1.1.20.2 yamt #define ADM5120_MPMC_CONTROL_AM __BIT(1) /* 1: address mirror:
209 1.1.20.2 yamt * static memory
210 1.1.20.2 yamt * chip select 0
211 1.1.20.2 yamt * is mapped to chip
212 1.1.20.2 yamt * select 1.
213 1.1.20.2 yamt */
214 1.1.20.2 yamt #define ADM5120_MPMC_CONTROL_ME __BIT(0) /* 0: disable MPMC.
215 1.1.20.2 yamt * DRAM is not
216 1.1.20.2 yamt * refreshed.
217 1.1.20.2 yamt * 1: enable MPMC.
218 1.1.20.2 yamt */
219 1.1.20.2 yamt
220 1.1.20.2 yamt #define ADM5120_MPMC_STATUS 0x004
221 1.1.20.2 yamt #define ADM5120_MPMC_STATUS_SRA __BIT(2) /* read-only
222 1.1.20.2 yamt * MPMC operating mode
223 1.1.20.2 yamt * indication,
224 1.1.20.2 yamt * 1: self-refresh
225 1.1.20.2 yamt * acknowledge
226 1.1.20.2 yamt * 0: normal mode
227 1.1.20.2 yamt */
228 1.1.20.2 yamt #define ADM5120_MPMC_STATUS_WBS __BIT(1) /* read-only
229 1.1.20.2 yamt * write-buffer status,
230 1.1.20.2 yamt * 0: buffers empty
231 1.1.20.2 yamt * 1: contain data
232 1.1.20.2 yamt */
233 1.1.20.2 yamt #define ADM5120_MPMC_STATUS_BU __BIT(0) /* read-only MPMC
234 1.1.20.2 yamt * "busy" indication,
235 1.1.20.2 yamt * 0: MPMC idle
236 1.1.20.2 yamt * 1: MPMC is performing
237 1.1.20.2 yamt * memory transactions
238 1.1.20.2 yamt */
239 1.1.20.2 yamt
240 1.1.20.2 yamt #define ADM5120_MPMC_SEW 0x080
241 1.1.20.2 yamt #define ADM5120_MPMC_SEW_RSVD __BITS(31, 10)
242 1.1.20.2 yamt #define ADM5120_MPMC_SEW_EWTO __BITS(9, 0) /* timeout access after
243 1.1.20.2 yamt * 16 * (n + 1) clock cycles
244 1.1.20.2 yamt * (XXX which clock?)
245 1.1.20.2 yamt */
246 1.1.20.2 yamt
247 1.1.20.2 yamt #define ADM5120_MPMC_SC(__i) (0x200 + 0x020 * (__i))
248 1.1.20.2 yamt #define ADM5120_MPMC_SC_RSVD0 __BITS(31, 21)
249 1.1.20.2 yamt #define ADM5120_MPMC_SC_WP __BIT(20) /* 1: write protect */
250 1.1.20.2 yamt #define ADM5120_MPMC_SC_BE __BIT(20) /* 1: enable write buffer */
251 1.1.20.2 yamt #define ADM5120_MPMC_SC_RSVD1 __BITS(18, 9)
252 1.1.20.2 yamt #define ADM5120_MPMC_SC_EW __BIT(8) /* 1: enable extended wait;
253 1.1.20.2 yamt */
254 1.1.20.2 yamt #define ADM5120_MPMC_SC_BLS __BIT(7) /* 0: byte line state pins
255 1.1.20.2 yamt * are active high on read,
256 1.1.20.2 yamt * active low on write.
257 1.1.20.2 yamt *
258 1.1.20.2 yamt * 1: byte line state pins
259 1.1.20.2 yamt * are active low on read and
260 1.1.20.2 yamt * on write.
261 1.1.20.2 yamt */
262 1.1.20.2 yamt #define ADM5120_MPMC_SC_CCP __BIT(6) /* 0: chip select is active low,
263 1.1.20.2 yamt * 1: active high
264 1.1.20.2 yamt */
265 1.1.20.2 yamt #define ADM5120_MPMC_SC_RSVD2 __BITS(5, 4)
266 1.1.20.2 yamt #define ADM5120_MPMC_SC_PM __BIT(3) /* 0: page mode disabled,
267 1.1.20.2 yamt * 1: enable asynchronous
268 1.1.20.2 yamt * page mode four
269 1.1.20.2 yamt */
270 1.1.20.2 yamt #define ADM5120_MPMC_SC_RSVD3 __BIT(2)
271 1.1.20.2 yamt #define ADM5120_MPMC_SC_MW_MASK __BITS(1, 0) /* memory width, bits */
272 1.1.20.2 yamt #define ADM5120_MPMC_SC_MW_8B __SHIFTIN(0, ADM5120_MPMC_SC_MW_MASK)
273 1.1.20.2 yamt #define ADM5120_MPMC_SC_MW_16B __SHIFTIN(1, ADM5120_MPMC_SC_MW_MASK)
274 1.1.20.2 yamt #define ADM5120_MPMC_SC_MW_32B __SHIFTIN(2, ADM5120_MPMC_SC_MW_MASK)
275 1.1.20.2 yamt #define ADM5120_MPMC_SC_MW_RSVD __SHIFTIN(3, ADM5120_MPMC_SC_MW_MASK)
276 1.1.20.2 yamt
277 1.1.20.2 yamt #define ADM5120_MPMC_SWW(__i) (0x204 + 0x020 * (__i))
278 1.1.20.2 yamt #define ADM5120_MPMC_SWW_RSVD __BITS(31, 4)
279 1.1.20.2 yamt #define ADM5120_MPMC_SWW_WWE __BITS(3, 0) /* delay (n + 1) * HCLK cycles
280 1.1.20.2 yamt * after asserting chip select
281 1.1.20.2 yamt * (CS) before asserting write
282 1.1.20.2 yamt * enable (WE)
283 1.1.20.2 yamt */
284 1.1.20.2 yamt
285 1.1.20.2 yamt #define ADM5120_MPMC_SWO(__i) (0x208 + 0x020 * (__i))
286 1.1.20.2 yamt #define ADM5120_MPMC_SWO_RSVD __BITS(31, 4)
287 1.1.20.2 yamt #define ADM5120_MPMC_SWO_WOE __BITS(3, 0) /* delay n * HCLK cycles
288 1.1.20.2 yamt * after asserting chip select
289 1.1.20.2 yamt * before asserting output
290 1.1.20.2 yamt * enable (OE)
291 1.1.20.2 yamt */
292 1.1.20.2 yamt
293 1.1.20.2 yamt #define ADM5120_MPMC_SWR(__i) (0x20c + 0x020 * (__i))
294 1.1.20.2 yamt #define ADM5120_MPMC_SWR_RSVD __BITS(31, 5)
295 1.1.20.2 yamt #define ADM5120_MPMC_SWR_NMRW __BITS(4, 0) /* read wait states for
296 1.1.20.2 yamt * either first page-mode
297 1.1.20.2 yamt * access or for non-page mode
298 1.1.20.2 yamt * read, (n + 1) * HCLK cycles
299 1.1.20.2 yamt */
300 1.1.20.2 yamt
301 1.1.20.2 yamt #define ADM5120_MPMC_SWP(__i) (0x210 + 0x020 * (__i))
302 1.1.20.2 yamt #define ADM5120_MPMC_SWP_RSVD __BITS(31, 5)
303 1.1.20.2 yamt #define ADM5120_MPMC_SWP_WPS __BITS(4, 0) /* read wait states for
304 1.1.20.2 yamt * second and subsequent
305 1.1.20.2 yamt * page-mode read,
306 1.1.20.2 yamt * (n + 1) * HCLK cycles
307 1.1.20.2 yamt */
308 1.1.20.2 yamt
309 1.1.20.2 yamt #define ADM5120_MPMC_SWWR(__i) (0x214 + 0x020 * (__i))
310 1.1.20.2 yamt #define ADM5120_MPMC_SWWR_RSVD __BITS(31, 5)
311 1.1.20.2 yamt #define ADM5120_MPMC_SWWR_WWS __BITS(4, 0) /* write wait states after
312 1.1.20.2 yamt * the first read (??),
313 1.1.20.2 yamt * (n + 2) * HCLK cycles
314 1.1.20.2 yamt */
315 1.1.20.2 yamt
316 1.1.20.2 yamt #define ADM5120_MPMC_SWT(__i) (0x218 + 0x020 * (__i))
317 1.1.20.2 yamt #define ADM5120_MPMC_SWT_RSVD __BITS(31, 4)
318 1.1.20.2 yamt #define ADM5120_MPMC_SWT_WAITTURN __BITS(3, 0) /* bus turnaround time,
319 1.1.20.2 yamt * (n + 1) * HCLK cycles
320 1.1.20.2 yamt */
321 1.1.20.2 yamt
322 1.1.20.2 yamt #endif /* _ADM5120REG_H_ */
323