| From 59c96e394b7ed742f9bb37b2152b1c8ca31fa55a Mon Sep 17 00:00:00 2001 |
| From: Magnus Damm <damm@opensource.se> |
| Date: Wed, 6 Nov 2013 19:40:01 +0900 |
| Subject: 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> |
| (cherry picked from commit 6d75bc6439ec3f4ae45db1e501177382d0582591) |
| (Queued by Simon Horman for v3.14 but not yet in Linus's tree) |
| Signed-off-by: Simon Horman <horms+renesas@verge.net.au> |
| |
| Conflicts: |
| arch/arm/boot/dts/Makefile |
| --- |
| arch/arm/boot/dts/Makefile | 3 ++- |
| arch/arm/mach-shmobile/Kconfig | 8 ++++++++ |
| arch/arm/mach-shmobile/Makefile | 1 + |
| arch/arm/mach-shmobile/board-koelsch-reference.c | 5 +++++ |
| 4 files changed, 16 insertions(+), 1 deletion(-) |
| |
| diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile |
| index f77c7660b0a8..f73c0a846bab 100644 |
| --- a/arch/arm/boot/dts/Makefile |
| +++ b/arch/arm/boot/dts/Makefile |
| @@ -176,7 +176,8 @@ dtb-$(CONFIG_ARCH_SHMOBILE_LEGACY) += emev2-kzm9d.dtb \ |
| r8a73a4-ape6evm.dtb \ |
| r8a73a4-ape6evm-reference.dtb \ |
| sh7372-mackerel.dtb |
| -dtb-$(CONFIG_ARCH_SHMOBILE_MULTI) += emev2-kzm9d.dtb |
| +dtb-$(CONFIG_ARCH_SHMOBILE_MULTI) += emev2-kzm9d.dtb \ |
| + r8a7791-koelsch-reference.dtb |
| dtb-$(CONFIG_ARCH_SOCFPGA) += socfpga_cyclone5.dtb \ |
| socfpga_vt.dtb |
| dtb-$(CONFIG_ARCH_SPEAR13XX) += spear1310-evb.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" |
| config ARCH_EMEV2 |
| bool "Emma Mobile EV2" |
| |
| +config ARCH_R8A7791 |
| + bool "R-Car M2 (R8A77910)" |
| + select RENESAS_IRQC |
| + |
| comment "SH-Mobile Board Type" |
| |
| +config MACH_KOELSCH |
| + bool "Koelsch board" |
| + depends on ARCH_R8A7791 |
| + |
| config MACH_KZM9D |
| bool "KZM9D board" |
| 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 |
| |
| # Board objects |
| ifdef CONFIG_ARCH_SHMOBILE_MULTI |
| +obj-$(CONFIG_MACH_KOELSCH) += board-koelsch-reference.o |
| obj-$(CONFIG_MACH_KZM9D) += board-kzm9d-reference.o |
| else |
| obj-$(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 @@ |
| * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
| */ |
| |
| +#include <linux/clk-provider.h> |
| #include <linux/kernel.h> |
| #include <linux/of_platform.h> |
| #include <mach/rcar-gen2.h> |
| @@ -27,7 +28,11 @@ |
| |
| static void __init koelsch_add_standard_devices(void) |
| { |
| +#ifdef CONFIG_COMMON_CLK |
| + of_clk_init(NULL); |
| +#else |
| r8a7791_clock_init(); |
| +#endif |
| r8a7791_add_dt_devices(); |
| of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL); |
| } |
| -- |
| 1.8.5.rc3 |
| |