diff options
-rw-r--r-- | arch/arm/mach-ux500/cpu-u8500.c | 6 | ||||
-rw-r--r-- | arch/arm/mach-ux500/include/mach/db5500-regs.h | 103 | ||||
-rw-r--r-- | arch/arm/mach-ux500/include/mach/db8500-regs.h | 135 | ||||
-rw-r--r-- | arch/arm/mach-ux500/include/mach/hardware.h | 174 |
4 files changed, 302 insertions, 116 deletions
diff --git a/arch/arm/mach-ux500/cpu-u8500.c b/arch/arm/mach-ux500/cpu-u8500.c index 979f1c32ad09..8919af4eeeb5 100644 --- a/arch/arm/mach-ux500/cpu-u8500.c +++ b/arch/arm/mach-ux500/cpu-u8500.c | |||
@@ -124,10 +124,10 @@ static struct map_desc u8500_io_desc[] __initdata = { | |||
124 | __IO_DEV_DESC(U8500_CLKRST3_BASE, SZ_4K), | 124 | __IO_DEV_DESC(U8500_CLKRST3_BASE, SZ_4K), |
125 | __IO_DEV_DESC(U8500_CLKRST5_BASE, SZ_4K), | 125 | __IO_DEV_DESC(U8500_CLKRST5_BASE, SZ_4K), |
126 | __IO_DEV_DESC(U8500_CLKRST6_BASE, SZ_4K), | 126 | __IO_DEV_DESC(U8500_CLKRST6_BASE, SZ_4K), |
127 | __IO_DEV_DESC(U8500_GPIO0_BASE, SZ_4K), | ||
127 | __IO_DEV_DESC(U8500_GPIO1_BASE, SZ_4K), | 128 | __IO_DEV_DESC(U8500_GPIO1_BASE, SZ_4K), |
128 | __IO_DEV_DESC(U8500_GPIO2_BASE, SZ_4K), | 129 | __IO_DEV_DESC(U8500_GPIO2_BASE, SZ_4K), |
129 | __IO_DEV_DESC(U8500_GPIO3_BASE, SZ_4K), | 130 | __IO_DEV_DESC(U8500_GPIO3_BASE, SZ_4K), |
130 | __IO_DEV_DESC(U8500_GPIO5_BASE, SZ_4K), | ||
131 | __IO_DEV_DESC(U8500_L2CC_BASE, SZ_4K), | 131 | __IO_DEV_DESC(U8500_L2CC_BASE, SZ_4K), |
132 | }; | 132 | }; |
133 | 133 | ||
@@ -137,7 +137,7 @@ static struct map_desc u8500ed_io_desc[] __initdata = { | |||
137 | }; | 137 | }; |
138 | 138 | ||
139 | static struct map_desc u8500v1_io_desc[] __initdata = { | 139 | static struct map_desc u8500v1_io_desc[] __initdata = { |
140 | __IO_DEV_DESC(U8500_MTU0_BASE_V1, SZ_4K), | 140 | __IO_DEV_DESC(U8500_MTU0_BASE, SZ_4K), |
141 | }; | 141 | }; |
142 | 142 | ||
143 | void __init u8500_map_io(void) | 143 | void __init u8500_map_io(void) |
@@ -177,7 +177,7 @@ static void __init u8500_timer_init(void) | |||
177 | if (cpu_is_u8500ed()) | 177 | if (cpu_is_u8500ed()) |
178 | mtu_base = __io_address(U8500_MTU0_BASE_ED); | 178 | mtu_base = __io_address(U8500_MTU0_BASE_ED); |
179 | else | 179 | else |
180 | mtu_base = __io_address(U8500_MTU0_BASE_V1); | 180 | mtu_base = __io_address(U8500_MTU0_BASE); |
181 | 181 | ||
182 | nmdk_timer_init(); | 182 | nmdk_timer_init(); |
183 | } | 183 | } |
diff --git a/arch/arm/mach-ux500/include/mach/db5500-regs.h b/arch/arm/mach-ux500/include/mach/db5500-regs.h new file mode 100644 index 000000000000..545c80fc8024 --- /dev/null +++ b/arch/arm/mach-ux500/include/mach/db5500-regs.h | |||
@@ -0,0 +1,103 @@ | |||
1 | /* | ||
2 | * Copyright (C) ST-Ericsson SA 2010 | ||
3 | * | ||
4 | * License terms: GNU General Public License (GPL) version 2 | ||
5 | */ | ||
6 | |||
7 | #ifndef __MACH_DB5500_REGS_H | ||
8 | #define __MACH_DB5500_REGS_H | ||
9 | |||
10 | #define U5500_PER1_BASE 0xA0020000 | ||
11 | #define U5500_PER2_BASE 0xA0010000 | ||
12 | #define U5500_PER3_BASE 0x80140000 | ||
13 | #define U5500_PER4_BASE 0x80150000 | ||
14 | #define U5500_PER5_BASE 0x80100000 | ||
15 | #define U5500_PER6_BASE 0x80120000 | ||
16 | |||
17 | #define U5500_GIC_DIST_BASE 0xA0411000 | ||
18 | #define U5500_GIC_CPU_BASE 0xA0410100 | ||
19 | #define U5500_DMA_BASE 0x90030000 | ||
20 | #define U5500_MCDE_BASE 0xA0400000 | ||
21 | #define U5500_MODEM_BASE 0xB0000000 | ||
22 | #define U5500_L2CC_BASE 0xA0412000 | ||
23 | #define U5500_SCU_BASE 0xA0410000 | ||
24 | #define U5500_DSI1_BASE 0xA0401000 | ||
25 | #define U5500_DSI2_BASE 0xA0402000 | ||
26 | #define U5500_SIA_BASE 0xA0100000 | ||
27 | #define U5500_SVA_BASE 0x80200000 | ||
28 | #define U5500_HSEM_BASE 0xA0000000 | ||
29 | #define U5500_NAND0_BASE 0x60000000 | ||
30 | #define U5500_NAND1_BASE 0x70000000 | ||
31 | #define U5500_TWD_BASE 0xa0410600 | ||
32 | #define U5500_B2R2_BASE 0xa0200000 | ||
33 | |||
34 | #define U5500_FSMC_BASE (U5500_PER1_BASE + 0x0000) | ||
35 | #define U5500_SDI0_BASE (U5500_PER1_BASE + 0x1000) | ||
36 | #define U5500_SDI2_BASE (U5500_PER1_BASE + 0x2000) | ||
37 | #define U5500_UART0_BASE (U5500_PER1_BASE + 0x3000) | ||
38 | #define U5500_I2C1_BASE (U5500_PER1_BASE + 0x4000) | ||
39 | #define U5500_MSP0_BASE (U5500_PER1_BASE + 0x5000) | ||
40 | #define U5500_GPIO0_BASE (U5500_PER1_BASE + 0xE000) | ||
41 | #define U5500_CLKRST1_BASE (U5500_PER1_BASE + 0xF000) | ||
42 | |||
43 | #define U5500_USBOTG_BASE (U5500_PER2_BASE + 0x0000) | ||
44 | #define U5500_GPIO1_BASE (U5500_PER2_BASE + 0xE000) | ||
45 | #define U5500_CLKRST2_BASE (U5500_PER2_BASE + 0xF000) | ||
46 | |||
47 | #define U5500_KEYPAD_BASE (U5500_PER3_BASE + 0x0000) | ||
48 | #define U5500_PWM_BASE (U5500_PER3_BASE + 0x1000) | ||
49 | #define U5500_GPIO3_BASE (U5500_PER3_BASE + 0xE000) | ||
50 | #define U5500_CLKRST3_BASE (U5500_PER3_BASE + 0xF000) | ||
51 | |||
52 | #define U5500_BACKUPRAM0_BASE (U5500_PER4_BASE + 0x0000) | ||
53 | #define U5500_BACKUPRAM1_BASE (U5500_PER4_BASE + 0x1000) | ||
54 | #define U5500_RTT0_BASE (U5500_PER4_BASE + 0x2000) | ||
55 | #define U5500_RTT1_BASE (U5500_PER4_BASE + 0x3000) | ||
56 | #define U5500_RTC_BASE (U5500_PER4_BASE + 0x4000) | ||
57 | #define U5500_SCR_BASE (U5500_PER4_BASE + 0x5000) | ||
58 | #define U5500_DMC_BASE (U5500_PER4_BASE + 0x6000) | ||
59 | #define U5500_PRCMU_BASE (U5500_PER4_BASE + 0x7000) | ||
60 | #define U5500_MSP1_BASE (U5500_PER4_BASE + 0x9000) | ||
61 | #define U5500_GPIO2_BASE (U5500_PER4_BASE + 0xA000) | ||
62 | #define U5500_CDETECT_BASE (U5500_PER4_BASE + 0xF000) | ||
63 | |||
64 | #define U5500_SPI0_BASE (U5500_PER5_BASE + 0x0000) | ||
65 | #define U5500_SPI1_BASE (U5500_PER5_BASE + 0x1000) | ||
66 | #define U5500_SPI2_BASE (U5500_PER5_BASE + 0x2000) | ||
67 | #define U5500_SPI3_BASE (U5500_PER5_BASE + 0x3000) | ||
68 | #define U5500_UART1_BASE (U5500_PER5_BASE + 0x4000) | ||
69 | #define U5500_UART2_BASE (U5500_PER5_BASE + 0x5000) | ||
70 | #define U5500_UART3_BASE (U5500_PER5_BASE + 0x6000) | ||
71 | #define U5500_SDI1_BASE (U5500_PER5_BASE + 0x7000) | ||
72 | #define U5500_SDI3_BASE (U5500_PER5_BASE + 0x8000) | ||
73 | #define U5500_SDI4_BASE (U5500_PER5_BASE + 0x9000) | ||
74 | #define U5500_I2C2_BASE (U5500_PER5_BASE + 0xA000) | ||
75 | #define U5500_I2C3_BASE (U5500_PER5_BASE + 0xB000) | ||
76 | #define U5500_MSP2_BASE (U5500_PER5_BASE + 0xC000) | ||
77 | #define U5500_IRDA_BASE (U5500_PER5_BASE + 0xD000) | ||
78 | #define U5500_IRRC_BASE (U5500_PER5_BASE + 0x10000) | ||
79 | #define U5500_GPIO4_BASE (U5500_PER5_BASE + 0x1E000) | ||
80 | #define U5500_CLKRST5_BASE (U5500_PER5_BASE + 0x1F000) | ||
81 | |||
82 | #define U5500_RNG_BASE (U5500_PER6_BASE + 0x0000) | ||
83 | #define U5500_HASH0_BASE (U5500_PER6_BASE + 0x1000) | ||
84 | #define U5500_HASH1_BASE (U5500_PER6_BASE + 0x2000) | ||
85 | #define U5500_PKA_BASE (U5500_PER6_BASE + 0x4000) | ||
86 | #define U5500_PKAM_BASE (U5500_PER6_BASE + 0x5000) | ||
87 | #define U5500_MTU0_BASE (U5500_PER6_BASE + 0x6000) | ||
88 | #define U5500_MTU1_BASE (U5500_PER6_BASE + 0x7000) | ||
89 | #define U5500_CR_BASE (U5500_PER6_BASE + 0x8000) | ||
90 | #define U5500_CRYP0_BASE (U5500_PER6_BASE + 0xA000) | ||
91 | #define U5500_CRYP1_BASE (U5500_PER6_BASE + 0xB000) | ||
92 | #define U5500_CLKRST6_BASE (U5500_PER6_BASE + 0xF000) | ||
93 | |||
94 | #define U5500_GPIOBANK0_BASE U5500_GPIO0_BASE | ||
95 | #define U5500_GPIOBANK1_BASE (U5500_GPIO0_BASE + 0x80) | ||
96 | #define U5500_GPIOBANK2_BASE U5500_GPIO1_BASE | ||
97 | #define U5500_GPIOBANK3_BASE U5500_GPIO2_BASE | ||
98 | #define U5500_GPIOBANK4_BASE U5500_GPIO3_BASE | ||
99 | #define U5500_GPIOBANK5_BASE U5500_GPIO4_BASE | ||
100 | #define U5500_GPIOBANK6_BASE (U5500_GPIO4_BASE + 0x80) | ||
101 | #define U5500_GPIOBANK7_BASE (U5500_GPIO4_BASE + 0x100) | ||
102 | |||
103 | #endif | ||
diff --git a/arch/arm/mach-ux500/include/mach/db8500-regs.h b/arch/arm/mach-ux500/include/mach/db8500-regs.h new file mode 100644 index 000000000000..9169e1e382a3 --- /dev/null +++ b/arch/arm/mach-ux500/include/mach/db8500-regs.h | |||
@@ -0,0 +1,135 @@ | |||
1 | /* | ||
2 | * Copyright (C) ST-Ericsson SA 2010 | ||
3 | * | ||
4 | * License terms: GNU General Public License (GPL) version 2 | ||
5 | */ | ||
6 | |||
7 | #ifndef __MACH_DB8500_REGS_H | ||
8 | #define __MACH_DB8500_REGS_H | ||
9 | |||
10 | #define U8500_PER3_BASE 0x80000000 | ||
11 | #define U8500_STM_BASE 0x80100000 | ||
12 | #define U8500_STM_REG_BASE (U8500_STM_BASE + 0xF000) | ||
13 | #define U8500_PER2_BASE 0x80110000 | ||
14 | #define U8500_PER1_BASE 0x80120000 | ||
15 | #define U8500_B2R2_BASE 0x80130000 | ||
16 | #define U8500_HSEM_BASE 0x80140000 | ||
17 | #define U8500_PER4_BASE 0x80150000 | ||
18 | #define U8500_ICN_BASE 0x81000000 | ||
19 | |||
20 | #define U8500_BOOT_ROM_BASE 0x90000000 | ||
21 | /* ASIC ID is at 0xff4 offset within this region */ | ||
22 | #define U8500_ASIC_ID_BASE 0x9001F000 | ||
23 | |||
24 | #define U8500_PER6_BASE 0xa03c0000 | ||
25 | #define U8500_PER5_BASE 0xa03e0000 | ||
26 | #define U8500_PER7_BASE_ED 0xa03d0000 | ||
27 | |||
28 | #define U8500_SVA_BASE 0xa0100000 | ||
29 | #define U8500_SIA_BASE 0xa0200000 | ||
30 | |||
31 | #define U8500_SGA_BASE 0xa0300000 | ||
32 | #define U8500_MCDE_BASE 0xa0350000 | ||
33 | #define U8500_DMA_BASE_ED 0xa0362000 | ||
34 | #define U8500_DMA_BASE 0x801C0000 /* v1 */ | ||
35 | |||
36 | #define U8500_SBAG_BASE 0xa0390000 | ||
37 | |||
38 | #define U8500_SCU_BASE 0xa0410000 | ||
39 | #define U8500_GIC_CPU_BASE 0xa0410100 | ||
40 | #define U8500_TWD_BASE 0xa0410600 | ||
41 | #define U8500_GIC_DIST_BASE 0xa0411000 | ||
42 | #define U8500_L2CC_BASE 0xa0412000 | ||
43 | |||
44 | #define U8500_MODEM_I2C 0xb7e02000 | ||
45 | |||
46 | #define U8500_GPIO0_BASE (U8500_PER1_BASE + 0xE000) | ||
47 | #define U8500_GPIO1_BASE (U8500_PER3_BASE + 0xE000) | ||
48 | #define U8500_GPIO2_BASE (U8500_PER2_BASE + 0xE000) | ||
49 | #define U8500_GPIO3_BASE (U8500_PER5_BASE + 0x1E000) | ||
50 | |||
51 | /* per7 base addressess */ | ||
52 | #define U8500_CR_BASE_ED (U8500_PER7_BASE_ED + 0x8000) | ||
53 | #define U8500_MTU0_BASE_ED (U8500_PER7_BASE_ED + 0xa000) | ||
54 | #define U8500_MTU1_BASE_ED (U8500_PER7_BASE_ED + 0xb000) | ||
55 | #define U8500_TZPC0_BASE_ED (U8500_PER7_BASE_ED + 0xc000) | ||
56 | #define U8500_CLKRST7_BASE_ED (U8500_PER7_BASE_ED + 0xf000) | ||
57 | |||
58 | #define U8500_UART0_BASE (U8500_PER1_BASE + 0x0000) | ||
59 | #define U8500_UART1_BASE (U8500_PER1_BASE + 0x1000) | ||
60 | |||
61 | /* per6 base addressess */ | ||
62 | #define U8500_RNG_BASE (U8500_PER6_BASE + 0x0000) | ||
63 | #define U8500_PKA_BASE (U8500_PER6_BASE + 0x1000) | ||
64 | #define U8500_PKAM_BASE (U8500_PER6_BASE + 0x2000) | ||
65 | #define U8500_MTU0_BASE (U8500_PER6_BASE + 0x6000) /* v1 */ | ||
66 | #define U8500_MTU1_BASE (U8500_PER6_BASE + 0x7000) /* v1 */ | ||
67 | #define U8500_CR_BASE (U8500_PER6_BASE + 0x8000) /* v1 */ | ||
68 | #define U8500_CRYPTO0_BASE (U8500_PER6_BASE + 0xa000) | ||
69 | #define U8500_CRYPTO1_BASE (U8500_PER6_BASE + 0xb000) | ||
70 | #define U8500_CLKRST6_BASE (U8500_PER6_BASE + 0xf000) | ||
71 | |||
72 | /* per5 base addressess */ | ||
73 | #define U8500_USBOTG_BASE (U8500_PER5_BASE + 0x00000) | ||
74 | #define U8500_CLKRST5_BASE (U8500_PER5_BASE + 0x1f000) | ||
75 | |||
76 | /* per4 base addressess */ | ||
77 | #define U8500_BACKUPRAM0_BASE (U8500_PER4_BASE + 0x00000) | ||
78 | #define U8500_BACKUPRAM1_BASE (U8500_PER4_BASE + 0x01000) | ||
79 | #define U8500_RTT0_BASE (U8500_PER4_BASE + 0x02000) | ||
80 | #define U8500_RTT1_BASE (U8500_PER4_BASE + 0x03000) | ||
81 | #define U8500_RTC_BASE (U8500_PER4_BASE + 0x04000) | ||
82 | #define U8500_SCR_BASE (U8500_PER4_BASE + 0x05000) | ||
83 | #define U8500_DMC_BASE (U8500_PER4_BASE + 0x06000) | ||
84 | #define U8500_PRCMU_BASE (U8500_PER4_BASE + 0x07000) | ||
85 | #define U8500_PRCMU_TCDM_BASE (U8500_PER4_BASE + 0x0f000) | ||
86 | |||
87 | /* per3 base addresses */ | ||
88 | #define U8500_FSMC_BASE (U8500_PER3_BASE + 0x0000) | ||
89 | #define U8500_SSP0_BASE (U8500_PER3_BASE + 0x2000) | ||
90 | #define U8500_SSP1_BASE (U8500_PER3_BASE + 0x3000) | ||
91 | #define U8500_I2C0_BASE (U8500_PER3_BASE + 0x4000) | ||
92 | #define U8500_SDI2_BASE (U8500_PER3_BASE + 0x5000) | ||
93 | #define U8500_SKE_BASE (U8500_PER3_BASE + 0x6000) | ||
94 | #define U8500_UART2_BASE (U8500_PER3_BASE + 0x7000) | ||
95 | #define U8500_SDI5_BASE (U8500_PER3_BASE + 0x8000) | ||
96 | #define U8500_CLKRST3_BASE (U8500_PER3_BASE + 0xf000) | ||
97 | |||
98 | /* per2 base addressess */ | ||
99 | #define U8500_I2C3_BASE (U8500_PER2_BASE + 0x0000) | ||
100 | #define U8500_SPI2_BASE (U8500_PER2_BASE + 0x1000) | ||
101 | #define U8500_SPI1_BASE (U8500_PER2_BASE + 0x2000) | ||
102 | #define U8500_PWL_BASE (U8500_PER2_BASE + 0x3000) | ||
103 | #define U8500_SDI4_BASE (U8500_PER2_BASE + 0x4000) | ||
104 | #define U8500_MSP2_BASE (U8500_PER2_BASE + 0x7000) | ||
105 | #define U8500_SDI1_BASE (U8500_PER2_BASE + 0x8000) | ||
106 | #define U8500_SDI3_BASE (U8500_PER2_BASE + 0x9000) | ||
107 | #define U8500_SPI0_BASE (U8500_PER2_BASE + 0xa000) | ||
108 | #define U8500_HSIR_BASE (U8500_PER2_BASE + 0xb000) | ||
109 | #define U8500_HSIT_BASE (U8500_PER2_BASE + 0xc000) | ||
110 | #define U8500_CLKRST2_BASE (U8500_PER2_BASE + 0xf000) | ||
111 | |||
112 | /* per1 base addresses */ | ||
113 | #define U8500_I2C1_BASE (U8500_PER1_BASE + 0x2000) | ||
114 | #define U8500_MSP0_BASE (U8500_PER1_BASE + 0x3000) | ||
115 | #define U8500_MSP1_BASE (U8500_PER1_BASE + 0x4000) | ||
116 | #define U8500_SDI0_BASE (U8500_PER1_BASE + 0x6000) | ||
117 | #define U8500_I2C2_BASE (U8500_PER1_BASE + 0x8000) | ||
118 | #define U8500_SPI3_BASE (U8500_PER1_BASE + 0x9000) | ||
119 | #define U8500_I2C4_BASE (U8500_PER1_BASE + 0xa000) | ||
120 | #define U8500_SLIM0_BASE (U8500_PER1_BASE + 0xb000) | ||
121 | #define U8500_CLKRST1_BASE (U8500_PER1_BASE + 0xf000) | ||
122 | |||
123 | #define U8500_SHRM_GOP_INTERRUPT_BASE 0xB7C00040 | ||
124 | |||
125 | #define U8500_GPIOBANK0_BASE U8500_GPIO0_BASE | ||
126 | #define U8500_GPIOBANK1_BASE (U8500_GPIO0_BASE + 0x80) | ||
127 | #define U8500_GPIOBANK2_BASE U8500_GPIO1_BASE | ||
128 | #define U8500_GPIOBANK3_BASE (U8500_GPIO1_BASE + 0x80) | ||
129 | #define U8500_GPIOBANK4_BASE (U8500_GPIO1_BASE + 0x100) | ||
130 | #define U8500_GPIOBANK5_BASE (U8500_GPIO1_BASE + 0x180) | ||
131 | #define U8500_GPIOBANK6_BASE U8500_GPIO2_BASE | ||
132 | #define U8500_GPIOBANK7_BASE (U8500_GPIO2_BASE + 0x80) | ||
133 | #define U8500_GPIOBANK8_BASE U8500_GPIO3_BASE | ||
134 | |||
135 | #endif | ||
diff --git a/arch/arm/mach-ux500/include/mach/hardware.h b/arch/arm/mach-ux500/include/mach/hardware.h index d86b3543dd23..1353f1757057 100644 --- a/arch/arm/mach-ux500/include/mach/hardware.h +++ b/arch/arm/mach-ux500/include/mach/hardware.h | |||
@@ -26,119 +26,67 @@ | |||
26 | /* used by some plat-nomadik code */ | 26 | /* used by some plat-nomadik code */ |
27 | #define io_p2v(n) __io_address(n) | 27 | #define io_p2v(n) __io_address(n) |
28 | 28 | ||
29 | /* | 29 | #include <mach/db8500-regs.h> |
30 | * Base address definitions for U8500 Onchip IPs. All the | 30 | #include <mach/db5500-regs.h> |
31 | * peripherals are contained in a single 1 Mbyte region, with | 31 | |
32 | * AHB peripherals at the bottom and APB peripherals at the | 32 | #ifdef CONFIG_UX500_SOC_DB8500 |
33 | * top of the region. PER stands for PERIPHERAL region which | 33 | #define UX500(periph) U8500_##periph##_BASE |
34 | * itself divided into sub regions. | 34 | #elif defined(CONFIG_UX500_SOC_DB5500) |
35 | */ | 35 | #define UX500(periph) U5500_##periph##_BASE |
36 | #define U8500_PER3_BASE 0x80000000 | 36 | #endif |
37 | #define U8500_PER2_BASE 0x80110000 | 37 | |
38 | #define U8500_PER1_BASE 0x80120000 | 38 | #define UX500_BACKUPRAM0_BASE UX500(BACKUPRAM0) |
39 | #define U8500_PER4_BASE 0x80150000 | 39 | #define UX500_BACKUPRAM1_BASE UX500(BACKUPRAM1) |
40 | 40 | #define UX500_B2R2_BASE UX500(B2R2) | |
41 | #define U8500_PER6_BASE 0xa03c0000 | 41 | |
42 | #define U8500_PER5_BASE 0xa03e0000 | 42 | #define UX500_CLKRST1_BASE UX500(CLKRST1) |
43 | #define U8500_PER7_BASE 0xa03d0000 | 43 | #define UX500_CLKRST2_BASE UX500(CLKRST2) |
44 | 44 | #define UX500_CLKRST3_BASE UX500(CLKRST3) | |
45 | #define U8500_SVA_BASE 0xa0100000 | 45 | #define UX500_CLKRST5_BASE UX500(CLKRST5) |
46 | #define U8500_SIA_BASE 0xa0200000 | 46 | #define UX500_CLKRST6_BASE UX500(CLKRST6) |
47 | 47 | ||
48 | #define U8500_SGA_BASE 0xa0300000 | 48 | #define UX500_DMA_BASE UX500(DMA) |
49 | #define U8500_MCDE_BASE 0xa0350000 | 49 | #define UX500_FSMC_BASE UX500(FSMC) |
50 | #define U8500_DMA_BASE 0xa0362000 | 50 | |
51 | 51 | #define UX500_GIC_CPU_BASE UX500(GIC_CPU) | |
52 | #define U8500_SCU_BASE 0xa0410000 | 52 | #define UX500_GIC_DIST_BASE UX500(GIC_DIST) |
53 | #define U8500_GIC_CPU_BASE 0xa0410100 | 53 | |
54 | #define U8500_TWD_BASE 0xa0410600 | 54 | #define UX500_I2C1_BASE UX500(I2C1) |
55 | #define U8500_GIC_DIST_BASE 0xa0411000 | 55 | #define UX500_I2C2_BASE UX500(I2C2) |
56 | #define U8500_L2CC_BASE 0xa0412000 | 56 | #define UX500_I2C3_BASE UX500(I2C3) |
57 | 57 | ||
58 | #define U8500_TWD_SIZE 0x100 | 58 | #define UX500_L2CC_BASE UX500(L2CC) |
59 | 59 | #define UX500_MCDE_BASE UX500(MCDE) | |
60 | /* per7 base addressess */ | 60 | #define UX500_MTU0_BASE UX500(MTU0) |
61 | #define U8500_CR_BASE_ED (U8500_PER7_BASE + 0x8000) | 61 | #define UX500_MTU1_BASE UX500(MTU1) |
62 | #define U8500_MTU0_BASE_ED (U8500_PER7_BASE + 0xa000) | 62 | #define UX500_PRCMU_BASE UX500(PRCMU) |
63 | #define U8500_MTU1_BASE_ED (U8500_PER7_BASE + 0xb000) | 63 | |
64 | #define U8500_TZPC0_BASE_ED (U8500_PER7_BASE + 0xc000) | 64 | #define UX500_RNG_BASE UX500(RNG) |
65 | #define U8500_CLKRST7_BASE_ED (U8500_PER7_BASE + 0xf000) | 65 | #define UX500_RTC_BASE UX500(RTC) |
66 | 66 | ||
67 | /* per6 base addressess */ | 67 | #define UX500_SCU_BASE UX500(SCU) |
68 | #define U8500_RNG_BASE (U8500_PER6_BASE + 0x0000) | 68 | |
69 | #define U8500_PKA_BASE (U8500_PER6_BASE + 0x1000) | 69 | #define UX500_SDI0_BASE UX500(SDI0) |
70 | #define U8500_PKAM_BASE (U8500_PER6_BASE + 0x2000) | 70 | #define UX500_SDI1_BASE UX500(SDI1) |
71 | #define U8500_MTU0_BASE_V1 (U8500_PER6_BASE + 0x6000) | 71 | #define UX500_SDI2_BASE UX500(SDI2) |
72 | #define U8500_MTU1_BASE_V1 (U8500_PER6_BASE + 0x7000) | 72 | #define UX500_SDI3_BASE UX500(SDI3) |
73 | #define U8500_CR_BASE_V1 (U8500_PER6_BASE + 0x8000) | 73 | #define UX500_SDI4_BASE UX500(SDI4) |
74 | #define U8500_CRYPTO0_BASE (U8500_PER6_BASE + 0xa000) | 74 | |
75 | #define U8500_CRYPTO1_BASE (U8500_PER6_BASE + 0xb000) | 75 | #define UX500_SPI0_BASE UX500(SPI0) |
76 | #define U8500_CLKRST6_BASE (U8500_PER6_BASE + 0xf000) | 76 | #define UX500_SPI1_BASE UX500(SPI1) |
77 | 77 | #define UX500_SPI2_BASE UX500(SPI2) | |
78 | /* per5 base addressess */ | 78 | #define UX500_SPI3_BASE UX500(SPI3) |
79 | #define U8500_USBOTG_BASE (U8500_PER5_BASE + 0x00000) | 79 | |
80 | #define U8500_GPIO5_BASE (U8500_PER5_BASE + 0x1e000) | 80 | #define UX500_SIA_BASE UX500(SIA) |
81 | #define U8500_CLKRST5_BASE (U8500_PER5_BASE + 0x1f000) | 81 | #define UX500_SVA_BASE UX500(SVA) |
82 | 82 | ||
83 | /* per4 base addressess */ | 83 | #define UX500_TWD_BASE UX500(TWD) |
84 | #define U8500_BACKUPRAM0_BASE (U8500_PER4_BASE + 0x0000) | 84 | |
85 | #define U8500_BACKUPRAM1_BASE (U8500_PER4_BASE + 0x1000) | 85 | #define UX500_UART0_BASE UX500(UART0) |
86 | #define U8500_RTT0_BASE (U8500_PER4_BASE + 0x2000) | 86 | #define UX500_UART1_BASE UX500(UART1) |
87 | #define U8500_RTT1_BASE (U8500_PER4_BASE + 0x3000) | 87 | #define UX500_UART2_BASE UX500(UART2) |
88 | #define U8500_RTC_BASE (U8500_PER4_BASE + 0x4000) | 88 | |
89 | #define U8500_SCR_BASE (U8500_PER4_BASE + 0x5000) | 89 | #define UX500_USBOTG_BASE UX500(USBOTG) |
90 | #define U8500_DMC_BASE (U8500_PER4_BASE + 0x6000) | ||
91 | #define U8500_PRCMU_BASE (U8500_PER4_BASE + 0x7000) | ||
92 | |||
93 | /* per3 base addressess */ | ||
94 | #define U8500_FSMC_BASE (U8500_PER3_BASE + 0x0000) | ||
95 | #define U8500_SSP0_BASE (U8500_PER3_BASE + 0x2000) | ||
96 | #define U8500_SSP1_BASE (U8500_PER3_BASE + 0x3000) | ||
97 | #define U8500_I2C0_BASE (U8500_PER3_BASE + 0x4000) | ||
98 | #define U8500_SDI2_BASE (U8500_PER3_BASE + 0x5000) | ||
99 | #define U8500_SKE_BASE (U8500_PER3_BASE + 0x6000) | ||
100 | #define U8500_UART2_BASE (U8500_PER3_BASE + 0x7000) | ||
101 | #define U8500_SDI5_BASE (U8500_PER3_BASE + 0x8000) | ||
102 | #define U8500_GPIO3_BASE (U8500_PER3_BASE + 0xe000) | ||
103 | #define U8500_CLKRST3_BASE (U8500_PER3_BASE + 0xf000) | ||
104 | |||
105 | /* per2 base addressess */ | ||
106 | #define U8500_I2C3_BASE (U8500_PER2_BASE + 0x0000) | ||
107 | #define U8500_SPI2_BASE (U8500_PER2_BASE + 0x1000) | ||
108 | #define U8500_SPI1_BASE (U8500_PER2_BASE + 0x2000) | ||
109 | #define U8500_PWL_BASE (U8500_PER2_BASE + 0x3000) | ||
110 | #define U8500_SDI4_BASE (U8500_PER2_BASE + 0x4000) | ||
111 | #define U8500_MSP2_BASE (U8500_PER2_BASE + 0x7000) | ||
112 | #define U8500_SDI1_BASE (U8500_PER2_BASE + 0x8000) | ||
113 | #define U8500_SDI3_BASE (U8500_PER2_BASE + 0x9000) | ||
114 | #define U8500_SPI0_BASE (U8500_PER2_BASE + 0xa000) | ||
115 | #define U8500_HSIR_BASE (U8500_PER2_BASE + 0xb000) | ||
116 | #define U8500_HSIT_BASE (U8500_PER2_BASE + 0xc000) | ||
117 | #define U8500_GPIO2_BASE (U8500_PER2_BASE + 0xe000) | ||
118 | #define U8500_CLKRST2_BASE (U8500_PER2_BASE + 0xf000) | ||
119 | |||
120 | /* per1 base addresses */ | ||
121 | #define U8500_UART0_BASE (U8500_PER1_BASE + 0x0000) | ||
122 | #define U8500_UART1_BASE (U8500_PER1_BASE + 0x1000) | ||
123 | #define U8500_I2C1_BASE (U8500_PER1_BASE + 0x2000) | ||
124 | #define U8500_MSP0_BASE (U8500_PER1_BASE + 0x3000) | ||
125 | #define U8500_MSP1_BASE (U8500_PER1_BASE + 0x4000) | ||
126 | #define U8500_SDI0_BASE (U8500_PER1_BASE + 0x6000) | ||
127 | #define U8500_I2C2_BASE (U8500_PER1_BASE + 0x8000) | ||
128 | #define U8500_SPI3_BASE (U8500_PER1_BASE + 0x9000) | ||
129 | #define U8500_SLIM0_BASE (U8500_PER1_BASE + 0xa000) | ||
130 | #define U8500_GPIO1_BASE (U8500_PER1_BASE + 0xe000) | ||
131 | #define U8500_CLKRST1_BASE (U8500_PER1_BASE + 0xf000) | ||
132 | |||
133 | #define U8500_GPIOBANK0_BASE U8500_GPIO1_BASE | ||
134 | #define U8500_GPIOBANK1_BASE (U8500_GPIO1_BASE + 0x80) | ||
135 | #define U8500_GPIOBANK2_BASE U8500_GPIO3_BASE | ||
136 | #define U8500_GPIOBANK3_BASE (U8500_GPIO3_BASE + 0x80) | ||
137 | #define U8500_GPIOBANK4_BASE (U8500_GPIO3_BASE + 0x100) | ||
138 | #define U8500_GPIOBANK5_BASE (U8500_GPIO3_BASE + 0x180) | ||
139 | #define U8500_GPIOBANK6_BASE U8500_GPIO2_BASE | ||
140 | #define U8500_GPIOBANK7_BASE (U8500_GPIO2_BASE + 0x80) | ||
141 | #define U8500_GPIOBANK8_BASE U8500_GPIO5_BASE | ||
142 | 90 | ||
143 | /* ST-Ericsson modified pl022 id */ | 91 | /* ST-Ericsson modified pl022 id */ |
144 | #define SSP_PER_ID 0x01080022 | 92 | #define SSP_PER_ID 0x01080022 |