Fix typo.
[Rockbox.git] / firmware / export / dm320.h
blob0c84444a6607752fdbd9e7533fc8d5d5221ee9ba
1 /***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 * $Id$
10 * Copyright (C) 2007 by Karl Kurbjun
12 * All files in this archive are subject to the GNU General Public License.
13 * See the file COPYING in the source tree root for full license agreement.
15 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
16 * KIND, either express or implied.
18 ****************************************************************************/
20 /** All register offset definitions for the TI DM320
21 * Taken from: http://svn.neurostechnology.com/filedetails.php?repname=neuros-bsp&path=%2Ftrunk%2Fkernels%2Flinux-2.6.15%2Finclude%2Fasm-arm%2Farch-ntosd-dm320%2Fio_registers.h&rev=0&sc=0
24 #ifndef __DM320_H__
25 #define __DM320_H__
27 #define LCD_BUFFER_SIZE (640*480*4)
28 #define FRAME ((short *) (0x4900000-LCD_BUFFER_SIZE)) /* Put the buffer at the end of mem */
30 #define PHY_IO_BASE 0x00030000
31 #define DM320_REG(addr) (*(volatile unsigned short *)(PHY_IO_BASE + (addr)))
33 /* Timer 0-3 */
34 #define IO_TIMER0_TMMD DM320_REG(0x0000)
35 #define IO_TIMER0_TMRSV0 DM320_REG(0x0002)
36 #define IO_TIMER0_TMPRSCL DM320_REG(0x0004)
37 #define IO_TIMER0_TMDIV DM320_REG(0x0006)
38 #define IO_TIMER0_TMTRG DM320_REG(0x0008)
39 #define IO_TIMER0_TMCNT DM320_REG(0x000A)
41 #define IO_TIMER1_TMMD DM320_REG(0x0080)
42 #define IO_TIMER1_TMRSV0 DM320_REG(0x0082)
43 #define IO_TIMER1_TMPRSCL DM320_REG(0x0084)
44 #define IO_TIMER1_TMDIV DM320_REG(0x0086)
45 #define IO_TIMER1_TMTRG DM320_REG(0x0088)
46 #define IO_TIMER1_TMCNT DM320_REG(0x008A)
48 #define IO_TIMER2_TMMD DM320_REG(0x0100)
49 #define IO_TIMER2_TMVDCLR DM320_REG(0x0102)
50 #define IO_TIMER2_TMPRSCL DM320_REG(0x0104)
51 #define IO_TIMER2_TMDIV DM320_REG(0x0106)
52 #define IO_TIMER2_TMTRG DM320_REG(0x0108)
53 #define IO_TIMER2_TMCNT DM320_REG(0x010A)
55 #define IO_TIMER3_TMMD DM320_REG(0x0180)
56 #define IO_TIMER3_TMVDCLR DM320_REG(0x0182)
57 #define IO_TIMER3_TMPRSCL DM320_REG(0x0184)
58 #define IO_TIMER3_TMDIV DM320_REG(0x0186)
59 #define IO_TIMER3_TMTRG DM320_REG(0x0188)
60 #define IO_TIMER3_TMCNT DM320_REG(0x018A)
62 /* Serial 0/1 */
63 #define IO_SERIAL0_TX_DATA DM320_REG(0x0200)
64 #define IO_SERIAL0_RX_DATA DM320_REG(0x0202)
65 #define IO_SERIAL0_TX_ENABLE DM320_REG(0x0204)
66 #define IO_SERIAL0_MODE DM320_REG(0x0206)
67 #define IO_SERIAL0_DMA_TRIGGER DM320_REG(0x0208)
68 #define IO_SERIAL0_DMA_MODE DM320_REG(0x020A)
69 #define IO_SERIAL0_DMA_SDRAM_LOW DM320_REG(0x020C)
70 #define IO_SERIAL0_DMA_SDRAM_HI DM320_REG(0x020E)
71 #define IO_SERIAL0_DMA_STATUS DM320_REG(0x0210)
73 #define IO_SERIAL1_TX_DATA DM320_REG(0x0280)
74 #define IO_SERIAL1_RX_DATA DM320_REG(0x0282)
75 #define IO_SERIAL1_TX_ENABLE DM320_REG(0x0284)
76 #define IO_SERIAL1_MODE DM320_REG(0x0286)
78 /* UART 0/1 */
79 #define IO_UART0_DTRR DM320_REG(0x0300)
80 #define IO_UART0_BRSR DM320_REG(0x0302)
81 #define IO_UART0_MSR DM320_REG(0x0304)
82 #define IO_UART0_RFCR DM320_REG(0x0306)
83 #define IO_UART0_TFCR DM320_REG(0x0308)
84 #define IO_UART0_LCR DM320_REG(0x030A)
85 #define IO_UART0_SR DM320_REG(0x030C)
87 #define IO_UART1_DTRR DM320_REG(0x0380)
88 #define IO_UART1_BRSR DM320_REG(0x0382)
89 #define IO_UART1_MSR DM320_REG(0x0384)
90 #define IO_UART1_RFCR DM320_REG(0x0386)
91 #define IO_UART1_TFCR DM320_REG(0x0388)
92 #define IO_UART1_LCR DM320_REG(0x038A)
93 #define IO_UART1_SR DM320_REG(0x038C)
95 /* Watchdog Timer */
96 #define IO_WATCHDOG_MODE 0x0400
97 #define IO_WATCHDOG_RESET 0x0402
98 #define IO_WATCHDOG_PRESCALAR 0x0404
99 #define IO_WATCHDOG_DIVISOR 0x0406
100 #define IO_WATCHDOG_EXT_RESET 0x0408
102 /* MMC/SD Controller */
103 #define IO_MMC_CONTROL 0x0480
104 #define IO_MMC_MEM_CLK_CONTROL 0x0482
105 #define IO_MMC_STATUS0 0x0484
106 #define IO_MMC_STATUS1 0x0486
107 #define IO_MMC_INT_ENABLE 0x0488
108 #define IO_MMC_RESPONSE_TIMEOUT 0x048A
109 #define IO_MMC_READ_TIMEOUT 0x048C
110 #define IO_MMC_BLOCK_LENGTH 0x048E
111 #define IO_MMC_NR_BLOCKS 0x0490
112 #define IO_MMC_NR_BLOCKS_COUNT 0x0492
113 #define IO_MMC_RX_DATA 0x0494
114 #define IO_MMC_TX_DATA 0x0496
115 #define IO_MMC_COMMAND 0x0498
116 #define IO_MMC_ARG_LOW 0x049A
117 #define IO_MMC_ARG_HI 0x049C
118 #define IO_MMC_RESPONSE0 0x049E
119 #define IO_MMC_RESPONSE1 0x04A0
120 #define IO_MMC_RESPONSE2 0x04A2
121 #define IO_MMC_RESPONSE3 0x04A4
122 #define IO_MMC_RESPONSE4 0x04A6
123 #define IO_MMC_RESPONSE5 0x04A8
124 #define IO_MMC_RESPONSE6 0x04AA
125 #define IO_MMC_RESPONSE7 0x04AC
126 #define IO_MMC_SPI_DATA 0x04AE
127 #define IO_MMC_SPI_ERR 0x04B0
128 #define IO_MMC_COMMAND_INDEX 0x04B2
129 #define IO_MMC_CLK_START_PHASE 0x04B4
130 #define IO_MMC_RESPONSE_TOUT_CNT 0x04B6
131 #define IO_MMC_READ_TOUT_CNT 0x04B8
132 #define IO_MMC_BLOCK_LENGTH_CNT 0x04BA
134 #define IO_MMC_SD_DMA_TRIGGER 0x04BC
135 #define IO_MMC_SD_DMA_MODE 0x04BE
136 #define IO_MMC_SD_DMA_ADDR_LOW 0x04C0
137 #define IO_MMC_SD_DMA_ADDR_HI 0x04C2
138 #define IO_MMC_SD_DMA_STATUS0 0x04C4
139 #define IO_MMC_SD_DMA_STATUS1 0x04C6
140 #define IO_MMC_SD_DMA_TIMEOUT 0x04C8
142 #define IO_SDIO_CONTROL 0x04CA
143 #define IO_SDIO_STATUS0 0x04CC
144 #define IO_SDIO_INT_ENABLE 0x04CE
145 #define IO_SDIO_INT_STATUS 0x04D0
147 /* Interrupt Controller */
148 #define IO_INTC_FIQ0 DM320_REG(0x0500)
149 #define IO_INTC_FIQ1 DM320_REG(0x0502)
150 #define IO_INTC_FIQ2 DM320_REG(0x0504)
151 #define IO_INTC_IRQ0 DM320_REG(0x0508)
152 #define IO_INTC_IRQ1 DM320_REG(0x050A)
153 #define IO_INTC_IRQ2 DM320_REG(0x050C)
154 #define IO_INTC_FIQENTRY0 DM320_REG(0x0510)
155 #define IO_INTC_FIQENTRY1 DM320_REG(0x0512)
156 #define IO_INTC_FIQ_LOCK_ADDR0 DM320_REG(0x0514)
157 #define IO_INTC_FIQ_LOCK_ADDR1 DM320_REG(0x0516)
158 #define IO_INTC_IRQENTRY0 DM320_REG(0x0518)
159 #define IO_INTC_IRQENTRY1 DM320_REG(0x051A)
160 #define IO_INTC_IRQ_LOCK_ADDR0 DM320_REG(0x051C)
161 #define IO_INTC_IRQ_LOCK_ADDR1 DM320_REG(0x051E)
162 #define IO_INTC_FISEL0 DM320_REG(0x0520)
163 #define IO_INTC_FISEL1 DM320_REG(0x0522)
164 #define IO_INTC_FISEL2 DM320_REG(0x0524)
165 #define IO_INTC_EINT0 DM320_REG(0x0528)
166 #define IO_INTC_EINT1 DM320_REG(0x052A)
167 #define IO_INTC_EINT2 DM320_REG(0x052C)
168 #define IO_INTC_RAW DM320_REG(0x0530)
169 #define IO_INTC_ENTRY_TBA0 DM320_REG(0x0538)
170 #define IO_INTC_ENTRY_TBA1 DM320_REG(0x053A)
171 #define IO_INTC_PRIORITY0 DM320_REG(0x0540)
172 #define IO_INTC_PRIORITY1 DM320_REG(0x0542)
173 #define IO_INTC_PRIORITY2 DM320_REG(0x0544)
174 #define IO_INTC_PRIORITY3 DM320_REG(0x0546)
175 #define IO_INTC_PRIORITY4 DM320_REG(0x0548)
176 #define IO_INTC_PRIORITY5 DM320_REG(0x054A)
177 #define IO_INTC_PRIORITY6 DM320_REG(0x054C)
178 #define IO_INTC_PRIORITY7 DM320_REG(0x054E)
179 #define IO_INTC_PRIORITY8 DM320_REG(0x0550)
180 #define IO_INTC_PRIORITY9 DM320_REG(0x0552)
181 #define IO_INTC_PRIORITY10 DM320_REG(0x0554)
182 #define IO_INTC_PRIORITY11 DM320_REG(0x0556)
183 #define IO_INTC_PRIORITY12 DM320_REG(0x0558)
184 #define IO_INTC_PRIORITY13 DM320_REG(0x055A)
185 #define IO_INTC_PRIORITY14 DM320_REG(0x055C)
186 #define IO_INTC_PRIORITY15 DM320_REG(0x055E)
187 #define IO_INTC_PRIORITY16 DM320_REG(0x0560)
188 #define IO_INTC_PRIORITY17 DM320_REG(0x0562)
189 #define IO_INTC_PRIORITY18 DM320_REG(0x0564)
190 #define IO_INTC_PRIORITY19 DM320_REG(0x0566)
191 #define IO_INTC_PRIORITY20 DM320_REG(0x0568)
192 #define IO_INTC_PRIORITY21 DM320_REG(0x056A)
193 #define IO_INTC_PRIORITY22 DM320_REG(0x056C)
195 /* GIO Controller */
196 #define IO_GIO_DIR0 DM320_REG(0x0580)
197 #define IO_GIO_DIR1 DM320_REG(0x0582)
198 #define IO_GIO_DIR2 DM320_REG(0x0584)
199 #define IO_GIO_INV0 DM320_REG(0x0586)
200 #define IO_GIO_INV1 DM320_REG(0x0588)
201 #define IO_GIO_INV2 DM320_REG(0x058A)
202 #define IO_GIO_BITSET0 DM320_REG(0x058C)
203 #define IO_GIO_BITSET1 DM320_REG(0x058E)
204 #define IO_GIO_BITSET2 DM320_REG(0x0590)
205 #define IO_GIO_BITCLR0 DM320_REG(0x0592)
206 #define IO_GIO_BITCLR1 DM320_REG(0x0594)
207 #define IO_GIO_BITCLR2 DM320_REG(0x0596)
208 #define IO_GIO_IRQPORT DM320_REG(0x0598)
209 #define IO_GIO_IRQEDGE DM320_REG(0x059A)
210 #define IO_GIO_CHAT0 DM320_REG(0x059C)
211 #define IO_GIO_CHAT1 DM320_REG(0x059E)
212 #define IO_GIO_CHAT2 DM320_REG(0x05A0)
213 #define IO_GIO_NCHAT DM320_REG(0x05A2)
214 #define IO_GIO_FSEL0 DM320_REG(0x05A4)
215 #define IO_GIO_FSEL1 DM320_REG(0x05A6)
216 #define IO_GIO_FSEL2 DM320_REG(0x05A8)
217 #define IO_GIO_FSEL3 DM320_REG(0x05AA)
218 #define IO_GIO_FSEL4 DM320_REG(0x05AC)
219 #define IO_GIO_CARD_SET DM320_REG(0x05AE)
220 #define IO_GIO_CARD_ST DM320_REG(0x05B0)
222 /* DSP Controller */
223 #define IO_DSPC_HPIB_CONTROL 0x0600
224 #define IO_DSPC_HPIB_STATUS 0x0602
226 /* OSD Controller */
227 #define IO_OSD_MODE 0x0680
228 #define IO_OSD_VIDWINMD 0x0682
229 #define IO_OSD_OSDWINMD0 0x0684
230 #define IO_OSD_OSDWINMD1 0x0686
231 #define IO_OSD_ATRMD 0x0688
232 #define IO_OSD_RECTCUR 0x0688
233 #define IO_OSD_RESERVED 0x068A
234 #define IO_OSD_VIDWIN0OFST 0x068C
235 #define IO_OSD_VIDWIN1OFST 0x068E
236 #define IO_OSD_OSDWIN0OFST 0x0690
237 #define IO_OSD_OSDWIN1OFST 0x0692
238 #define IO_OSD_VIDWINADH 0x0694
239 #define IO_OSD_VIDWIN0ADL 0x0696
240 #define IO_OSD_VIDWIN1ADL 0x0698
241 #define IO_OSD_OSDWINADH 0x069A
242 #define IO_OSD_OSDWIN0ADL 0x069C
243 #define IO_OSD_OSDWIN1ADL 0x069E
244 #define IO_OSD_BASEPX 0x06A0
245 #define IO_OSD_BASEPY 0x06A2
246 #define IO_OSD_VIDWIN0XP 0x06A4
247 #define IO_OSD_VIDWIN0YP 0x06A6
248 #define IO_OSD_VIDWIN0XL 0x06A8
249 #define IO_OSD_VIDWIN0YL 0x06AA
250 #define IO_OSD_VIDWIN1XP 0x06AC
251 #define IO_OSD_VIDWIN1YP 0x06AE
252 #define IO_OSD_VIDWIN1XL 0x06B0
253 #define IO_OSD_VIDWIN1YL 0x06B2
255 #define IO_OSD_OSDWIN0XP 0x06B4
256 #define IO_OSD_OSDWIN0YP 0x06B6
257 #define IO_OSD_OSDWIN0XL 0x06B8
258 #define IO_OSD_OSDWIN0YL 0x06BA
259 #define IO_OSD_OSDWIN1XP 0x06BC
260 #define IO_OSD_OSDWIN1YP 0x06BE
261 #define IO_OSD_OSDWIN1XL 0x06C0
262 #define IO_OSD_OSDWIN1YL 0x06C2
263 #define IO_OSD_CURXP 0x06C4
264 #define IO_OSD_CURYP 0x06C6
265 #define IO_OSD_CURXL 0x06C8
266 #define IO_OSD_CURYL 0x06CA
268 #define IO_OSD_W0BMP01 0x06D0
269 #define IO_OSD_W0BMP23 0x06D2
270 #define IO_OSD_W0BMP45 0x06D4
271 #define IO_OSD_W0BMP67 0x06D6
272 #define IO_OSD_W0BMP89 0x06D8
273 #define IO_OSD_W0BMPAB 0x06DA
274 #define IO_OSD_W0BMPCD 0x06DC
275 #define IO_OSD_W0BMPEF 0x06DE
277 #define IO_OSD_W1BMP01 0x06E0
278 #define IO_OSD_W1BMP23 0x06E2
279 #define IO_OSD_W1BMP45 0x06E4
280 #define IO_OSD_W1BMP67 0x06E6
281 #define IO_OSD_W1BMP89 0x06E8
282 #define IO_OSD_W1BMPAB 0x06EA
283 #define IO_OSD_W1BMPCD 0x06EC
284 #define IO_OSD_W1BMPEF 0x06EE
286 #define IO_OSD_MISCCTL 0x06F4
287 #define IO_OSD_CLUTRAMYCB 0x06F6
288 #define IO_OSD_CLUTRAMCR 0x06F8
290 #define IO_OSD_PPWIN0ADH 0x06FC
291 #define IO_OSD_PPWIN0ADL 0x06FE
294 /* CCD Controller */
295 #define IO_CCD_SYNCEN 0x0700
296 #define IO_CCD_MODESET 0x0702
297 #define IO_CCD_HDWIDTH 0x0704
298 #define IO_CCD_VDWIDTH 0x0706
299 #define IO_CCD_PPLN 0x0708
300 #define IO_CCD_LPFR 0x070A
301 #define IO_CCD_SPH 0x070C
302 #define IO_CCD_NPH 0x070E
303 #define IO_CCD_SLV0 0x0710
304 #define IO_CCD_SLV1 0x0712
305 #define IO_CCD_NLV 0x0714
306 #define IO_CCD_CULH 0x0716
307 #define IO_CCD_CULV 0x0718
308 #define IO_CCD_HSIZE 0x071A
309 #define IO_CCD_SDOFST 0x071C
310 #define IO_CCD_STADRH 0x071E
311 #define IO_CCD_STADRL 0x0720
312 #define IO_CCD_CLAMP 0x0722
313 #define IO_CCD_DCSUB 0x0724
314 #define IO_CCD_COLPTN 0x0726
315 #define IO_CCD_BLKCMP0 0x0728
316 #define IO_CCD_BLKCMP1 0x072A
317 #define IO_CCD_MEDFILT 0x072C
318 #define IO_CCD_RYEGAIN 0x072E
319 #define IO_CCD_GRCYGAIN 0x0730
320 #define IO_CCD_GBGGAIN 0x0732
321 #define IO_CCD_BMGGAIN 0x0734
322 #define IO_CCD_OFFSET 0x0736
323 #define IO_CCD_OUTCLP 0x0738
324 #define IO_CCD_VDINT0 0x073A
325 #define IO_CCD_VDINT1 0x073C
326 #define IO_CCD_RSV0 0x073E
327 #define IO_CCD_GAMMAWD 0x0740
328 #define IO_CCD_REC656IF 0x0742
329 #define IO_CCD_CCDFG 0x0744
330 #define IO_CCD_FMTCFG 0x0746
331 #define IO_CCD_FMTSPH 0x0748
332 #define IO_CCD_FMTLNH 0x074A
333 #define IO_CCD_FMTSLV 0x074C
334 #define IO_CCD_FMTSNV 0x074E
335 #define IO_CCD_FMTOFST 0x0750
336 #define IO_CCD_FMTRLEN 0x0752
337 #define IO_CCD_FMTHCNT 0x0754
338 #define IO_CCD_FMTPTNA 0x0756
339 #define IO_CCD_FMTPTNB 0x0758
341 /* NTSC/PAL Encoder */
342 #define IO_VID_ENC_VMOD 0x0800
343 #define IO_VID_ENC_VDCTL 0x0802
344 #define IO_VID_ENC_VDPRO 0x0804
345 #define IO_VID_ENC_SYNCCTL 0x0806
346 #define IO_VID_ENC_HSPLS 0x0808
347 #define IO_VID_ENC_VSPLS 0x080A
348 #define IO_VID_ENC_HINT 0x080C
349 #define IO_VID_ENC_HSTART 0x080E
350 #define IO_VID_ENC_HVALID 0x0810
351 #define IO_VID_ENC_VINT 0x0812
352 #define IO_VID_ENC_VSTART 0x0814
353 #define IO_VID_ENC_VVALID 0x0816
354 #define IO_VID_ENC_HSDLY 0x0818
355 #define IO_VID_ENC_VSDLY 0x081A
356 #define IO_VID_ENC_YCCTL 0x081C
357 #define IO_VID_ENC_RGBCTL 0x081E
358 #define IO_VID_ENC_RGBCLP 0x0820
359 #define IO_VID_ENC_LNECTL 0x0822
360 #define IO_VID_ENC_CULLLNE 0x0824
361 #define IO_VID_ENC_LCDOUT 0x0826
362 #define IO_VID_ENC_BRTS 0x0828
363 #define IO_VID_ENC_BRTW 0x082A
364 #define IO_VID_ENC_ACCTL 0x082C
365 #define IO_VID_ENC_PWMP 0x082E
366 #define IO_VID_ENC_PWMW 0x0830
367 #define IO_VID_ENC_DCLKCTL 0x0832
368 #define IO_VID_ENC_DCLKPTN0 0x0834
369 #define IO_VID_ENC_DCLKPTN1 0x0836
370 #define IO_VID_ENC_DCLKPTN2 0x0838
371 #define IO_VID_ENC_DCLKPTN3 0x083A
372 #define IO_VID_ENC_DCLKPTN0A 0x083C
373 #define IO_VID_ENC_DCLKPTN1A 0x083E
374 #define IO_VID_ENC_DCLKPTN2A 0x0840
375 #define IO_VID_ENC_DCLKPTN3A 0x0842
376 #define IO_VID_ENC_DCLKHS 0x0844
377 #define IO_VID_ENC_DCLKHSA 0x0846
378 #define IO_VID_ENC_DCLKHR 0x0848
379 #define IO_VID_ENC_DCLKVS 0x084A
380 #define IO_VID_ENC_DCLKVR 0x084C
381 #define IO_VID_ENC_CAPCTL 0x084E
382 #define IO_VID_ENC_CAPDO 0x0850
383 #define IO_VID_ENC_CAPDE 0x0852
384 #define IO_VID_ENC_ATR0 0x0854
386 /* Clock Controller */
387 #define IO_CLK_PLLA DM320_REG(0x0880)
388 #define IO_CLK_PLLB DM320_REG(0x0882)
389 #define IO_CLK_SEL0 DM320_REG(0x0884)
390 #define IO_CLK_SEL1 DM320_REG(0x0886)
391 #define IO_CLK_SEL2 DM320_REG(0x0888)
392 #define IO_CLK_DIV0 DM320_REG(0x088A)
393 #define IO_CLK_DIV1 DM320_REG(0x088C)
394 #define IO_CLK_DIV2 DM320_REG(0x088E)
395 #define IO_CLK_DIV3 DM320_REG(0x0890)
396 #define IO_CLK_DIV4 DM320_REG(0x0892)
397 #define IO_CLK_BYP DM320_REG(0x0894)
398 #define IO_CLK_INV DM320_REG(0x0896)
399 #define IO_CLK_MOD0 DM320_REG(0x0898)
400 #define IO_CLK_MOD1 DM320_REG(0x089A)
401 #define IO_CLK_MOD2 DM320_REG(0x089C)
402 #define IO_CLK_LPCTL0 DM320_REG(0x089E)
403 #define IO_CLK_LPCTL1 DM320_REG(0x08A0)
404 #define IO_CLK_OSEL DM320_REG(0x08A2)
405 #define IO_CLK_00DIV DM320_REG(0x08A4)
406 #define IO_CLK_O1DIV DM320_REG(0x08A6)
407 #define IO_CLK_02DIV DM320_REG(0x08A8)
408 #define IO_CLK_PWM0C DM320_REG(0x08AA)
409 #define IO_CLK_PWM0H DM320_REG(0x08AC)
410 #define IO_CLK_PWM1C DM320_REG(0x08AE)
411 #define IO_CLK_PWM1H DM320_REG(0x08B0)
413 /* Bus Controller */
414 #define IO_BUSC_ECR 0x0900
415 #define IO_BUSC_EBYTER 0x0902
416 #define IO_BUSC_EBITR 0x0904
417 #define IO_BUSC_REVR 0x0906
419 /* SDRAM Controller */
420 #define IO_SDRAM_SDBUFD0L 0x0980
421 #define IO_SDRAM_SDBUFD0H 0x0982
422 #define IO_SDRAM_SDBUFD1L 0x0984
423 #define IO_SDRAM_SDBUFD1H 0x0986
424 #define IO_SDRAM_SDBUFD2L 0x0988
425 #define IO_SDRAM_SDBUFD2H 0x098A
426 #define IO_SDRAM_SDBUFD3L 0x098C
427 #define IO_SDRAM_SDBUFD3H 0x098E
428 #define IO_SDRAM_SDBUFD4L 0x0990
429 #define IO_SDRAM_SDBUFD4H 0x0992
430 #define IO_SDRAM_SDBUFD5L 0x0994
431 #define IO_SDRAM_SDBUFD5H 0x0996
432 #define IO_SDRAM_SDBUFD6L 0x0998
433 #define IO_SDRAM_SDBUFD6H 0x099A
434 #define IO_SDRAM_SDBUFD7L 0x099C
435 #define IO_SDRAM_SDBUFD7H 0x099E
436 #define IO_SDRAM_SDBUFAD1 0x09A0
437 #define IO_SDRAM_SDBUFAD2 0x09A2
438 #define IO_SDRAM_SDBUFCTL 0x09A4
439 #define IO_SDRAM_SDMODE 0x09A6
440 #define IO_SDRAM_REFCTL 0x09A8
441 #define IO_SDRAM_SDPRTY1 0x09AA
442 #define IO_SDRAM_SDPRTY2 0x09AC
443 #define IO_SDRAM_SDPRTY3 0x09AE
444 #define IO_SDRAM_SDPRTY4 0x09B0
445 #define IO_SDRAM_SDPRTY5 0x09B2
446 #define IO_SDRAM_SDPRTY6 0x09B4
447 #define IO_SDRAM_SDPRTY7 0x09B6
448 #define IO_SDRAM_SDPRTY8 0x09B8
449 #define IO_SDRAM_SDPRTY9 0x09BA
450 #define IO_SDRAM_SDPRTY10 0x09BC
451 #define IO_SDRAM_SDPRTY11 0x09BE
452 #define IO_SDRAM_SDPRTY12 0x09C0
453 #define IO_SDRAM_RSV 0x09C2
454 #define IO_SDRAM_SDPRTYON 0x09C4
455 #define IO_SDRAM_SDDMASEL 0x09C6
457 /* EMIF Controller */
458 #define IO_EMIF_CS0CTRL1 0x0A00
459 #define IO_EMIF_CS0CTRL2 0x0A02
460 #define IO_EMIF_CS0CTRL3 0x0A04
461 #define IO_EMIF_CS1CTRL1A 0x0A06
462 #define IO_EMIF_CS1CTRL1B 0x0A08
463 #define IO_EMIF_CS1CTRL2 0x0A0A
464 #define IO_EMIF_CS2CTRL1 0x0A0C
465 #define IO_EMIF_CS2CTRL2 0x0A0E
466 #define IO_EMIF_CS3CTRL1 0x0A10
467 #define IO_EMIF_CS3CTRL2 0x0A12
468 #define IO_EMIF_CS4CTRL1 0x0A14
469 #define IO_EMIF_CS4CTRL2 0x0A16
470 #define IO_EMIF_BUSCTRL 0x0A18
471 #define IO_EMIF_BUSRLS 0x0A1A
472 #define IO_EMIF_CFCTRL1 0x0A1C
473 #define IO_EMIF_CFCTRL2 0x0A1E
474 #define IO_EMIF_SMCTRL 0x0A20
475 #define IO_EMIF_BUSINTEN 0x0A22
476 #define IO_EMIF_BUSSTS 0x0A24
477 #define IO_EMIF_BUSWAITMD 0x0A26
478 #define IO_EMIF_ECC1CP 0x0A28
479 #define IO_EMIF_ECC1LP 0x0A2A
480 #define IO_EMIF_ECC2CP 0x0A2C
481 #define IO_EMIF_ECC2LP 0x0A2E
482 #define IO_EMIF_ECC3CP 0x0A30
483 #define IO_EMIF_ECC3LP 0x0A32
484 #define IO_EMIF_ECC4CP 0x0A34
485 #define IO_EMIF_ECC4LP 0x0A36
486 #define IO_EMIF_ECC5CP 0x0A38
487 #define IO_EMIF_ECC5LP 0x0A3A
488 #define IO_EMIF_ECC6CP 0x0A3C
489 #define IO_EMIF_ECC6LP 0x0A3E
490 #define IO_EMIF_ECC7CP 0x0A40
491 #define IO_EMIF_ECC7LP 0x0A42
492 #define IO_EMIF_ECC8CP 0x0A44
493 #define IO_EMIF_ECC8LP 0x0A46
494 #define IO_EMIF_ECCCLR 0x0A48
495 #define IO_EMIF_PAGESZ 0x0A4A
496 #define IO_EMIF_PRIORCTL 0x0A4C
497 #define IO_EMIF_MGDSPDEST 0x0A4E
498 #define IO_EMIF_MGDSPADDH 0x0A50
499 #define IO_EMIF_MGDSPADDL 0x0A52
500 #define IO_EMIF_AHBADDH 0x0A54
501 #define IO_EMIF_AHBADDL 0x0A56
502 #define IO_EMIF_MTCADDH 0x0A58
503 #define IO_EMIF_MTCADDL 0x0A5A
504 #define IO_EMIF_DMASIZE 0x0A5C
505 #define IO_EMIF_DMAMTCSEL 0x0A5E
506 #define IO_EMIF_DMACTL 0x0A60
508 /* Preivew Engine */
509 #define IO_PREV_ENG_PVEN 0x0A80
510 #define IO_PREV_ENG_PVSET1 0x0A82
511 #define IO_PREV_ENG_RADRH 0x0A84
512 #define IO_PREV_ENG_RADRL 0x0A86
513 #define IO_PREV_ENG_WADRH 0x0A88
514 #define IO_PREV_ENG_WADRL 0x0A8A
515 #define IO_PREV_ENG_HSTART 0x0A8C
516 #define IO_PREV_ENG_HSIZE 0x0A8E
517 #define IO_PREV_ENG_VSTART 0x0A90
518 #define IO_PREV_ENG_VSIZE 0x0A92
519 #define IO_PREV_ENG_PVSET2 0x0A94
520 #define IO_PREV_ENG_NFILT 0x0A96
521 #define IO_PREV_ENG_DGAIN 0x0A98
522 #define IO_PREV_ENG_WBGAIN0 0x0A9A
523 #define IO_PREV_ENG_WBGAIN1 0x0A9C
524 #define IO_PREV_ENG_SMTH 0x0A9E
525 #define IO_PREV_ENG_HRSZ 0x0AA0
526 #define IO_PREV_ENG_VRSZ 0x0AA2
527 #define IO_PREV_ENG_BLOFST0 0x0AA4
528 #define IO_PREV_ENG_BLOFST1 0x0AA6
529 #define IO_PREV_ENG_MTXGAIN0 0x0AA8
530 #define IO_PREV_ENG_MTXGAIN1 0x0AAA
531 #define IO_PREV_ENG_MTXGAIN2 0x0AAC
532 #define IO_PREV_ENG_MTXGAIN3 0x0AAE
533 #define IO_PREV_ENG_MTXGAIN4 0x0AB0
534 #define IO_PREV_ENG_MTXGAIN5 0x0AB2
535 #define IO_PREV_ENG_MTXGAIN6 0x0AB4
536 #define IO_PREV_ENG_MTXGAIN7 0x0AB6
537 #define IO_PREV_ENG_MTXGAIN8 0x0AB8
538 #define IO_PREV_ENG_MTXOFST0 0x0ABA
539 #define IO_PREV_ENG_MTXOFST1 0x0ABC
540 #define IO_PREV_ENG_MTXOFST2 0x0ABE
541 #define IO_PREV_ENG_GAMTBYP 0x0AC0
542 #define IO_PREV_ENG_CSC0 0x0AC2
543 #define IO_PREV_ENG_CSC1 0x0AC4
544 #define IO_PREV_ENG_CSC2 0x0AC6
545 #define IO_PREV_ENG_CSC3 0x0AC8
546 #define IO_PREV_ENG_CSC4 0x0ACA
547 #define IO_PREV_ENG_YOFST 0x0ACC
548 #define IO_PREV_ENG_COFST 0x0ACE
549 #define IO_PREV_ENG_CNTBRT 0x0AD0
550 #define IO_PREV_ENG_CSUP0 0x0AD2
551 #define IO_PREV_ENG_CSUP1 0x0AD4
552 #define IO_PREV_ENG_SETUPY 0x0AD4
553 #define IO_PREV_ENG_SETUPC 0x0AD8
554 #define IO_PREV_ENG_TABLE_ADDR 0x0ADA
555 #define IO_PREV_ENG_TABLE_DATA 0x0ADC
556 #define IO_PREV_ENG_HG_CTL 0x0ADE
557 #define IO_PREV_ENG_HG_R0_HSTART 0x0AE0
558 #define IO_PREV_ENG_HG_R0_HSIZE 0x0AE2
559 #define IO_PREV_ENG_HG_R0_VSTART 0x0AE4
560 #define IO_PREV_ENG_HR_R0_VSIZE 0x0AE6
561 #define IO_PREV_ENG_HG_R1_HSTART 0x0AE8
562 #define IO_PREV_ENG_HG_R1_HSIZE 0x0AEA
563 #define IO_PREV_ENG_HG_R1_VSTART 0x0AEC
564 #define IO_PREV_ENG_HG_R1_VSIZE 0x0AEE
565 #define IO_PREV_ENG_HG_R2_HSTART 0x0AF0
566 #define IO_PREV_ENG_HG_R2_HSIZE 0x0AF2
567 #define IO_PREV_ENG_HG_R2_VSTART 0x0AF4
568 #define IO_PREV_ENG_HG_R2_VSIZE 0x0AF6
569 #define IO_PREV_ENG_HG_R3_HSTART 0x0AF8
570 #define IO_PREV_ENG_HG_R3_HSIZE 0x0AFA
571 #define IO_PREV_ENG_HG_R3_VSTART 0x0AFC
572 #define IO_PREV_ENG_HG_R3_VSIZE 0x0AFE
573 #define IO_PREV_ENG_HG_ADDR 0x0B00
574 #define IO_PREV_ENG_HG_DATA 0x0B02
576 /* H3A Hardware */
577 #define IO_H3A_H3ACTRL 0x0B80
578 #define IO_H3A_AFCTRL 0x0B82
579 #define IO_H3A_AFPAX1 0x0B84
580 #define IO_H3A_AFPAX2 0x0B86
581 #define IO_H3A_AFPAX3 0x0B88
582 #define IO_H3A_AFPAX4 0x0B8A
583 #define IO_H3A_AFIRSH 0x0B8C
584 #define IO_H3A_AFPAX5 0x0B8E
585 #define IO_H3A_AFSDRA1 0x0B90
586 #define IO_H3A_AFSDRA2 0x0B92
587 #define IO_H3A_AFSDRFLG 0x0B94
588 #define IO_H3A_AFCOEFF10 0x0B96
589 #define IO_H3A_AFCOEFF11 0x0B98
590 #define IO_H3A_AFCOEFF12 0x0B9A
591 #define IO_H3A_AFCOEFF13 0x0B9C
592 #define IO_H3A_AFCOEFF14 0x0B9E
593 #define IO_H3A_AFCOEFF15 0x0BA0
594 #define IO_H3A_AFCOEFF16 0x0BA2
595 #define IO_H3A_AFCOEFF17 0x0BA4
596 #define IO_H3A_AFCOEFF18 0x0BA6
597 #define IO_H3A_AFCOEFF19 0x0BA8
598 #define IO_H3A_AFCOEFF110 0x0BAA
599 #define IO_H3A_AFCOEFF20 0x0BAC
600 #define IO_H3A_AFCOEFF21 0x0BAE
601 #define IO_H3A_AFCOEFF22 0x0BB0
602 #define IO_H3A_AFCOEFF23 0x0BB2
603 #define IO_H3A_AFCOEFF24 0x0BB4
604 #define IO_H3A_AFCOEFF25 0x0BB6
605 #define IO_H3A_AFCOEFF26 0x0BB8
606 #define IO_H3A_AFCOEFF27 0x0BBA
607 #define IO_H3A_AFCOEFF28 0x0BBC
608 #define IO_H3A_AFCOEFF29 0x0BBE
609 #define IO_H3A_AFCOEFF210 0x0BC0
610 #define IO_H3A_AEWCTRL 0x0BC2
611 #define IO_H3A_AEWWIN1 0x0BC4
612 #define IO_H3A_AEWWIN2 0x0BC6
613 #define IO_H3A_AEWWIN3 0x0BC8
614 #define IO_H3A_AEWWIN4 0x0BCA
615 #define IO_H3A_AEWWIN5 0x0BCC
616 #define IO_H3A_AEWSDRA1 0x0BCE
617 #define IO_H3A_AEWSDRA2 0x0BD0
618 #define IO_H3A_AEWSDRFLG 0x0BD2
620 /* Reserved 0x0C00 - 0x0CCFF */
622 /* Memory Stick Controller : */
623 #define IO_MEM_STICK_MODE 0x0C80
624 #define IO_MEM_STICK_CMD 0x0C82
625 #define IO_MEM_STICK_DATA 0x0C84
626 #define IO_MEM_STICK_STATUS 0x0C86
627 #define IO_MEM_STICK_SYS 0x0C88
628 #define IO_MEM_STICK_ENDIAN 0x0C8A
629 #define IO_MEM_STICK_INT_STATUS 0x0C8C
630 #define IO_MEM_STICK_DMA_TRG 0x0C8E
631 #define IO_MEM_STICK_DMA_MODE 0x0C90
632 #define IO_MEM_STICK_SDRAM_ADDL 0x0C92
633 #define IO_MEM_STICK_SDRAM_ADDH 0x0C94
634 #define IO_MEM_STICK_DMA_STATUS 0x0C96
636 /* ATM : WBB Need to find these Register values */
637 #define IO_ATM_ 0x0D00
639 /* I2C */
640 #define IO_I2C_TXDATA 0x0D80
641 #define IO_I2C_RXDATA 0x0D82
642 #define IO_I2C_SCS 0x0D84
644 /* Taken from linux/include/asm-arm/arch-itdm320/irqs.h
646 * Copyright (C) 1999 ARM Limited
647 * Copyright (C) 2004 Ingenient Technologies
651 * Interrupt numbers
653 #define IRQ_TIMER0 0
654 #define IRQ_TIMER1 1
655 #define IRQ_TIMER2 2
656 #define IRQ_TIMER3 3
657 #define IRQ_CCD_VD0 4
658 #define IRQ_CCD_VD1 5
659 #define IRQ_CCD_WEN 6
660 #define IRQ_VENC 7
661 #define IRQ_SERIAL0 8
662 #define IRQ_SERIAL1 9
663 #define IRQ_EXT_HOST 10
664 #define IRQ_DSPHINT 11
665 #define IRQ_UART0 12
666 #define IRQ_UART1 13
667 #define IRQ_USB_DMA 14
668 #define IRQ_USB_CORE 15
669 #define IRQ_VLYNQ 16
670 #define IRQ_MTC0 17
671 #define IRQ_MTC1 18
672 #define IRQ_SD_MMC 19
673 #define IRQ_SDIO_MS 20
674 #define IRQ_GIO0 21
675 #define IRQ_GIO1 22
676 #define IRQ_GIO2 23
677 #define IRQ_GIO3 24
678 #define IRQ_GIO4 25
679 #define IRQ_GIO5 26
680 #define IRQ_GIO6 27
681 #define IRQ_GIO7 28
682 #define IRQ_GIO8 29
683 #define IRQ_GIO9 30
684 #define IRQ_GIO10 31
685 #define IRQ_GIO11 32
686 #define IRQ_GIO12 33
687 #define IRQ_GIO13 34
688 #define IRQ_GIO14 35
689 #define IRQ_GIO15 36
690 #define IRQ_PREVIEW0 37
691 #define IRQ_PREVIEW1 38
692 #define IRQ_WATCHDOG 39
693 #define IRQ_I2C 40
694 #define IRQ_CLKC 41
696 /* Embedded Debugging Interrupts */
697 #define IRQ_ICE 42
698 #define IRQ_ARMCOM_RX 43
699 #define IRQ_ARMCOM_TX 44
701 #define IRQ_RESERVED 45
703 #define NR_IRQS 46
705 /* Taken from linux/include/asm-arm/arch-integrator/timex.h
707 * Copyright (C) 1999 ARM Limited
710 #define CONFIG_TIMER0_TMMD_STOP 0x0000
711 #define CONFIG_TIMER0_TMMD_ONE_SHOT 0x0001
712 #define CONFIG_TIMER0_TMMD_FREE_RUN 0x0002
714 #define CONFIG_TIMER1_TMMD_STOP 0x0000
715 #define CONFIG_TIMER1_TMMD_ONE_SHOT 0x0001
716 #define CONFIG_TIMER1_TMMD_FREE_RUN 0x0002
718 #define CONFIG_TIMER2_TMMD_STOP 0x0000
719 #define CONFIG_TIMER2_TMMD_ONE_SHOT 0x0001
720 #define CONFIG_TIMER2_TMMD_FREE_RUN 0x0002
721 #define CONFIG_TIMER2_TMMD_CCD_SHUTTER 0x0100
722 #define CONFIG_TIMER2_TMMD_CCD_STROBE 0x0200
723 #define CONFIG_TIMER2_TMMD_POLARITY 0x0400
724 #define CONFIG_TIMER2_TMMD_TRG_SELECT 0x0800
725 #define CONFIG_TIMER2_TMMD_TRG_READY 0x1000
726 #define CONFIG_TIMER2_TMMD_SIGNAL 0x2000
728 #define CONFIG_TIMER3_TMMD_STOP 0x0000
729 #define CONFIG_TIMER3_TMMD_ONE_SHOT 0x0001
730 #define CONFIG_TIMER3_TMMD_FREE_RUN 0x0002
731 #define CONFIG_TIMER3_TMMD_CCD_SHUTTER 0x0100
732 #define CONFIG_TIMER3_TMMD_CCD_STROBE 0x0200
733 #define CONFIG_TIMER3_TMMD_POLARITY 0x0400
734 #define CONFIG_TIMER3_TMMD_TRG_SELECT 0x0800
735 #define CONFIG_TIMER3_TMMD_TRG_READY 0x1000
736 #define CONFIG_TIMER3_TMMD_SIGNAL 0x2000
739 #endif