aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-shmobile
diff options
context:
space:
mode:
authorKuninori Morimoto <kuninori.morimoto.gx@renesas.com>2012-04-10 23:57:31 -0400
committerRafael J. Wysocki <rjw@sisk.pl>2012-05-12 16:34:14 -0400
commit9b93e244fa056fadbe9f108c057c027b5cfbddf2 (patch)
tree90ef44d7d31a58fefa4d5749876ce670b73a408c /arch/arm/mach-shmobile
parentc8241085e8606a14ef48e6d99556133c48aaddaf (diff)
ARM: mach-shmobile: add KZM-A9-GT board support
This adds very basic KZM-A9-GT board (SH73a0) support Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Tested-by: Simon Horman <horms@verge.net.au> Acked-by: Magnus Damm <damm@opensource.se> Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Diffstat (limited to 'arch/arm/mach-shmobile')
-rw-r--r--arch/arm/mach-shmobile/Kconfig5
-rw-r--r--arch/arm/mach-shmobile/Makefile1
-rw-r--r--arch/arm/mach-shmobile/board-kzm9g.c60
3 files changed, 66 insertions, 0 deletions
diff --git a/arch/arm/mach-shmobile/Kconfig b/arch/arm/mach-shmobile/Kconfig
index 34560cab45d9..c39413a86a6f 100644
--- a/arch/arm/mach-shmobile/Kconfig
+++ b/arch/arm/mach-shmobile/Kconfig
@@ -98,6 +98,11 @@ config MACH_MARZEN
98 depends on ARCH_R8A7779 98 depends on ARCH_R8A7779
99 select ARCH_REQUIRE_GPIOLIB 99 select ARCH_REQUIRE_GPIOLIB
100 100
101config MACH_KZM9G
102 bool "KZM-A9-GT board"
103 depends on ARCH_SH73A0
104 select ARCH_REQUIRE_GPIOLIB
105
101comment "SH-Mobile System Configuration" 106comment "SH-Mobile System Configuration"
102 107
103config CPU_HAS_INTEVT 108config CPU_HAS_INTEVT
diff --git a/arch/arm/mach-shmobile/Makefile b/arch/arm/mach-shmobile/Makefile
index e7c2590b75d9..015c2d42e08f 100644
--- a/arch/arm/mach-shmobile/Makefile
+++ b/arch/arm/mach-shmobile/Makefile
@@ -49,6 +49,7 @@ obj-$(CONFIG_MACH_MACKEREL) += board-mackerel.o
49obj-$(CONFIG_MACH_KOTA2) += board-kota2.o 49obj-$(CONFIG_MACH_KOTA2) += board-kota2.o
50obj-$(CONFIG_MACH_BONITO) += board-bonito.o 50obj-$(CONFIG_MACH_BONITO) += board-bonito.o
51obj-$(CONFIG_MACH_MARZEN) += board-marzen.o 51obj-$(CONFIG_MACH_MARZEN) += board-marzen.o
52obj-$(CONFIG_MACH_KZM9G) += board-kzm9g.o
52 53
53# Framework support 54# Framework support
54obj-$(CONFIG_SMP) += $(smp-y) 55obj-$(CONFIG_SMP) += $(smp-y)
diff --git a/arch/arm/mach-shmobile/board-kzm9g.c b/arch/arm/mach-shmobile/board-kzm9g.c
new file mode 100644
index 000000000000..55dad87926d5
--- /dev/null
+++ b/arch/arm/mach-shmobile/board-kzm9g.c
@@ -0,0 +1,60 @@
1/*
2 * KZM-A9-GT board support
3 *
4 * Copyright (C) 2012 Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; version 2 of the License.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with this program; if not, write to the Free Software
17 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
18 */
19#include <linux/gpio.h>
20#include <linux/io.h>
21#include <linux/irq.h>
22#include <linux/platform_device.h>
23#include <mach/sh73a0.h>
24#include <mach/common.h>
25#include <asm/hardware/cache-l2x0.h>
26#include <asm/hardware/gic.h>
27#include <asm/mach-types.h>
28#include <asm/mach/arch.h>
29
30static struct platform_device *kzm_devices[] __initdata = {
31};
32
33static void __init kzm_init(void)
34{
35 sh73a0_pinmux_init();
36
37 /* enable SCIFA4 */
38 gpio_request(GPIO_FN_SCIFA4_TXD, NULL);
39 gpio_request(GPIO_FN_SCIFA4_RXD, NULL);
40 gpio_request(GPIO_FN_SCIFA4_RTS_, NULL);
41 gpio_request(GPIO_FN_SCIFA4_CTS_, NULL);
42
43#ifdef CONFIG_CACHE_L2X0
44 /* Early BRESP enable, Shared attribute override enable, 64K*8way */
45 l2x0_init(IOMEM(0xf0100000), 0x40460000, 0x82000fff);
46#endif
47
48 sh73a0_add_standard_devices();
49 platform_add_devices(kzm_devices, ARRAY_SIZE(kzm_devices));
50}
51
52MACHINE_START(KZM9G, "kzm9g")
53 .map_io = sh73a0_map_io,
54 .init_early = sh73a0_add_early_devices,
55 .nr_irqs = NR_IRQS_LEGACY,
56 .init_irq = sh73a0_init_irq,
57 .handle_irq = gic_handle_irq,
58 .init_machine = kzm_init,
59 .timer = &shmobile_timer,
60MACHINE_END