more changes on original files
[linux-2.4.git] / arch / arm / mach-sa1100 / shannon.c
1 /*
2  * linux/arch/arm/mach-sa1100/shannon.c
3  */
4
5 #include <linux/init.h>
6 #include <linux/kernel.h>
7 #include <linux/tty.h>
8
9 #include <asm/hardware.h>
10 #include <asm/setup.h>
11 #include <asm/irq.h>
12
13 #include <asm/mach/arch.h>
14 #include <asm/mach/map.h>
15 #include <asm/mach/serial_sa1100.h>
16
17 #include "generic.h"
18
19
20 static struct map_desc shannon_io_desc[] __initdata = {
21  /* virtual     physical    length      domain     r  w  c  b */
22   { 0xe8000000, 0x00000000, 0x00400000, DOMAIN_IO, 0, 1, 0, 0 }, /* main flash memory */
23   LAST_DESC
24 };
25
26 static void __init shannon_map_io(void)
27 {
28         sa1100_map_io();
29         iotable_init(shannon_io_desc);
30
31         sa1100_register_uart(0, 3);
32         sa1100_register_uart(1, 1);
33         Ser1SDCR0 |= SDCR0_SUS;
34         GAFR |= (GPIO_UART_TXD | GPIO_UART_RXD);
35         GPDR |= GPIO_UART_TXD;
36         GPDR &= ~GPIO_UART_RXD;
37         PPAR |= PPAR_UPR;
38
39         set_GPIO_IRQ_edge(SHANNON_GPIO_IRQ_CODEC);
40 }
41
42 MACHINE_START(SHANNON, "Shannon (AKA: Tuxscreen)")
43         BOOT_MEM(0xc0000000, 0x80000000, 0xf8000000)
44         BOOT_PARAMS(0xc0000100)
45         MAPIO(shannon_map_io)
46         INITIRQ(sa1100_init_irq)
47 MACHINE_END