]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - arch/arm/mach-s3c2410/mach-osiris.c
[ARM] 3557/1: S3C24XX: centralise and cleanup uart registration
[linux-2.6-omap-h63xx.git] / arch / arm / mach-s3c2410 / mach-osiris.c
index 72083e645e770b750554297e0ba7ceb0170be229..858fd03c6bc524d978546e2e1779fa771ff492cd 100644 (file)
@@ -95,8 +95,7 @@ static struct s3c24xx_uart_clksrc osiris_serial_clocks[] = {
        }
 };
 
-
-static struct s3c2410_uartcfg osiris_uartcfgs[] = {
+static struct s3c2410_uartcfg osiris_uartcfgs[] __initdata = {
        [0] = {
                .hwport      = 0,
                .flags       = 0,
@@ -107,7 +106,7 @@ static struct s3c2410_uartcfg osiris_uartcfgs[] = {
                .clocks_size = ARRAY_SIZE(osiris_serial_clocks)
        },
        [1] = {
-               .hwport      = 2,
+               .hwport      = 1,
                .flags       = 0,
                .ucon        = UCON,
                .ulcon       = ULCON,
@@ -123,7 +122,7 @@ static int external_map[]   = { 2 };
 static int chip0_map[]      = { 0 };
 static int chip1_map[]      = { 1 };
 
-struct mtd_partition osiris_default_nand_part[] = {
+static struct mtd_partition osiris_default_nand_part[] = {
        [0] = {
                .name   = "Boot Agent",
                .size   = SZ_16K,
@@ -249,8 +248,10 @@ static struct s3c24xx_board osiris_board __initdata = {
        .clocks_count  = ARRAY_SIZE(osiris_clocks)
 };
 
-void __init osiris_map_io(void)
+static void __init osiris_map_io(void)
 {
+       unsigned long flags;
+
        /* initialise the clocks */
 
        s3c24xx_dclk0.parent = NULL;
@@ -272,7 +273,10 @@ void __init osiris_map_io(void)
        s3c24xx_set_board(&osiris_board);
 
        /* fix bus configuration (nBE settings wrong on ABLE pre v2.20) */
+
+       local_irq_save(flags);
        __raw_writel(__raw_readl(S3C2410_BWSCON) | S3C2410_BWSCON_ST1 | S3C2410_BWSCON_ST2 | S3C2410_BWSCON_ST3 | S3C2410_BWSCON_ST4 | S3C2410_BWSCON_ST5, S3C2410_BWSCON);
+       local_irq_restore(flags);
 
        /* write-protect line to the NAND */
        s3c2410_gpio_setpin(S3C2410_GPA0, 1);
@@ -280,7 +284,6 @@ void __init osiris_map_io(void)
 
 MACHINE_START(OSIRIS, "Simtec-OSIRIS")
        /* Maintainer: Ben Dooks <ben@simtec.co.uk> */
-       .phys_ram       = S3C2410_SDRAM_PA,
        .phys_io        = S3C2410_PA_UART,
        .io_pg_offst    = (((u32)S3C24XX_VA_UART) >> 18) & 0xfffc,
        .boot_params    = S3C2410_SDRAM_PA + 0x100,