* Re: [PATCH v2 03/10] ARM: shmobile: sh73a0: common clock framework board support
2014-09-02 9:12 [PATCH v2 03/10] ARM: shmobile: sh73a0: common clock framework board support Ulrich Hecht
@ 2014-09-04 7:10 ` Simon Horman
2014-09-04 7:19 ` Geert Uytterhoeven
` (2 subsequent siblings)
3 siblings, 0 replies; 5+ messages in thread
From: Simon Horman @ 2014-09-04 7:10 UTC (permalink / raw)
To: linux-sh
On Tue, Sep 02, 2014 at 11:12:59AM +0200, Ulrich Hecht wrote:
> Adds support for the common clock framework to the KZM9G reference board
> and SH73A0 SoC setup code.
>
> Signed-off-by: Ulrich Hecht <ulrich.hecht+renesas@gmail.com>
> ---
> arch/arm/mach-shmobile/board-kzm9g-reference.c | 25 +++++++++++++++++++++++++
> arch/arm/mach-shmobile/setup-sh73a0.c | 5 ++++-
> 2 files changed, 29 insertions(+), 1 deletion(-)
>
> diff --git a/arch/arm/mach-shmobile/board-kzm9g-reference.c b/arch/arm/mach-shmobile/board-kzm9g-reference.c
> index d9cdf9a..19b0842 100644
> --- a/arch/arm/mach-shmobile/board-kzm9g-reference.c
> +++ b/arch/arm/mach-shmobile/board-kzm9g-reference.c
> @@ -30,11 +30,36 @@
> #include <asm/mach-types.h>
> #include <asm/mach/arch.h>
>
> +#include "clock.h"
> #include "common.h"
> #include "sh73a0.h"
>
> +#ifdef CONFIG_COMMON_CLK
> +static const struct clk_name clk_names[] __initconst = {
> + { "cmt1", NULL, "sh_cmt.10" },
> + { "scifa0", NULL, "sh-sci.0" },
> + { "scifa1", NULL, "sh-sci.1" },
> + { "scifa2", NULL, "sh-sci.2" },
> + { "scifa3", NULL, "sh-sci.3" },
> + { "scifa4", NULL, "sh-sci.4" },
> + { "scifa5", NULL, "sh-sci.5" },
> + { "scifa6", NULL, "sh-sci.6" },
> + { "scifa7", NULL, "sh-sci.7" },
> + { "scifb", NULL, "sh-sci.8" },
> + { "sdhi0", NULL, "ee100000.sd" },
> + { "sdhi1", NULL, "ee120000.sd" },
> + { "sdhi2", NULL, "ee140000.sd" },
> + { "mmcif0", NULL, "e6bd0000.mmc" },
> + { "iic0", NULL, "e6820000.i2c" },
> + { "iic3", NULL, "e6826000.i2c" },
> +};
> +#endif
> +
> static void __init kzm_init(void)
> {
> +#ifdef CONFIG_COMMON_CLK
> + shmobile_clk_workaround(clk_names, ARRAY_SIZE(clk_names), false);
> +#endif
> sh73a0_add_standard_devices_dt();
>
I believe that the above work-around no longer needed since
3c90c55dcde745bed81f6447f24ba96bda43d984 ("drivers: sh: compile
drivers/sh/pm_runtime.c if ARCH_SHMOBILE_MULTI").
> #ifdef CONFIG_CACHE_L2X0
> diff --git a/arch/arm/mach-shmobile/setup-sh73a0.c b/arch/arm/mach-shmobile/setup-sh73a0.c
> index 0085305..6d73b83 100644
> --- a/arch/arm/mach-shmobile/setup-sh73a0.c
> +++ b/arch/arm/mach-shmobile/setup-sh73a0.c
> @@ -756,7 +756,9 @@ void __init __weak sh73a0_register_twd(void) { }
> void __init sh73a0_earlytimer_init(void)
> {
> sh73a0_init_delay();
> +#ifndef CONFIG_COMMON_CLK
> sh73a0_clock_init();
> +#endif
> shmobile_earlytimer_init();
> sh73a0_register_twd();
> }
> @@ -777,8 +779,9 @@ void __init sh73a0_add_early_devices(void)
> void __init sh73a0_add_standard_devices_dt(void)
> {
> /* clocks are setup late during boot in the case of DT */
> +#ifndef CONFIG_COMMON_CLK
> sh73a0_clock_init();
> -
> +#endif
> platform_add_devices(sh73a0_devices_dt,
> ARRAY_SIZE(sh73a0_devices_dt));
> of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL);
> --
> 1.8.4.5
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v2 03/10] ARM: shmobile: sh73a0: common clock framework board support
2014-09-02 9:12 [PATCH v2 03/10] ARM: shmobile: sh73a0: common clock framework board support Ulrich Hecht
2014-09-04 7:10 ` Simon Horman
@ 2014-09-04 7:19 ` Geert Uytterhoeven
2014-09-04 7:33 ` Simon Horman
2014-09-09 21:55 ` Laurent Pinchart
3 siblings, 0 replies; 5+ messages in thread
From: Geert Uytterhoeven @ 2014-09-04 7:19 UTC (permalink / raw)
To: linux-sh
On Thu, Sep 4, 2014 at 9:10 AM, Simon Horman <horms@verge.net.au> wrote:
>> +#ifdef CONFIG_COMMON_CLK
>> +static const struct clk_name clk_names[] __initconst = {
>> + { "cmt1", NULL, "sh_cmt.10" },
>> + { "scifa0", NULL, "sh-sci.0" },
>> + { "scifa1", NULL, "sh-sci.1" },
>> + { "scifa2", NULL, "sh-sci.2" },
>> + { "scifa3", NULL, "sh-sci.3" },
>> + { "scifa4", NULL, "sh-sci.4" },
>> + { "scifa5", NULL, "sh-sci.5" },
>> + { "scifa6", NULL, "sh-sci.6" },
>> + { "scifa7", NULL, "sh-sci.7" },
>> + { "scifb", NULL, "sh-sci.8" },
>> + { "sdhi0", NULL, "ee100000.sd" },
>> + { "sdhi1", NULL, "ee120000.sd" },
>> + { "sdhi2", NULL, "ee140000.sd" },
>> + { "mmcif0", NULL, "e6bd0000.mmc" },
>> + { "iic0", NULL, "e6820000.i2c" },
>> + { "iic3", NULL, "e6826000.i2c" },
>> +};
>> +#endif
>> +
>> static void __init kzm_init(void)
>> {
>> +#ifdef CONFIG_COMMON_CLK
>> + shmobile_clk_workaround(clk_names, ARRAY_SIZE(clk_names), false);
>> +#endif
>> sh73a0_add_standard_devices_dt();
>>
>
> I believe that the above work-around no longer needed since
> 3c90c55dcde745bed81f6447f24ba96bda43d984 ("drivers: sh: compile
> drivers/sh/pm_runtime.c if ARCH_SHMOBILE_MULTI").
That commit applies to the "shmobile_clk_workaround(..., true)" calls.
The "shmobile_clk_workaround(..., false)" calls are still needed for devices
not instantiated from DT.
From the device names' formats, that applies to the cmt1 and scif* devices?
However, I thought scif* was instantiated from DT?
And cmt1 is being moved?
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v2 03/10] ARM: shmobile: sh73a0: common clock framework board support
2014-09-02 9:12 [PATCH v2 03/10] ARM: shmobile: sh73a0: common clock framework board support Ulrich Hecht
2014-09-04 7:10 ` Simon Horman
2014-09-04 7:19 ` Geert Uytterhoeven
@ 2014-09-04 7:33 ` Simon Horman
2014-09-09 21:55 ` Laurent Pinchart
3 siblings, 0 replies; 5+ messages in thread
From: Simon Horman @ 2014-09-04 7:33 UTC (permalink / raw)
To: linux-sh
On Thu, Sep 04, 2014 at 09:19:59AM +0200, Geert Uytterhoeven wrote:
> On Thu, Sep 4, 2014 at 9:10 AM, Simon Horman <horms@verge.net.au> wrote:
> >> +#ifdef CONFIG_COMMON_CLK
> >> +static const struct clk_name clk_names[] __initconst = {
> >> + { "cmt1", NULL, "sh_cmt.10" },
> >> + { "scifa0", NULL, "sh-sci.0" },
> >> + { "scifa1", NULL, "sh-sci.1" },
> >> + { "scifa2", NULL, "sh-sci.2" },
> >> + { "scifa3", NULL, "sh-sci.3" },
> >> + { "scifa4", NULL, "sh-sci.4" },
> >> + { "scifa5", NULL, "sh-sci.5" },
> >> + { "scifa6", NULL, "sh-sci.6" },
> >> + { "scifa7", NULL, "sh-sci.7" },
> >> + { "scifb", NULL, "sh-sci.8" },
> >> + { "sdhi0", NULL, "ee100000.sd" },
> >> + { "sdhi1", NULL, "ee120000.sd" },
> >> + { "sdhi2", NULL, "ee140000.sd" },
> >> + { "mmcif0", NULL, "e6bd0000.mmc" },
> >> + { "iic0", NULL, "e6820000.i2c" },
> >> + { "iic3", NULL, "e6826000.i2c" },
> >> +};
> >> +#endif
> >> +
> >> static void __init kzm_init(void)
> >> {
> >> +#ifdef CONFIG_COMMON_CLK
> >> + shmobile_clk_workaround(clk_names, ARRAY_SIZE(clk_names), false);
> >> +#endif
> >> sh73a0_add_standard_devices_dt();
> >>
> >
> > I believe that the above work-around no longer needed since
> > 3c90c55dcde745bed81f6447f24ba96bda43d984 ("drivers: sh: compile
> > drivers/sh/pm_runtime.c if ARCH_SHMOBILE_MULTI").
>
> That commit applies to the "shmobile_clk_workaround(..., true)" calls.
>
> The "shmobile_clk_workaround(..., false)" calls are still needed for devices
> not instantiated from DT.
>
> >From the device names' formats, that applies to the cmt1 and scif* devices?
> However, I thought scif* was instantiated from DT?
> And cmt1 is being moved?
My reading of this series is that they will be initialised by
DT by subsequent patches. Perhaps the patches could be re-ordered
and the workaround omitted? Am I confused (again)?
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v2 03/10] ARM: shmobile: sh73a0: common clock framework board support
2014-09-02 9:12 [PATCH v2 03/10] ARM: shmobile: sh73a0: common clock framework board support Ulrich Hecht
` (2 preceding siblings ...)
2014-09-04 7:33 ` Simon Horman
@ 2014-09-09 21:55 ` Laurent Pinchart
3 siblings, 0 replies; 5+ messages in thread
From: Laurent Pinchart @ 2014-09-09 21:55 UTC (permalink / raw)
To: linux-sh
Hi Simon and Ulrich,
On Thursday 04 September 2014 16:33:41 Simon Horman wrote:
> On Thu, Sep 04, 2014 at 09:19:59AM +0200, Geert Uytterhoeven wrote:
> > On Thu, Sep 4, 2014 at 9:10 AM, Simon Horman <horms@verge.net.au> wrote:
> > >> +#ifdef CONFIG_COMMON_CLK
> > >> +static const struct clk_name clk_names[] __initconst = {
> > >> + { "cmt1", NULL, "sh_cmt.10" },
> > >> + { "scifa0", NULL, "sh-sci.0" },
> > >> + { "scifa1", NULL, "sh-sci.1" },
> > >> + { "scifa2", NULL, "sh-sci.2" },
> > >> + { "scifa3", NULL, "sh-sci.3" },
> > >> + { "scifa4", NULL, "sh-sci.4" },
> > >> + { "scifa5", NULL, "sh-sci.5" },
> > >> + { "scifa6", NULL, "sh-sci.6" },
> > >> + { "scifa7", NULL, "sh-sci.7" },
> > >> + { "scifb", NULL, "sh-sci.8" },
> > >> + { "sdhi0", NULL, "ee100000.sd" },
> > >> + { "sdhi1", NULL, "ee120000.sd" },
> > >> + { "sdhi2", NULL, "ee140000.sd" },
> > >> + { "mmcif0", NULL, "e6bd0000.mmc" },
> > >> + { "iic0", NULL, "e6820000.i2c" },
> > >> + { "iic3", NULL, "e6826000.i2c" },
> > >> +};
> > >> +#endif
> > >> +
> > >>
> > >> static void __init kzm_init(void)
> > >> {
> > >>
> > >> +#ifdef CONFIG_COMMON_CLK
> > >> + shmobile_clk_workaround(clk_names, ARRAY_SIZE(clk_names), false);
> > >> +#endif
> > >>
> > >> sh73a0_add_standard_devices_dt();
> > >
> > > I believe that the above work-around no longer needed since
> > > 3c90c55dcde745bed81f6447f24ba96bda43d984 ("drivers: sh: compile
> > > drivers/sh/pm_runtime.c if ARCH_SHMOBILE_MULTI").
> >
> > That commit applies to the "shmobile_clk_workaround(..., true)" calls.
> >
> > The "shmobile_clk_workaround(..., false)" calls are still needed for
> > devices not instantiated from DT.
> >
> > >From the device names' formats, that applies to the cmt1 and scif*
> > >devices?
> >
> > However, I thought scif* was instantiated from DT?
> > And cmt1 is being moved?
>
> My reading of this series is that they will be initialised by
> DT by subsequent patches. Perhaps the patches could be re-ordered
> and the workaround omitted?
I would like that better too. The workaround should at least be removed after
adding device clocks in DT.
> Am I confused (again)?
--
Regards,
Laurent Pinchart
^ permalink raw reply [flat|nested] 5+ messages in thread