24 #include <linux/device.h>
32 #include <mach/hardware.h>
35 #include <asm/pgtable.h>
45 #include <mach/irqs.h>
81 #ifdef CONFIG_DEBUG_LL
91 static struct map_desc realview_eb11mp_io_desc[] __initdata = {
105 static void __init realview_eb_map_io(
void)
137 #define GPIO2_IRQ { IRQ_EB_GPIO2 }
138 #define GPIO3_IRQ { IRQ_EB_GPIO3 }
140 #define AACI_IRQ { IRQ_EB_AACI }
141 #define MMCI0_IRQ { IRQ_EB_MMCI0A, IRQ_EB_MMCI0B }
142 #define KMI0_IRQ { IRQ_EB_KMI0 }
143 #define KMI1_IRQ { IRQ_EB_KMI1 }
148 #define EB_SMC_IRQ { }
150 #define EB_CLCD_IRQ { IRQ_EB_CLCD }
151 #define DMAC_IRQ { IRQ_EB_DMA }
157 #define EB_WATCHDOG_IRQ { IRQ_EB_WDOG }
158 #define EB_GPIO0_IRQ { IRQ_EB_GPIO0 }
159 #define GPIO1_IRQ { IRQ_EB_GPIO1 }
160 #define EB_RTC_IRQ { IRQ_EB_RTC }
165 #define SCI_IRQ { IRQ_EB_SCI }
166 #define EB_UART0_IRQ { IRQ_EB_UART0 }
167 #define EB_UART1_IRQ { IRQ_EB_UART1 }
168 #define EB_UART2_IRQ { IRQ_EB_UART2 }
169 #define EB_UART3_IRQ { IRQ_EB_UART3 }
170 #define EB_SSP_IRQ { IRQ_EB_SSP }
185 APB_DEVICE(gpio0,
"dev:gpio0", EB_GPIO0, &gpio0_plat_data);
195 static struct amba_device *amba_devs[] __initdata = {
220 static struct resource realview_eb_flash_resource = {
226 static struct resource realview_eb_eth_resources[] = {
243 static int eth_device_register(
void)
252 idrev =
readl(eth_addr + 0x50);
253 if ((idrev & 0xFFFF0000) != 0x01180000)
261 static struct resource realview_eb_isp1761_resources[] = {
274 static struct resource pmu_resources[] = {
301 .resource = pmu_resources,
304 static struct resource char_lcd_resources[] = {
318 .name =
"arm-charlcd",
320 .num_resources =
ARRAY_SIZE(char_lcd_resources),
321 .resource = char_lcd_resources,
327 unsigned int pldctrl;
332 pldctrl |= 0x00800000;
340 #ifndef CONFIG_REALVIEW_EB_ARM11MP_REVB
356 static void realview_eb11mp_fixup(
void)
385 #ifdef CONFIG_HAVE_ARM_TWD
395 pr_err(
"twd_local_timer_register failed %d\n", err);
399 #define realview_eb_twd_init() do { } while(0)
402 static void __init realview_eb_timer_init(
void)
421 static struct sys_timer realview_eb_timer = {
422 .init = realview_eb_timer_init,
425 static void realview_eb_restart(
char mode,
const char *
cmd)
440 static void __init realview_eb_init(
void)
445 realview_eb11mp_fixup();
447 #ifdef CONFIG_CACHE_L2X0
458 eth_device_register();
469 .atag_offset = 0x100,
471 .map_io = realview_eb_map_io,
474 .timer = &realview_eb_timer,
476 .init_machine = realview_eb_init,
477 #ifdef CONFIG_ZONE_DMA
480 .restart = realview_eb_restart,