diff options
author | Paul Mundt <lethal@linux-sh.org> | 2008-12-08 00:32:03 -0500 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2008-12-22 04:44:02 -0500 |
commit | ea0aac1e1327476d2f6a38f08145281237cf1b03 (patch) | |
tree | e4bc1b726cd4d17145a69edca84fe9b5db6c6d5c | |
parent | b5cfeac990cc164a3d3422aab88ac5b138fa822d (diff) |
sh: Consolidate rsk7203/7201 in to a new mach-rsk.
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>
-rw-r--r-- | arch/sh/Makefile | 1 | ||||
-rw-r--r-- | arch/sh/boards/Kconfig | 15 | ||||
-rw-r--r-- | arch/sh/boards/Makefile | 2 | ||||
-rw-r--r-- | arch/sh/boards/mach-rsk/Kconfig | 18 | ||||
-rw-r--r-- | arch/sh/boards/mach-rsk/Makefile | 2 | ||||
-rw-r--r-- | arch/sh/boards/mach-rsk/devices-rsk7203.c (renamed from arch/sh/boards/board-rsk7203.c) | 76 | ||||
-rw-r--r-- | arch/sh/boards/mach-rsk/setup.c (renamed from arch/sh/boards/board-rsk7201.c) | 29 | ||||
-rw-r--r-- | arch/sh/tools/mach-types | 1 |
8 files changed, 44 insertions, 100 deletions
diff --git a/arch/sh/Makefile b/arch/sh/Makefile index ad0096151781..d56889e62a90 100644 --- a/arch/sh/Makefile +++ b/arch/sh/Makefile | |||
@@ -135,6 +135,7 @@ machdir-$(CONFIG_SH_LANDISK) += mach-landisk | |||
135 | machdir-$(CONFIG_SH_TITAN) += mach-titan | 135 | machdir-$(CONFIG_SH_TITAN) += mach-titan |
136 | machdir-$(CONFIG_SH_LBOX_RE2) += mach-lboxre2 | 136 | machdir-$(CONFIG_SH_LBOX_RE2) += mach-lboxre2 |
137 | machdir-$(CONFIG_SH_CAYMAN) += mach-cayman | 137 | machdir-$(CONFIG_SH_CAYMAN) += mach-cayman |
138 | machdir-$(CONFIG_SH_RSK) += mach-rsk | ||
138 | 139 | ||
139 | ifneq ($(machdir-y),) | 140 | ifneq ($(machdir-y),) |
140 | core-y += $(addprefix arch/sh/boards/, \ | 141 | core-y += $(addprefix arch/sh/boards/, \ |
diff --git a/arch/sh/boards/Kconfig b/arch/sh/boards/Kconfig index 2bf3f6c73c12..861914747e4e 100644 --- a/arch/sh/boards/Kconfig +++ b/arch/sh/boards/Kconfig | |||
@@ -126,14 +126,12 @@ config SH_RTS7751R2D | |||
126 | Select RTS7751R2D if configuring for a Renesas Technology | 126 | Select RTS7751R2D if configuring for a Renesas Technology |
127 | Sales SH-Graphics board. | 127 | Sales SH-Graphics board. |
128 | 128 | ||
129 | config SH_RSK7201 | 129 | config SH_RSK |
130 | bool "RSK7201" | 130 | bool "Renesas Starter Kit" |
131 | depends on CPU_SUBTYPE_SH7201 | 131 | depends on CPU_SUBTYPE_SH7201 || CPU_SUBTYPE_SH7203 |
132 | 132 | help | |
133 | config SH_RSK7203 | 133 | Select this option if configuring for any of the RSK+ MCU |
134 | bool "RSK7203" | 134 | evaluation platforms. |
135 | select GENERIC_GPIO | ||
136 | depends on CPU_SUBTYPE_SH7203 | ||
137 | 135 | ||
138 | config SH_SDK7780 | 136 | config SH_SDK7780 |
139 | bool "SDK7780R3" | 137 | bool "SDK7780R3" |
@@ -257,6 +255,7 @@ source "arch/sh/boards/mach-r2d/Kconfig" | |||
257 | source "arch/sh/boards/mach-highlander/Kconfig" | 255 | source "arch/sh/boards/mach-highlander/Kconfig" |
258 | source "arch/sh/boards/mach-sdk7780/Kconfig" | 256 | source "arch/sh/boards/mach-sdk7780/Kconfig" |
259 | source "arch/sh/boards/mach-migor/Kconfig" | 257 | source "arch/sh/boards/mach-migor/Kconfig" |
258 | source "arch/sh/boards/mach-rsk/Kconfig" | ||
260 | 259 | ||
261 | if SH_MAGIC_PANEL_R2 | 260 | if SH_MAGIC_PANEL_R2 |
262 | 261 | ||
diff --git a/arch/sh/boards/Makefile b/arch/sh/boards/Makefile index ce4d4d465185..269ae2be49ef 100644 --- a/arch/sh/boards/Makefile +++ b/arch/sh/boards/Makefile | |||
@@ -3,8 +3,6 @@ | |||
3 | # | 3 | # |
4 | obj-$(CONFIG_SH_AP325RXA) += board-ap325rxa.o | 4 | obj-$(CONFIG_SH_AP325RXA) += board-ap325rxa.o |
5 | obj-$(CONFIG_SH_MAGIC_PANEL_R2) += board-magicpanelr2.o | 5 | obj-$(CONFIG_SH_MAGIC_PANEL_R2) += board-magicpanelr2.o |
6 | obj-$(CONFIG_SH_RSK7201) += board-rsk7201.o | ||
7 | obj-$(CONFIG_SH_RSK7203) += board-rsk7203.o | ||
8 | obj-$(CONFIG_SH_SH7785LCR) += board-sh7785lcr.o | 6 | obj-$(CONFIG_SH_SH7785LCR) += board-sh7785lcr.o |
9 | obj-$(CONFIG_SH_SHMIN) += board-shmin.o | 7 | obj-$(CONFIG_SH_SHMIN) += board-shmin.o |
10 | obj-$(CONFIG_SH_EDOSK7760) += board-edosk7760.o | 8 | 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 index 000000000000..bff095dffc02 --- /dev/null +++ b/arch/sh/boards/mach-rsk/Kconfig | |||
@@ -0,0 +1,18 @@ | |||
1 | if SH_RSK | ||
2 | |||
3 | choice | ||
4 | prompt "RSK+ options" | ||
5 | default SH_RSK7203 | ||
6 | |||
7 | config SH_RSK7201 | ||
8 | bool "RSK7201" | ||
9 | depends on CPU_SUBTYPE_SH7201 | ||
10 | |||
11 | config SH_RSK7203 | ||
12 | bool "RSK7203" | ||
13 | select GENERIC_GPIO | ||
14 | depends on CPU_SUBTYPE_SH7203 | ||
15 | |||
16 | endchoice | ||
17 | |||
18 | endif | ||
diff --git a/arch/sh/boards/mach-rsk/Makefile b/arch/sh/boards/mach-rsk/Makefile new file mode 100644 index 000000000000..498da75ce38b --- /dev/null +++ b/arch/sh/boards/mach-rsk/Makefile | |||
@@ -0,0 +1,2 @@ | |||
1 | obj-y := setup.o | ||
2 | obj-$(CONFIG_SH_RSK7203) += devices-rsk7203.o | ||
diff --git a/arch/sh/boards/board-rsk7203.c b/arch/sh/boards/mach-rsk/devices-rsk7203.c index 58266f06134a..73f743b9be8d 100644 --- a/arch/sh/boards/board-rsk7203.c +++ b/arch/sh/boards/mach-rsk/devices-rsk7203.c | |||
@@ -50,73 +50,6 @@ static struct platform_device smc911x_device = { | |||
50 | }, | 50 | }, |
51 | }; | 51 | }; |
52 | 52 | ||
53 | static const char *probes[] = { "cmdlinepart", NULL }; | ||
54 | |||
55 | static struct mtd_partition *parsed_partitions; | ||
56 | |||
57 | static struct mtd_partition rsk7203_partitions[] = { | ||
58 | { | ||
59 | .name = "Bootloader", | ||
60 | .offset = 0x00000000, | ||
61 | .size = 0x00040000, | ||
62 | .mask_flags = MTD_WRITEABLE, | ||
63 | }, { | ||
64 | .name = "Kernel", | ||
65 | .offset = MTDPART_OFS_NXTBLK, | ||
66 | .size = 0x001c0000, | ||
67 | }, { | ||
68 | .name = "Flash_FS", | ||
69 | .offset = MTDPART_OFS_NXTBLK, | ||
70 | .size = MTDPART_SIZ_FULL, | ||
71 | } | ||
72 | }; | ||
73 | |||
74 | static struct physmap_flash_data flash_data = { | ||
75 | .width = 2, | ||
76 | }; | ||
77 | |||
78 | static struct resource flash_resource = { | ||
79 | .start = 0x20000000, | ||
80 | .end = 0x20400000, | ||
81 | .flags = IORESOURCE_MEM, | ||
82 | }; | ||
83 | |||
84 | static struct platform_device flash_device = { | ||
85 | .name = "physmap-flash", | ||
86 | .id = -1, | ||
87 | .resource = &flash_resource, | ||
88 | .num_resources = 1, | ||
89 | .dev = { | ||
90 | .platform_data = &flash_data, | ||
91 | }, | ||
92 | }; | ||
93 | |||
94 | static struct mtd_info *flash_mtd; | ||
95 | |||
96 | static struct map_info rsk7203_flash_map = { | ||
97 | .name = "RSK+ Flash", | ||
98 | .size = 0x400000, | ||
99 | .bankwidth = 2, | ||
100 | }; | ||
101 | |||
102 | static void __init set_mtd_partitions(void) | ||
103 | { | ||
104 | int nr_parts = 0; | ||
105 | |||
106 | simple_map_init(&rsk7203_flash_map); | ||
107 | flash_mtd = do_map_probe("cfi_probe", &rsk7203_flash_map); | ||
108 | nr_parts = parse_mtd_partitions(flash_mtd, probes, | ||
109 | &parsed_partitions, 0); | ||
110 | /* If there is no partition table, used the hard coded table */ | ||
111 | if (nr_parts <= 0) { | ||
112 | flash_data.parts = rsk7203_partitions; | ||
113 | flash_data.nr_parts = ARRAY_SIZE(rsk7203_partitions); | ||
114 | } else { | ||
115 | flash_data.nr_parts = nr_parts; | ||
116 | flash_data.parts = parsed_partitions; | ||
117 | } | ||
118 | } | ||
119 | |||
120 | static struct gpio_led rsk7203_gpio_leds[] = { | 53 | static struct gpio_led rsk7203_gpio_leds[] = { |
121 | { | 54 | { |
122 | .name = "green", | 55 | .name = "green", |
@@ -155,7 +88,6 @@ static struct platform_device led_device = { | |||
155 | 88 | ||
156 | static struct platform_device *rsk7203_devices[] __initdata = { | 89 | static struct platform_device *rsk7203_devices[] __initdata = { |
157 | &smc911x_device, | 90 | &smc911x_device, |
158 | &flash_device, | ||
159 | &led_device, | 91 | &led_device, |
160 | }; | 92 | }; |
161 | 93 | ||
@@ -165,15 +97,7 @@ static int __init rsk7203_devices_setup(void) | |||
165 | gpio_request(GPIO_FN_TXD0, NULL); | 97 | gpio_request(GPIO_FN_TXD0, NULL); |
166 | gpio_request(GPIO_FN_RXD0, NULL); | 98 | gpio_request(GPIO_FN_RXD0, NULL); |
167 | 99 | ||
168 | set_mtd_partitions(); | ||
169 | return platform_add_devices(rsk7203_devices, | 100 | return platform_add_devices(rsk7203_devices, |
170 | ARRAY_SIZE(rsk7203_devices)); | 101 | ARRAY_SIZE(rsk7203_devices)); |
171 | } | 102 | } |
172 | device_initcall(rsk7203_devices_setup); | 103 | device_initcall(rsk7203_devices_setup); |
173 | |||
174 | /* | ||
175 | * The Machine Vector | ||
176 | */ | ||
177 | static struct sh_machine_vector mv_rsk7203 __initmv = { | ||
178 | .mv_name = "RSK+7203", | ||
179 | }; | ||
diff --git a/arch/sh/boards/board-rsk7201.c b/arch/sh/boards/mach-rsk/setup.c index 6fcf64453752..af64d030a5c7 100644 --- a/arch/sh/boards/board-rsk7201.c +++ b/arch/sh/boards/mach-rsk/setup.c | |||
@@ -1,6 +1,7 @@ | |||
1 | /* | 1 | /* |
2 | * Renesas Technology Europe RSK+ 7201 Support. | 2 | * Renesas Technology Europe RSK+ Support. |
3 | * | 3 | * |
4 | * Copyright (C) 2008 Paul Mundt | ||
4 | * Copyright (C) 2008 Peter Griffin <pgriffin@mpc-data.co.uk> | 5 | * Copyright (C) 2008 Peter Griffin <pgriffin@mpc-data.co.uk> |
5 | * | 6 | * |
6 | * This file is subject to the terms and conditions of the GNU General Public | 7 | * This file is subject to the terms and conditions of the GNU General Public |
@@ -22,7 +23,7 @@ static const char *probes[] = { "cmdlinepart", NULL }; | |||
22 | 23 | ||
23 | static struct mtd_partition *parsed_partitions; | 24 | static struct mtd_partition *parsed_partitions; |
24 | 25 | ||
25 | static struct mtd_partition rsk7201_partitions[] = { | 26 | static struct mtd_partition rsk_partitions[] = { |
26 | { | 27 | { |
27 | .name = "Bootloader", | 28 | .name = "Bootloader", |
28 | .offset = 0x00000000, | 29 | .offset = 0x00000000, |
@@ -61,7 +62,7 @@ static struct platform_device flash_device = { | |||
61 | 62 | ||
62 | static struct mtd_info *flash_mtd; | 63 | static struct mtd_info *flash_mtd; |
63 | 64 | ||
64 | static struct map_info rsk7201_flash_map = { | 65 | static struct map_info rsk_flash_map = { |
65 | .name = "RSK+ Flash", | 66 | .name = "RSK+ Flash", |
66 | .size = 0x400000, | 67 | .size = 0x400000, |
67 | .bankwidth = 2, | 68 | .bankwidth = 2, |
@@ -71,35 +72,35 @@ static void __init set_mtd_partitions(void) | |||
71 | { | 72 | { |
72 | int nr_parts = 0; | 73 | int nr_parts = 0; |
73 | 74 | ||
74 | simple_map_init(&rsk7201_flash_map); | 75 | simple_map_init(&rsk_flash_map); |
75 | flash_mtd = do_map_probe("cfi_probe", &rsk7201_flash_map); | 76 | flash_mtd = do_map_probe("cfi_probe", &rsk_flash_map); |
76 | nr_parts = parse_mtd_partitions(flash_mtd, probes, | 77 | nr_parts = parse_mtd_partitions(flash_mtd, probes, |
77 | &parsed_partitions, 0); | 78 | &parsed_partitions, 0); |
78 | /* If there is no partition table, used the hard coded table */ | 79 | /* If there is no partition table, used the hard coded table */ |
79 | if (nr_parts <= 0) { | 80 | if (nr_parts <= 0) { |
80 | flash_data.parts = rsk7201_partitions; | 81 | flash_data.parts = rsk_partitions; |
81 | flash_data.nr_parts = ARRAY_SIZE(rsk7201_partitions); | 82 | flash_data.nr_parts = ARRAY_SIZE(rsk_partitions); |
82 | } else { | 83 | } else { |
83 | flash_data.nr_parts = nr_parts; | 84 | flash_data.nr_parts = nr_parts; |
84 | flash_data.parts = parsed_partitions; | 85 | flash_data.parts = parsed_partitions; |
85 | } | 86 | } |
86 | } | 87 | } |
87 | 88 | ||
88 | static struct platform_device *rsk7201_devices[] __initdata = { | 89 | static struct platform_device *rsk_devices[] __initdata = { |
89 | &flash_device, | 90 | &flash_device, |
90 | }; | 91 | }; |
91 | 92 | ||
92 | static int __init rsk7201_devices_setup(void) | 93 | static int __init rsk_devices_setup(void) |
93 | { | 94 | { |
94 | set_mtd_partitions(); | 95 | set_mtd_partitions(); |
95 | return platform_add_devices(rsk7201_devices, | 96 | return platform_add_devices(rsk_devices, |
96 | ARRAY_SIZE(rsk7201_devices)); | 97 | ARRAY_SIZE(rsk_devices)); |
97 | } | 98 | } |
98 | device_initcall(rsk7201_devices_setup); | 99 | device_initcall(rsk_devices_setup); |
99 | 100 | ||
100 | /* | 101 | /* |
101 | * The Machine Vector | 102 | * The Machine Vector |
102 | */ | 103 | */ |
103 | static struct sh_machine_vector mv_rsk7201 __initmv = { | 104 | static struct sh_machine_vector mv_rsk __initmv = { |
104 | .mv_name = "RSK+7201", | 105 | .mv_name = "RSK+", |
105 | }; | 106 | }; |
diff --git a/arch/sh/tools/mach-types b/arch/sh/tools/mach-types index 69a9aeedf6e3..284b7e867496 100644 --- a/arch/sh/tools/mach-types +++ b/arch/sh/tools/mach-types | |||
@@ -8,6 +8,7 @@ | |||
8 | SE SH_SOLUTION_ENGINE | 8 | SE SH_SOLUTION_ENGINE |
9 | HIGHLANDER SH_HIGHLANDER | 9 | HIGHLANDER SH_HIGHLANDER |
10 | RTS7751R2D SH_RTS7751R2D | 10 | RTS7751R2D SH_RTS7751R2D |
11 | RSK SH_RSK | ||
11 | 12 | ||
12 | # | 13 | # |
13 | # List of companion chips / MFDs. | 14 | # List of companion chips / MFDs. |