aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMagnus Damm <damm@opensource.se>2013-11-06 05:40:01 -0500
committerSimon Horman <horms+renesas@verge.net.au>2013-12-10 03:24:23 -0500
commit6d75bc6439ec3f4ae45db1e501177382d0582591 (patch)
tree1e8bcfe9d684187a6caf737245185b86847d4e96
parent478e2f9ca5ac9862a5cac0798814ba7d6a5de002 (diff)
ARM: shmobile: Initial r8a7791 and Koelsch multiplatform support
Add Koelsch and r8a7791 to CONFIG_SHMOBILE_MULTI. At this point CCF is not yet supported so you cannot run this code yet. For CCF support to happen several different components are needed, and this is one simple portion that moves us forward. Other patches need to build on top of this one. Koelsch board support exists in 3 flavors: 1) SHMOBILE_MULTI, MACH_KOELSCH - board-koelsch-reference.c (CCF + DT) 2) SHMOBILE, MACH_KOELSCH_REFERENCE - board-koelsch-reference.c (DT) 3) SHMOBILE, MACH_KOELSCH - board-koelsch.c (legacy C code) When CCF is done then 2) will be removed. When 1) includes same features as 3) then 3) will be removed. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
-rw-r--r--arch/arm/boot/dts/Makefile3
-rw-r--r--arch/arm/mach-shmobile/Kconfig8
-rw-r--r--arch/arm/mach-shmobile/Makefile1
-rw-r--r--arch/arm/mach-shmobile/board-koelsch-reference.c5
4 files changed, 16 insertions, 1 deletions
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index 5839077fac91..8254bfc2260d 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -232,7 +232,8 @@ dtb-$(CONFIG_ARCH_SHMOBILE_LEGACY) += emev2-kzm9d.dtb \
232 r8a73a4-ape6evm.dtb \ 232 r8a73a4-ape6evm.dtb \
233 r8a73a4-ape6evm-reference.dtb \ 233 r8a73a4-ape6evm-reference.dtb \
234 sh7372-mackerel.dtb 234 sh7372-mackerel.dtb
235dtb-$(CONFIG_ARCH_SHMOBILE_MULTI) += emev2-kzm9d.dtb 235dtb-$(CONFIG_ARCH_SHMOBILE_MULTI) += emev2-kzm9d.dtb \
236 r8a7791-koelsch-reference.dtb
236dtb-$(CONFIG_ARCH_SOCFPGA) += socfpga_arria5_socdk.dtb \ 237dtb-$(CONFIG_ARCH_SOCFPGA) += socfpga_arria5_socdk.dtb \
237 socfpga_cyclone5_socdk.dtb \ 238 socfpga_cyclone5_socdk.dtb \
238 socfpga_cyclone5_sockit.dtb \ 239 socfpga_cyclone5_sockit.dtb \
diff --git a/arch/arm/mach-shmobile/Kconfig b/arch/arm/mach-shmobile/Kconfig
index 8eac47fef8dc..17a4f409f96d 100644
--- a/arch/arm/mach-shmobile/Kconfig
+++ b/arch/arm/mach-shmobile/Kconfig
@@ -24,8 +24,16 @@ comment "SH-Mobile System Type"
24config ARCH_EMEV2 24config ARCH_EMEV2
25 bool "Emma Mobile EV2" 25 bool "Emma Mobile EV2"
26 26
27config ARCH_R8A7791
28 bool "R-Car M2 (R8A77910)"
29 select RENESAS_IRQC
30
27comment "SH-Mobile Board Type" 31comment "SH-Mobile Board Type"
28 32
33config MACH_KOELSCH
34 bool "Koelsch board"
35 depends on ARCH_R8A7791
36
29config MACH_KZM9D 37config MACH_KZM9D
30 bool "KZM9D board" 38 bool "KZM9D board"
31 depends on ARCH_EMEV2 39 depends on ARCH_EMEV2
diff --git a/arch/arm/mach-shmobile/Makefile b/arch/arm/mach-shmobile/Makefile
index 8bca9b56352e..021775de50ae 100644
--- a/arch/arm/mach-shmobile/Makefile
+++ b/arch/arm/mach-shmobile/Makefile
@@ -56,6 +56,7 @@ obj-$(CONFIG_ARCH_R8A7779) += pm-r8a7779.o
56 56
57# Board objects 57# Board objects
58ifdef CONFIG_ARCH_SHMOBILE_MULTI 58ifdef CONFIG_ARCH_SHMOBILE_MULTI
59obj-$(CONFIG_MACH_KOELSCH) += board-koelsch-reference.o
59obj-$(CONFIG_MACH_KZM9D) += board-kzm9d-reference.o 60obj-$(CONFIG_MACH_KZM9D) += board-kzm9d-reference.o
60else 61else
61obj-$(CONFIG_MACH_APE6EVM) += board-ape6evm.o 62obj-$(CONFIG_MACH_APE6EVM) += board-ape6evm.o
diff --git a/arch/arm/mach-shmobile/board-koelsch-reference.c b/arch/arm/mach-shmobile/board-koelsch-reference.c
index beecc8bb510f..25b558f462a3 100644
--- a/arch/arm/mach-shmobile/board-koelsch-reference.c
+++ b/arch/arm/mach-shmobile/board-koelsch-reference.c
@@ -19,6 +19,7 @@
19 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 19 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
20 */ 20 */
21 21
22#include <linux/clk-provider.h>
22#include <linux/kernel.h> 23#include <linux/kernel.h>
23#include <linux/of_platform.h> 24#include <linux/of_platform.h>
24#include <mach/rcar-gen2.h> 25#include <mach/rcar-gen2.h>
@@ -27,7 +28,11 @@
27 28
28static void __init koelsch_add_standard_devices(void) 29static void __init koelsch_add_standard_devices(void)
29{ 30{
31#ifdef CONFIG_COMMON_CLK
32 of_clk_init(NULL);
33#else
30 r8a7791_clock_init(); 34 r8a7791_clock_init();
35#endif
31 r8a7791_add_dt_devices(); 36 r8a7791_add_dt_devices();
32 of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL); 37 of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL);
33} 38}