ARM: Merge next-s3c24xx-dev-rtp
[linux-2.6.git] / arch / arm / mach-s3c2440 / mach-anubis.c
index c3705b9..62a4c3e 100644 (file)
@@ -139,7 +139,7 @@ static int external_map[]   = { 2 };
 static int chip0_map[]      = { 0 };
 static int chip1_map[]      = { 1 };
 
-static struct mtd_partition anubis_default_nand_part[] = {
+static struct mtd_partition __initdata anubis_default_nand_part[] = {
        [0] = {
                .name   = "Boot Agent",
                .size   = SZ_16K,
@@ -162,7 +162,7 @@ static struct mtd_partition anubis_default_nand_part[] = {
        }
 };
 
-static struct mtd_partition anubis_default_nand_part_large[] = {
+static struct mtd_partition __initdata anubis_default_nand_part_large[] = {
        [0] = {
                .name   = "Boot Agent",
                .size   = SZ_128K,
@@ -192,7 +192,7 @@ static struct mtd_partition anubis_default_nand_part_large[] = {
  * socket.
 */
 
-static struct s3c2410_nand_set anubis_nand_sets[] = {
+static struct s3c2410_nand_set __initdata anubis_nand_sets[] = {
        [1] = {
                .name           = "External",
                .nr_chips       = 1,
@@ -234,7 +234,7 @@ static void anubis_nand_select(struct s3c2410_nand_set *set, int slot)
        __raw_writeb(tmp, ANUBIS_VA_CTRL1);
 }
 
-static struct s3c2410_platform_nand anubis_nand_info = {
+static struct s3c2410_platform_nand __initdata anubis_nand_info = {
        .tacls          = 25,
        .twrph0         = 55,
        .twrph1         = 40,
@@ -466,8 +466,6 @@ static void __init anubis_map_io(void)
 
        s3c24xx_register_clocks(anubis_clocks, ARRAY_SIZE(anubis_clocks));
 
-       s3c_device_nand.dev.platform_data = &anubis_nand_info;
-
        s3c24xx_init_io(anubis_iodesc, ARRAY_SIZE(anubis_iodesc));
        s3c24xx_init_clocks(0);
        s3c24xx_init_uarts(anubis_uartcfgs, ARRAY_SIZE(anubis_uartcfgs));
@@ -488,7 +486,9 @@ static void __init anubis_map_io(void)
 static void __init anubis_init(void)
 {
        s3c_i2c0_set_platdata(NULL);
+       s3c_nand_set_platdata(&anubis_nand_info);
        simtec_audio_add(NULL, false, &anubis_audio);
+
        platform_add_devices(anubis_devices, ARRAY_SIZE(anubis_devices));
 
        i2c_register_board_info(0, anubis_i2c_devs,