OSDN Git Service

sh: Consolidate rsk7203/7201 in to a new mach-rsk.
authorPaul Mundt <lethal@linux-sh.org>
Mon, 8 Dec 2008 05:32:03 +0000 (14:32 +0900)
committerPaul Mundt <lethal@linux-sh.org>
Mon, 22 Dec 2008 09:44:02 +0000 (18:44 +0900)
RSK+ platforms have quite a few characteristics in common, so roll them
together in to a shiny new RSK mach-type.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
arch/sh/Makefile
arch/sh/boards/Kconfig
arch/sh/boards/Makefile
arch/sh/boards/mach-rsk/Kconfig [new file with mode: 0644]
arch/sh/boards/mach-rsk/Makefile [new file with mode: 0644]
arch/sh/boards/mach-rsk/devices-rsk7203.c [moved from arch/sh/boards/board-rsk7203.c with 58% similarity]
arch/sh/boards/mach-rsk/setup.c [moved from arch/sh/boards/board-rsk7201.c with 73% similarity]
arch/sh/tools/mach-types

index ad00961..d56889e 100644 (file)
@@ -135,6 +135,7 @@ machdir-$(CONFIG_SH_LANDISK)                        += mach-landisk
 machdir-$(CONFIG_SH_TITAN)                     += mach-titan
 machdir-$(CONFIG_SH_LBOX_RE2)                  += mach-lboxre2
 machdir-$(CONFIG_SH_CAYMAN)                    += mach-cayman
+machdir-$(CONFIG_SH_RSK)                       += mach-rsk
 
 ifneq ($(machdir-y),)
 core-y += $(addprefix arch/sh/boards/, \
index 2bf3f6c..8619147 100644 (file)
@@ -126,14 +126,12 @@ config SH_RTS7751R2D
          Select RTS7751R2D if configuring for a Renesas Technology
          Sales SH-Graphics board.
 
-config SH_RSK7201
-       bool "RSK7201"
-       depends on CPU_SUBTYPE_SH7201
-
-config SH_RSK7203
-       bool "RSK7203"
-       select GENERIC_GPIO
-       depends on CPU_SUBTYPE_SH7203
+config SH_RSK
+       bool "Renesas Starter Kit"
+       depends on CPU_SUBTYPE_SH7201 || CPU_SUBTYPE_SH7203
+       help
+        Select this option if configuring for any of the RSK+ MCU
+        evaluation platforms.
 
 config SH_SDK7780
        bool "SDK7780R3"
@@ -257,6 +255,7 @@ source "arch/sh/boards/mach-r2d/Kconfig"
 source "arch/sh/boards/mach-highlander/Kconfig"
 source "arch/sh/boards/mach-sdk7780/Kconfig"
 source "arch/sh/boards/mach-migor/Kconfig"
+source "arch/sh/boards/mach-rsk/Kconfig"
 
 if SH_MAGIC_PANEL_R2
 
index ce4d4d4..269ae2b 100644 (file)
@@ -3,8 +3,6 @@
 #
 obj-$(CONFIG_SH_AP325RXA)      += board-ap325rxa.o
 obj-$(CONFIG_SH_MAGIC_PANEL_R2)        += board-magicpanelr2.o
-obj-$(CONFIG_SH_RSK7201)       += board-rsk7201.o
-obj-$(CONFIG_SH_RSK7203)       += board-rsk7203.o
 obj-$(CONFIG_SH_SH7785LCR)     += board-sh7785lcr.o
 obj-$(CONFIG_SH_SHMIN)         += board-shmin.o
 obj-$(CONFIG_SH_EDOSK7760)     += board-edosk7760.o
diff --git a/arch/sh/boards/mach-rsk/Kconfig b/arch/sh/boards/mach-rsk/Kconfig
new file mode 100644 (file)
index 0000000..bff095d
--- /dev/null
@@ -0,0 +1,18 @@
+if SH_RSK
+
+choice
+       prompt "RSK+ options"
+       default SH_RSK7203
+
+config SH_RSK7201
+       bool "RSK7201"
+       depends on CPU_SUBTYPE_SH7201
+
+config SH_RSK7203
+       bool "RSK7203"
+       select GENERIC_GPIO
+       depends on CPU_SUBTYPE_SH7203
+
+endchoice
+
+endif
diff --git a/arch/sh/boards/mach-rsk/Makefile b/arch/sh/boards/mach-rsk/Makefile
new file mode 100644 (file)
index 0000000..498da75
--- /dev/null
@@ -0,0 +1,2 @@
+obj-y                          := setup.o
+obj-$(CONFIG_SH_RSK7203)       += devices-rsk7203.o
similarity index 58%
rename from arch/sh/boards/board-rsk7203.c
rename to arch/sh/boards/mach-rsk/devices-rsk7203.c
index 58266f0..73f743b 100644 (file)
@@ -50,73 +50,6 @@ static struct platform_device smc911x_device = {
        },
 };
 
-static const char *probes[] = { "cmdlinepart", NULL };
-
-static struct mtd_partition *parsed_partitions;
-
-static struct mtd_partition rsk7203_partitions[] = {
-       {
-               .name           = "Bootloader",
-               .offset         = 0x00000000,
-               .size           = 0x00040000,
-               .mask_flags     = MTD_WRITEABLE,
-       }, {
-               .name           = "Kernel",
-               .offset         = MTDPART_OFS_NXTBLK,
-               .size           = 0x001c0000,
-       }, {
-               .name           = "Flash_FS",
-               .offset         = MTDPART_OFS_NXTBLK,
-               .size           = MTDPART_SIZ_FULL,
-       }
-};
-
-static struct physmap_flash_data flash_data = {
-       .width          = 2,
-};
-
-static struct resource flash_resource = {
-       .start          = 0x20000000,
-       .end            = 0x20400000,
-       .flags          = IORESOURCE_MEM,
-};
-
-static struct platform_device flash_device = {
-       .name           = "physmap-flash",
-       .id             = -1,
-       .resource       = &flash_resource,
-       .num_resources  = 1,
-       .dev            = {
-               .platform_data = &flash_data,
-       },
-};
-
-static struct mtd_info *flash_mtd;
-
-static struct map_info rsk7203_flash_map = {
-       .name           = "RSK+ Flash",
-       .size           = 0x400000,
-       .bankwidth      = 2,
-};
-
-static void __init set_mtd_partitions(void)
-{
-       int nr_parts = 0;
-
-       simple_map_init(&rsk7203_flash_map);
-       flash_mtd = do_map_probe("cfi_probe", &rsk7203_flash_map);
-       nr_parts = parse_mtd_partitions(flash_mtd, probes,
-                                       &parsed_partitions, 0);
-       /* If there is no partition table, used the hard coded table */
-       if (nr_parts <= 0) {
-               flash_data.parts = rsk7203_partitions;
-               flash_data.nr_parts = ARRAY_SIZE(rsk7203_partitions);
-       } else {
-               flash_data.nr_parts = nr_parts;
-               flash_data.parts = parsed_partitions;
-       }
-}
-
 static struct gpio_led rsk7203_gpio_leds[] = {
        {
                .name                   = "green",
@@ -155,7 +88,6 @@ static struct platform_device led_device = {
 
 static struct platform_device *rsk7203_devices[] __initdata = {
        &smc911x_device,
-       &flash_device,
        &led_device,
 };
 
@@ -165,15 +97,7 @@ static int __init rsk7203_devices_setup(void)
        gpio_request(GPIO_FN_TXD0, NULL);
        gpio_request(GPIO_FN_RXD0, NULL);
 
-       set_mtd_partitions();
        return platform_add_devices(rsk7203_devices,
                                    ARRAY_SIZE(rsk7203_devices));
 }
 device_initcall(rsk7203_devices_setup);
-
-/*
- * The Machine Vector
- */
-static struct sh_machine_vector mv_rsk7203 __initmv = {
-       .mv_name        = "RSK+7203",
-};
similarity index 73%
rename from arch/sh/boards/board-rsk7201.c
rename to arch/sh/boards/mach-rsk/setup.c
index 6fcf644..af64d03 100644 (file)
@@ -1,6 +1,7 @@
 /*
- * Renesas Technology Europe RSK+ 7201 Support.
+ * Renesas Technology Europe RSK+ Support.
  *
+ * Copyright (C) 2008 Paul Mundt
  * Copyright (C) 2008 Peter Griffin <pgriffin@mpc-data.co.uk>
  *
  * This file is subject to the terms and conditions of the GNU General Public
@@ -22,7 +23,7 @@ static const char *probes[] = { "cmdlinepart", NULL };
 
 static struct mtd_partition *parsed_partitions;
 
-static struct mtd_partition rsk7201_partitions[] = {
+static struct mtd_partition rsk_partitions[] = {
        {
                .name           = "Bootloader",
                .offset         = 0x00000000,
@@ -61,7 +62,7 @@ static struct platform_device flash_device = {
 
 static struct mtd_info *flash_mtd;
 
-static struct map_info rsk7201_flash_map = {
+static struct map_info rsk_flash_map = {
        .name           = "RSK+ Flash",
        .size           = 0x400000,
        .bankwidth      = 2,
@@ -71,35 +72,35 @@ static void __init set_mtd_partitions(void)
 {
        int nr_parts = 0;
 
-       simple_map_init(&rsk7201_flash_map);
-       flash_mtd = do_map_probe("cfi_probe", &rsk7201_flash_map);
+       simple_map_init(&rsk_flash_map);
+       flash_mtd = do_map_probe("cfi_probe", &rsk_flash_map);
        nr_parts = parse_mtd_partitions(flash_mtd, probes,
                                        &parsed_partitions, 0);
        /* If there is no partition table, used the hard coded table */
        if (nr_parts <= 0) {
-               flash_data.parts = rsk7201_partitions;
-               flash_data.nr_parts = ARRAY_SIZE(rsk7201_partitions);
+               flash_data.parts = rsk_partitions;
+               flash_data.nr_parts = ARRAY_SIZE(rsk_partitions);
        } else {
                flash_data.nr_parts = nr_parts;
                flash_data.parts = parsed_partitions;
        }
 }
 
-static struct platform_device *rsk7201_devices[] __initdata = {
+static struct platform_device *rsk_devices[] __initdata = {
        &flash_device,
 };
 
-static int __init rsk7201_devices_setup(void)
+static int __init rsk_devices_setup(void)
 {
        set_mtd_partitions();
-       return platform_add_devices(rsk7201_devices,
-                                   ARRAY_SIZE(rsk7201_devices));
+       return platform_add_devices(rsk_devices,
+                                   ARRAY_SIZE(rsk_devices));
 }
-device_initcall(rsk7201_devices_setup);
+device_initcall(rsk_devices_setup);
 
 /*
  * The Machine Vector
  */
-static struct sh_machine_vector mv_rsk7201 __initmv = {
-       .mv_name        = "RSK+7201",
+static struct sh_machine_vector mv_rsk __initmv = {
+       .mv_name        = "RSK+",
 };
index 69a9aee..284b7e8 100644 (file)
@@ -8,6 +8,7 @@
 SE                     SH_SOLUTION_ENGINE
 HIGHLANDER             SH_HIGHLANDER
 RTS7751R2D             SH_RTS7751R2D
+RSK                    SH_RSK
 
 #
 # List of companion chips / MFDs.