* [PATCH] ARM: shmobile: r8a7740: Multiplatform support
@ 2014-08-08 11:04 Magnus Damm
2014-08-11 1:11 ` Simon Horman
0 siblings, 1 reply; 2+ messages in thread
From: Magnus Damm @ 2014-08-08 11:04 UTC (permalink / raw)
To: linux-sh
From: Magnus Damm <damm+renesas@opensource.se>
Enable r8a7740 Multiplatform support for the generic r8a7740
machine vector. No board support is enabled, and the board
code for Armadillo 800 EVA DT Reference is left by itself.
Once the r8a7740 CCF DTS bits are merged together with SCIF
and CMT clock changes and a CMT DT update it will be possible
to boot an Armadillo 800 EVA board using the generic r8a7740
machine vector.
Signed-off-by: Magnus Damm <damm+renesas@opensource.se>
---
Built on top of renesas-devel-v3.16-20140808 and
"[PATCH] ARM: shmobile: Partial build of pm-rmobile.c for multiplatform"
arch/arm/mach-shmobile/Kconfig | 6 ++++++
arch/arm/mach-shmobile/pm-r8a7740.c | 5 ++---
arch/arm/mach-shmobile/r8a7740.h | 4 ++--
arch/arm/mach-shmobile/setup-r8a7740.c | 8 +++++++-
4 files changed, 17 insertions(+), 6 deletions(-)
--- 0001/arch/arm/mach-shmobile/Kconfig
+++ work/arch/arm/mach-shmobile/Kconfig 2014-08-08 17:58:04.000000000 +0900
@@ -26,6 +26,12 @@ config ARCH_R7S72100
bool "RZ/A1H (R7S72100)"
select SYS_SUPPORTS_SH_MTU2
+config ARCH_R8A7740
+ bool "R-Mobile A1 (R8A77400)"
+ select RENESAS_INTC_IRQPIN
+ select SYS_SUPPORTS_SH_CMT
+ select SYS_SUPPORTS_SH_TMU
+
config ARCH_R8A7779
bool "R-Car H1 (R8A77790)"
select RENESAS_INTC_IRQPIN
--- 0001/arch/arm/mach-shmobile/pm-r8a7740.c
+++ work/arch/arm/mach-shmobile/pm-r8a7740.c 2014-08-08 17:58:04.000000000 +0900
@@ -13,7 +13,7 @@
#include "common.h"
#include "pm-rmobile.h"
-#ifdef CONFIG_PM
+#if defined(CONFIG_PM) && !defined(CONFIG_ARCH_MULTIPLATFORM)
static int r8a7740_pd_a4s_suspend(void)
{
/*
@@ -58,8 +58,7 @@ void __init r8a7740_init_pm_domains(void
rmobile_init_domains(r8a7740_pm_domains, ARRAY_SIZE(r8a7740_pm_domains));
pm_genpd_add_subdomain_names("A4S", "A3SP");
}
-
-#endif /* CONFIG_PM */
+#endif /* CONFIG_PM && !CONFIG_ARCH_MULTIPLATFORM */
#ifdef CONFIG_SUSPEND
static int r8a7740_enter_suspend(suspend_state_t suspend_state)
--- 0001/arch/arm/mach-shmobile/r8a7740.h
+++ work/arch/arm/mach-shmobile/r8a7740.h 2014-08-08 17:58:04.000000000 +0900
@@ -54,10 +54,10 @@ extern void r8a7740_clock_init(u8 md_ck)
extern void r8a7740_pinmux_init(void);
extern void r8a7740_pm_init(void);
-#ifdef CONFIG_PM
+#if defined(CONFIG_PM) && !defined(CONFIG_ARCH_MULTIPLATFORM)
extern void __init r8a7740_init_pm_domains(void);
#else
static inline void r8a7740_init_pm_domains(void) {}
-#endif /* CONFIG_PM */
+#endif /* CONFIG_PM && !CONFIG_ARCH_MULTIPLATFORM */
#endif /* __ASM_R8A7740_H__ */
--- 0001/arch/arm/mach-shmobile/setup-r8a7740.c
+++ work/arch/arm/mach-shmobile/setup-r8a7740.c 2014-08-08 19:45:44.000000000 +0900
@@ -36,6 +36,7 @@
#include <asm/mach/map.h>
#include <asm/mach/arch.h>
#include <asm/mach/time.h>
+#include <asm/hardware/cache-l2x0.h>
#include "common.h"
#include "dma-register.h"
@@ -827,7 +828,12 @@ void __init r8a7740_init_irq_of(void)
static void __init r8a7740_generic_init(void)
{
- r8a7740_clock_init(0);
+ r8a7740_meram_workaround();
+
+#ifdef CONFIG_CACHE_L2X0
+ /* Shared attribute override enable, 32K*8way */
+ l2x0_init(IOMEM(0xf0002000), 0x00400000, 0xc20f0fff);
+#endif
r8a7740_add_standard_devices_dt();
}
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [PATCH] ARM: shmobile: r8a7740: Multiplatform support
2014-08-08 11:04 [PATCH] ARM: shmobile: r8a7740: Multiplatform support Magnus Damm
@ 2014-08-11 1:11 ` Simon Horman
0 siblings, 0 replies; 2+ messages in thread
From: Simon Horman @ 2014-08-11 1:11 UTC (permalink / raw)
To: linux-sh
On Fri, Aug 08, 2014 at 08:04:37PM +0900, Magnus Damm wrote:
> From: Magnus Damm <damm+renesas@opensource.se>
>
> Enable r8a7740 Multiplatform support for the generic r8a7740
> machine vector. No board support is enabled, and the board
> code for Armadillo 800 EVA DT Reference is left by itself.
>
> Once the r8a7740 CCF DTS bits are merged together with SCIF
> and CMT clock changes and a CMT DT update it will be possible
> to boot an Armadillo 800 EVA board using the generic r8a7740
> machine vector.
As part of this change uses the same ifdef scheme as
"ARM: shmobile: Partial build of pm-rmobile.c for multiplatform"
I would like to wait for disucssion of that patch to conclude
before taking this one.
>
> Signed-off-by: Magnus Damm <damm+renesas@opensource.se>
> ---
>
> Built on top of renesas-devel-v3.16-20140808 and
> "[PATCH] ARM: shmobile: Partial build of pm-rmobile.c for multiplatform"
>
> arch/arm/mach-shmobile/Kconfig | 6 ++++++
> arch/arm/mach-shmobile/pm-r8a7740.c | 5 ++---
> arch/arm/mach-shmobile/r8a7740.h | 4 ++--
> arch/arm/mach-shmobile/setup-r8a7740.c | 8 +++++++-
> 4 files changed, 17 insertions(+), 6 deletions(-)
>
> --- 0001/arch/arm/mach-shmobile/Kconfig
> +++ work/arch/arm/mach-shmobile/Kconfig 2014-08-08 17:58:04.000000000 +0900
> @@ -26,6 +26,12 @@ config ARCH_R7S72100
> bool "RZ/A1H (R7S72100)"
> select SYS_SUPPORTS_SH_MTU2
>
> +config ARCH_R8A7740
> + bool "R-Mobile A1 (R8A77400)"
> + select RENESAS_INTC_IRQPIN
> + select SYS_SUPPORTS_SH_CMT
> + select SYS_SUPPORTS_SH_TMU
> +
> config ARCH_R8A7779
> bool "R-Car H1 (R8A77790)"
> select RENESAS_INTC_IRQPIN
> --- 0001/arch/arm/mach-shmobile/pm-r8a7740.c
> +++ work/arch/arm/mach-shmobile/pm-r8a7740.c 2014-08-08 17:58:04.000000000 +0900
> @@ -13,7 +13,7 @@
> #include "common.h"
> #include "pm-rmobile.h"
>
> -#ifdef CONFIG_PM
> +#if defined(CONFIG_PM) && !defined(CONFIG_ARCH_MULTIPLATFORM)
> static int r8a7740_pd_a4s_suspend(void)
> {
> /*
> @@ -58,8 +58,7 @@ void __init r8a7740_init_pm_domains(void
> rmobile_init_domains(r8a7740_pm_domains, ARRAY_SIZE(r8a7740_pm_domains));
> pm_genpd_add_subdomain_names("A4S", "A3SP");
> }
> -
> -#endif /* CONFIG_PM */
> +#endif /* CONFIG_PM && !CONFIG_ARCH_MULTIPLATFORM */
>
> #ifdef CONFIG_SUSPEND
> static int r8a7740_enter_suspend(suspend_state_t suspend_state)
> --- 0001/arch/arm/mach-shmobile/r8a7740.h
> +++ work/arch/arm/mach-shmobile/r8a7740.h 2014-08-08 17:58:04.000000000 +0900
> @@ -54,10 +54,10 @@ extern void r8a7740_clock_init(u8 md_ck)
> extern void r8a7740_pinmux_init(void);
> extern void r8a7740_pm_init(void);
>
> -#ifdef CONFIG_PM
> +#if defined(CONFIG_PM) && !defined(CONFIG_ARCH_MULTIPLATFORM)
> extern void __init r8a7740_init_pm_domains(void);
> #else
> static inline void r8a7740_init_pm_domains(void) {}
> -#endif /* CONFIG_PM */
> +#endif /* CONFIG_PM && !CONFIG_ARCH_MULTIPLATFORM */
>
> #endif /* __ASM_R8A7740_H__ */
> --- 0001/arch/arm/mach-shmobile/setup-r8a7740.c
> +++ work/arch/arm/mach-shmobile/setup-r8a7740.c 2014-08-08 19:45:44.000000000 +0900
> @@ -36,6 +36,7 @@
> #include <asm/mach/map.h>
> #include <asm/mach/arch.h>
> #include <asm/mach/time.h>
> +#include <asm/hardware/cache-l2x0.h>
>
> #include "common.h"
> #include "dma-register.h"
> @@ -827,7 +828,12 @@ void __init r8a7740_init_irq_of(void)
>
> static void __init r8a7740_generic_init(void)
> {
> - r8a7740_clock_init(0);
> + r8a7740_meram_workaround();
> +
> +#ifdef CONFIG_CACHE_L2X0
> + /* Shared attribute override enable, 32K*8way */
> + l2x0_init(IOMEM(0xf0002000), 0x00400000, 0xc20f0fff);
> +#endif
> r8a7740_add_standard_devices_dt();
> }
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-sh" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2014-08-11 1:11 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-08-08 11:04 [PATCH] ARM: shmobile: r8a7740: Multiplatform support Magnus Damm
2014-08-11 1:11 ` Simon Horman
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).