]> git.kernelconcepts.de Git - karo-tx-uboot.git/blob - arch/arm/include/asm/arch-at91rm9200/hardware.h
b868e38a3efd4d2e5e100a331942faac60f5a056
[karo-tx-uboot.git] / arch / arm / include / asm / arch-at91rm9200 / hardware.h
1 /*
2  * linux/include/asm-arm/arch-at91/hardware.h
3  *
4  *  Copyright (C) 2003 SAN People
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation; either version 2 of the License, or
9  * (at your option) any later version.
10  *
11  * This program is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with this program; if not, write to the Free Software
18  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
19  */
20 #ifndef __ASM_ARCH_HARDWARE_H
21 #define __ASM_ARCH_HARDWARE_H
22
23 #include <asm/sizes.h>
24
25 #ifndef __ASSEMBLY__
26 #include "AT91RM9200.h"
27 #endif
28
29 /* Virtual and Physical base address for system peripherals */
30 #define AT91_SYS_BASE           0xFFFFF000 /*4K */
31
32 /* Virtual and Physical base addresses of user peripherals */
33 #define AT91_SPI_BASE           0xFFFE0000 /*16K */
34 #define AT91_SSC2_BASE          0xFFFD8000 /*16K */
35 #define AT91_SSC1_BASE          0xFFFD4000 /*16K */
36 #define AT91_SSC0_BASE          0xFFFD0000 /*16K */
37 #define AT91_USART3_BASE        0xFFFCC000 /*16K */
38 #define AT91_USART2_BASE        0xFFFC8000 /*16K */
39 #define AT91_USART1_BASE        0xFFFC4000 /*16K */
40 #define AT91_USART0_BASE        0xFFFC0000 /*16K */
41 #define AT91_EMAC_BASE          0xFFFBC000 /*16K */
42 #define AT91_TWI_BASE           0xFFFB8000 /*16K */
43 #define AT91_MCI_BASE           0xFFFB4000 /*16K */
44 #define AT91_UDP_BASE           0xFFFB0000 /*16K */
45 #define AT91_TCB1_BASE          0xFFFA4000 /*16K */
46 #define AT91_TCB0_BASE          0xFFFA0000 /*16K */
47
48 #define AT91_USB_HOST_BASE      0x00300000
49
50 /*
51  * Where in virtual memory the IO devices (timers, system controllers
52  * and so on)
53  */
54 #define AT91_IO_BASE            0xF0000000      /* Virt/Phys Address of IO */
55
56 /* FLASH */
57 #define AT91_FLASH_BASE         0x10000000      /* NCS0 */
58
59 /* SDRAM */
60 #define AT91_SDRAM_BASE         0x20000000      /* NCS1 */
61
62 /* SmartMedia */
63 #define AT91_SMARTMEDIA_BASE    0x40000000      /* NCS3 */
64
65 /* Definition of interrupt priority levels */
66 #define AT91C_AIC_PRIOR_0 AT91C_AIC_PRIOR_LOWEST
67 #define AT91C_AIC_PRIOR_1 ((unsigned int) 0x1)
68 #define AT91C_AIC_PRIOR_2 ((unsigned int) 0x2)
69 #define AT91C_AIC_PRIOR_3 ((unsigned int) 0x3)
70 #define AT91C_AIC_PRIOR_4 ((unsigned int) 0x4)
71 #define AT91C_AIC_PRIOR_5 ((unsigned int) 0x5)
72 #define AT91C_AIC_PRIOR_6 ((unsigned int) 0x6)
73 #define AT91C_AIC_PRIOR_7 AT91C_AIC_PRIOR_HIGEST
74
75 #endif