12 #include <linux/module.h>
13 #include <linux/kernel.h>
21 #include <mach/addr-map.h>
23 #include <mach/cputype.h>
24 #include <mach/irqs.h>
27 #include <mach/devices.h>
32 #define MFPR_VIRT_BASE (APB_VIRT_BASE + 0x1e000)
34 static struct mfp_addr_map mmp2_addr_map[]
__initdata = {
74 MFP_ADDR_X(TWSI1_SCL, TWSI1_SDA, 0x140),
78 MFP_ADDR(CLK_REQ, 0x160),
99 static int __init mmp2_init(
void)
102 #ifdef CONFIG_CACHE_TAUROS2
115 #define APBC_TIMERS APBC_REG(0x024)
117 static void __init mmp2_timer_init(
void)
119 unsigned long clk_rst;
134 .init = mmp2_timer_init,
138 MMP2_DEVICE(uart1,
"pxa2xx-uart", 0, UART1, 0xd4030000, 0x30, 4, 5);
139 MMP2_DEVICE(uart2,
"pxa2xx-uart", 1, UART2, 0xd4017000, 0x30, 20, 21);
140 MMP2_DEVICE(uart3,
"pxa2xx-uart", 2, UART3, 0xd4018000, 0x30, 22, 23);
141 MMP2_DEVICE(uart4,
"pxa2xx-uart", 3, UART4, 0xd4016000, 0x30, 18, 19);
142 MMP2_DEVICE(twsi1,
"pxa2xx-i2c", 0, TWSI1, 0xd4011000, 0x70);
143 MMP2_DEVICE(twsi2,
"pxa2xx-i2c", 1, TWSI2, 0xd4031000, 0x70);
144 MMP2_DEVICE(twsi3,
"pxa2xx-i2c", 2, TWSI3, 0xd4032000, 0x70);
145 MMP2_DEVICE(twsi4,
"pxa2xx-i2c", 3, TWSI4, 0xd4033000, 0x70);
146 MMP2_DEVICE(twsi5,
"pxa2xx-i2c", 4, TWSI5, 0xd4033800, 0x70);
147 MMP2_DEVICE(twsi6,
"pxa2xx-i2c", 5, TWSI6, 0xd4034000, 0x70);
148 MMP2_DEVICE(nand,
"pxa3xx-nand", -1, NAND, 0xd4283000, 0x100, 28, 29);
151 MMP2_DEVICE(sdh2,
"sdhci-pxav3", 2, MMC3, 0xd4281000, 0x120);
152 MMP2_DEVICE(sdh3,
"sdhci-pxav3", 3, MMC4, 0xd4281800, 0x120);
173 .num_resources =
ARRAY_SIZE(mmp2_resource_gpio),