* [PATCH 4/6] ARM: shmobile: r8a7740: Prepare for reference DT setup
@ 2013-04-04 13:45 Bastian Hecht
2013-04-04 14:07 ` Laurent Pinchart
` (7 more replies)
0 siblings, 8 replies; 9+ messages in thread
From: Bastian Hecht @ 2013-04-04 13:45 UTC (permalink / raw)
To: linux-sh
We need two steps to prepare for the new Armadillo reference DT board code:
- Split the device list into r8a7740_early_devices used by the old platform
data setup (board-armadillo.c) and r8a7740_devices_dt used by both
setup variants.
- Introduce new r8a7740_init_delay() to be more flexible about calling
shmobile_setup_delay().
This is similar to commit 3b00f9342623a5ebc
"ARM: shmobile: sh73a0: Do not use early devices with DT reference"
Signed-off-by: Bastian Hecht <hechtb+renesas@gmail.com>
---
arch/arm/mach-shmobile/include/mach/r8a7740.h | 2 ++
arch/arm/mach-shmobile/setup-r8a7740.c | 41 +++++++++++++------------
2 files changed, 23 insertions(+), 20 deletions(-)
diff --git a/arch/arm/mach-shmobile/include/mach/r8a7740.h b/arch/arm/mach-shmobile/include/mach/r8a7740.h
index abdc4d4..61df082 100644
--- a/arch/arm/mach-shmobile/include/mach/r8a7740.h
+++ b/arch/arm/mach-shmobile/include/mach/r8a7740.h
@@ -533,10 +533,12 @@ enum {
};
extern void r8a7740_meram_workaround(void);
+extern void r8a7740_init_delay(void);
extern void r8a7740_init_irq(void);
extern void r8a7740_map_io(void);
extern void r8a7740_add_early_devices(void);
extern void r8a7740_add_standard_devices(void);
+extern void r8a7740_add_standard_devices_dt(void);
extern void r8a7740_clock_init(u8 md_ck);
extern void r8a7740_pinmux_init(void);
extern void r8a7740_pm_init(void);
diff --git a/arch/arm/mach-shmobile/setup-r8a7740.c b/arch/arm/mach-shmobile/setup-r8a7740.c
index 228d7ab..ce0d2e6 100644
--- a/arch/arm/mach-shmobile/setup-r8a7740.c
+++ b/arch/arm/mach-shmobile/setup-r8a7740.c
@@ -531,11 +531,7 @@ static struct platform_device ipmmu_device = {
.num_resources = ARRAY_SIZE(ipmmu_resources),
};
-static struct platform_device *r8a7740_early_devices[] __initdata = {
- &irqpin0_device,
- &irqpin1_device,
- &irqpin2_device,
- &irqpin3_device,
+static struct platform_device *r8a7740_devices_dt[] __initdata = {
&scif0_device,
&scif1_device,
&scif2_device,
@@ -546,6 +542,13 @@ static struct platform_device *r8a7740_early_devices[] __initdata = {
&scif7_device,
&scifb_device,
&cmt10_device,
+};
+
+static struct platform_device *r8a7740_early_devices[] __initdata = {
+ &irqpin0_device,
+ &irqpin1_device,
+ &irqpin2_device,
+ &irqpin3_device,
&tmu00_device,
&tmu01_device,
&tmu02_device,
@@ -965,6 +968,8 @@ void __init r8a7740_add_standard_devices(void)
/* add devices */
platform_add_devices(r8a7740_early_devices,
ARRAY_SIZE(r8a7740_early_devices));
+ platform_add_devices(r8a7740_devices_dt,
+ ARRAY_SIZE(r8a7740_devices_dt));
platform_add_devices(r8a7740_late_devices,
ARRAY_SIZE(r8a7740_late_devices));
@@ -991,31 +996,27 @@ void __init r8a7740_add_early_devices(void)
shmobile_setup_console();
}
-#ifdef CONFIG_USE_OF
-
-void __init r8a7740_add_early_devices_dt(void)
+void __init r8a7740_init_delay(void)
{
shmobile_setup_delay(800, 1, 3); /* Cortex-A9 @ 800MHz */
+};
- early_platform_add_devices(r8a7740_early_devices,
- ARRAY_SIZE(r8a7740_early_devices));
-
- /* setup early console here as well */
- shmobile_setup_console();
+void __init r8a7740_generic_init_early(void)
+{
+ r8a7740_clock_init(0);
+ r8a7740_init_delay();
}
+#ifdef CONFIG_USE_OF
+
static const struct of_dev_auxdata r8a7740_auxdata_lookup[] __initconst = {
{ }
};
void __init r8a7740_add_standard_devices_dt(void)
{
- /* clocks are setup late during boot in the case of DT */
- r8a7740_clock_init(0);
-
- platform_add_devices(r8a7740_early_devices,
- ARRAY_SIZE(r8a7740_early_devices));
-
+ platform_add_devices(r8a7740_devices_dt,
+ ARRAY_SIZE(r8a7740_devices_dt));
of_platform_populate(NULL, of_default_bus_match_table,
r8a7740_auxdata_lookup, NULL);
}
@@ -1027,7 +1028,7 @@ static const char *r8a7740_boards_compat_dt[] __initdata = {
DT_MACHINE_START(R8A7740_DT, "Generic R8A7740 (Flattened Device Tree)")
.map_io = r8a7740_map_io,
- .init_early = r8a7740_add_early_devices_dt,
+ .init_early = r8a7740_generic_init_early,
.init_irq = r8a7740_init_irq,
.init_machine = r8a7740_add_standard_devices_dt,
.init_time = shmobile_timer_init,
--
1.7.9.5
^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: [PATCH 4/6] ARM: shmobile: r8a7740: Prepare for reference DT setup
2013-04-04 13:45 [PATCH 4/6] ARM: shmobile: r8a7740: Prepare for reference DT setup Bastian Hecht
@ 2013-04-04 14:07 ` Laurent Pinchart
2013-04-04 16:04 ` Bastian Hecht
` (6 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Laurent Pinchart @ 2013-04-04 14:07 UTC (permalink / raw)
To: linux-sh
Hi Bastian,
Thanks for the patch.
On Thursday 04 April 2013 15:45:42 Bastian Hecht wrote:
> We need two steps to prepare for the new Armadillo reference DT board code:
> - Split the device list into r8a7740_early_devices used by the old platform
> data setup (board-armadillo.c) and r8a7740_devices_dt used by both setup
> variants.
> - Introduce new r8a7740_init_delay() to be more flexible about calling
> shmobile_setup_delay().
>
> This is similar to commit 3b00f9342623a5ebc
> "ARM: shmobile: sh73a0: Do not use early devices with DT reference"
>
> Signed-off-by: Bastian Hecht <hechtb+renesas@gmail.com>
> ---
> arch/arm/mach-shmobile/include/mach/r8a7740.h | 2 ++
> arch/arm/mach-shmobile/setup-r8a7740.c | 41 +++++++++++-----------
> 2 files changed, 23 insertions(+), 20 deletions(-)
>
> diff --git a/arch/arm/mach-shmobile/include/mach/r8a7740.h
> b/arch/arm/mach-shmobile/include/mach/r8a7740.h index abdc4d4..61df082
> 100644
> --- a/arch/arm/mach-shmobile/include/mach/r8a7740.h
> +++ b/arch/arm/mach-shmobile/include/mach/r8a7740.h
> @@ -533,10 +533,12 @@ enum {
> };
>
> extern void r8a7740_meram_workaround(void);
> +extern void r8a7740_init_delay(void);
> extern void r8a7740_init_irq(void);
> extern void r8a7740_map_io(void);
> extern void r8a7740_add_early_devices(void);
> extern void r8a7740_add_standard_devices(void);
> +extern void r8a7740_add_standard_devices_dt(void);
> extern void r8a7740_clock_init(u8 md_ck);
> extern void r8a7740_pinmux_init(void);
> extern void r8a7740_pm_init(void);
> diff --git a/arch/arm/mach-shmobile/setup-r8a7740.c
> b/arch/arm/mach-shmobile/setup-r8a7740.c index 228d7ab..ce0d2e6 100644
> --- a/arch/arm/mach-shmobile/setup-r8a7740.c
> +++ b/arch/arm/mach-shmobile/setup-r8a7740.c
> @@ -531,11 +531,7 @@ static struct platform_device ipmmu_device = {
> .num_resources = ARRAY_SIZE(ipmmu_resources),
> };
>
> -static struct platform_device *r8a7740_early_devices[] __initdata = {
> - &irqpin0_device,
> - &irqpin1_device,
> - &irqpin2_device,
> - &irqpin3_device,
> +static struct platform_device *r8a7740_devices_dt[] __initdata = {
> &scif0_device,
> &scif1_device,
> &scif2_device,
> @@ -546,6 +542,13 @@ static struct platform_device *r8a7740_early_devices[]
> __initdata = { &scif7_device,
> &scifb_device,
> &cmt10_device,
> +};
> +
> +static struct platform_device *r8a7740_early_devices[] __initdata = {
> + &irqpin0_device,
> + &irqpin1_device,
> + &irqpin2_device,
> + &irqpin3_device,
> &tmu00_device,
> &tmu01_device,
> &tmu02_device,
> @@ -965,6 +968,8 @@ void __init r8a7740_add_standard_devices(void)
> /* add devices */
> platform_add_devices(r8a7740_early_devices,
> ARRAY_SIZE(r8a7740_early_devices));
> + platform_add_devices(r8a7740_devices_dt,
> + ARRAY_SIZE(r8a7740_devices_dt));
> platform_add_devices(r8a7740_late_devices,
> ARRAY_SIZE(r8a7740_late_devices));
>
> @@ -991,31 +996,27 @@ void __init r8a7740_add_early_devices(void)
> shmobile_setup_console();
> }
>
> -#ifdef CONFIG_USE_OF
> -
> -void __init r8a7740_add_early_devices_dt(void)
> +void __init r8a7740_init_delay(void)
> {
> shmobile_setup_delay(800, 1, 3); /* Cortex-A9 @ 800MHz */
> +};
>
> - early_platform_add_devices(r8a7740_early_devices,
> - ARRAY_SIZE(r8a7740_early_devices));
> -
> - /* setup early console here as well */
> - shmobile_setup_console();
> +void __init r8a7740_generic_init_early(void)
static void ?
> +{
> + r8a7740_clock_init(0);
> + r8a7740_init_delay();
> }
>
> +#ifdef CONFIG_USE_OF
> +
> static const struct of_dev_auxdata r8a7740_auxdata_lookup[] __initconst = {
> { }
> };
>
> void __init r8a7740_add_standard_devices_dt(void)
> {
> - /* clocks are setup late during boot in the case of DT */
> - r8a7740_clock_init(0);
> -
> - platform_add_devices(r8a7740_early_devices,
> - ARRAY_SIZE(r8a7740_early_devices));
> -
> + platform_add_devices(r8a7740_devices_dt,
> + ARRAY_SIZE(r8a7740_devices_dt));
> of_platform_populate(NULL, of_default_bus_match_table,
> r8a7740_auxdata_lookup, NULL);
> }
> @@ -1027,7 +1028,7 @@ static const char *r8a7740_boards_compat_dt[]
> __initdata = {
>
> DT_MACHINE_START(R8A7740_DT, "Generic R8A7740 (Flattened Device Tree)")
> .map_io = r8a7740_map_io,
> - .init_early = r8a7740_add_early_devices_dt,
> + .init_early = r8a7740_generic_init_early,
> .init_irq = r8a7740_init_irq,
> .init_machine = r8a7740_add_standard_devices_dt,
> .init_time = shmobile_timer_init,
--
Regards,
Laurent Pinchart
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 4/6] ARM: shmobile: r8a7740: Prepare for reference DT setup
2013-04-04 13:45 [PATCH 4/6] ARM: shmobile: r8a7740: Prepare for reference DT setup Bastian Hecht
2013-04-04 14:07 ` Laurent Pinchart
@ 2013-04-04 16:04 ` Bastian Hecht
2013-04-05 0:07 ` Laurent Pinchart
` (5 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Bastian Hecht @ 2013-04-04 16:04 UTC (permalink / raw)
To: linux-sh
Hi Laurent,
2013/4/4 Laurent Pinchart <laurent.pinchart@ideasonboard.com>:
> Hi Bastian,
>
> Thanks for the patch.
>
> On Thursday 04 April 2013 15:45:42 Bastian Hecht wrote:
>> We need two steps to prepare for the new Armadillo reference DT board code:
>> - Split the device list into r8a7740_early_devices used by the old platform
>> data setup (board-armadillo.c) and r8a7740_devices_dt used by both setup
>> variants.
>> - Introduce new r8a7740_init_delay() to be more flexible about calling
>> shmobile_setup_delay().
>>
>> This is similar to commit 3b00f9342623a5ebc
>> "ARM: shmobile: sh73a0: Do not use early devices with DT reference"
>>
>> Signed-off-by: Bastian Hecht <hechtb+renesas@gmail.com>
>> ---
>> arch/arm/mach-shmobile/include/mach/r8a7740.h | 2 ++
>> arch/arm/mach-shmobile/setup-r8a7740.c | 41 +++++++++++-----------
>> 2 files changed, 23 insertions(+), 20 deletions(-)
>>
>> diff --git a/arch/arm/mach-shmobile/include/mach/r8a7740.h
>> b/arch/arm/mach-shmobile/include/mach/r8a7740.h index abdc4d4..61df082
>> 100644
>> --- a/arch/arm/mach-shmobile/include/mach/r8a7740.h
>> +++ b/arch/arm/mach-shmobile/include/mach/r8a7740.h
>> @@ -533,10 +533,12 @@ enum {
>> };
>>
>> extern void r8a7740_meram_workaround(void);
>> +extern void r8a7740_init_delay(void);
>> extern void r8a7740_init_irq(void);
>> extern void r8a7740_map_io(void);
>> extern void r8a7740_add_early_devices(void);
>> extern void r8a7740_add_standard_devices(void);
>> +extern void r8a7740_add_standard_devices_dt(void);
>> extern void r8a7740_clock_init(u8 md_ck);
>> extern void r8a7740_pinmux_init(void);
>> extern void r8a7740_pm_init(void);
>> diff --git a/arch/arm/mach-shmobile/setup-r8a7740.c
>> b/arch/arm/mach-shmobile/setup-r8a7740.c index 228d7ab..ce0d2e6 100644
>> --- a/arch/arm/mach-shmobile/setup-r8a7740.c
>> +++ b/arch/arm/mach-shmobile/setup-r8a7740.c
>> @@ -531,11 +531,7 @@ static struct platform_device ipmmu_device = {
>> .num_resources = ARRAY_SIZE(ipmmu_resources),
>> };
>>
>> -static struct platform_device *r8a7740_early_devices[] __initdata = {
>> - &irqpin0_device,
>> - &irqpin1_device,
>> - &irqpin2_device,
>> - &irqpin3_device,
>> +static struct platform_device *r8a7740_devices_dt[] __initdata = {
>> &scif0_device,
>> &scif1_device,
>> &scif2_device,
>> @@ -546,6 +542,13 @@ static struct platform_device *r8a7740_early_devices[]
>> __initdata = { &scif7_device,
>> &scifb_device,
>> &cmt10_device,
>> +};
>> +
>> +static struct platform_device *r8a7740_early_devices[] __initdata = {
>> + &irqpin0_device,
>> + &irqpin1_device,
>> + &irqpin2_device,
>> + &irqpin3_device,
>> &tmu00_device,
>> &tmu01_device,
>> &tmu02_device,
>> @@ -965,6 +968,8 @@ void __init r8a7740_add_standard_devices(void)
>> /* add devices */
>> platform_add_devices(r8a7740_early_devices,
>> ARRAY_SIZE(r8a7740_early_devices));
>> + platform_add_devices(r8a7740_devices_dt,
>> + ARRAY_SIZE(r8a7740_devices_dt));
>> platform_add_devices(r8a7740_late_devices,
>> ARRAY_SIZE(r8a7740_late_devices));
>>
>> @@ -991,31 +996,27 @@ void __init r8a7740_add_early_devices(void)
>> shmobile_setup_console();
>> }
>>
>> -#ifdef CONFIG_USE_OF
>> -
>> -void __init r8a7740_add_early_devices_dt(void)
>> +void __init r8a7740_init_delay(void)
>> {
>> shmobile_setup_delay(800, 1, 3); /* Cortex-A9 @ 800MHz */
>> +};
>>
>> - early_platform_add_devices(r8a7740_early_devices,
>> - ARRAY_SIZE(r8a7740_early_devices));
>> -
>> - /* setup early console here as well */
>> - shmobile_setup_console();
>> +void __init r8a7740_generic_init_early(void)
>
> static void ?
I'm not sure, other people might want to use that in their board code
when they don't have the need to set up the clocks with some special
flags like we need it for Armadillo.
Thanks,
Bastian
>> +{
>> + r8a7740_clock_init(0);
>> + r8a7740_init_delay();
>> }
>>
>> +#ifdef CONFIG_USE_OF
>> +
>> static const struct of_dev_auxdata r8a7740_auxdata_lookup[] __initconst = {
>> { }
>> };
>>
>> void __init r8a7740_add_standard_devices_dt(void)
>> {
>> - /* clocks are setup late during boot in the case of DT */
>> - r8a7740_clock_init(0);
>> -
>> - platform_add_devices(r8a7740_early_devices,
>> - ARRAY_SIZE(r8a7740_early_devices));
>> -
>> + platform_add_devices(r8a7740_devices_dt,
>> + ARRAY_SIZE(r8a7740_devices_dt));
>> of_platform_populate(NULL, of_default_bus_match_table,
>> r8a7740_auxdata_lookup, NULL);
>> }
>> @@ -1027,7 +1028,7 @@ static const char *r8a7740_boards_compat_dt[]
>> __initdata = {
>>
>> DT_MACHINE_START(R8A7740_DT, "Generic R8A7740 (Flattened Device Tree)")
>> .map_io = r8a7740_map_io,
>> - .init_early = r8a7740_add_early_devices_dt,
>> + .init_early = r8a7740_generic_init_early,
>> .init_irq = r8a7740_init_irq,
>> .init_machine = r8a7740_add_standard_devices_dt,
>> .init_time = shmobile_timer_init,
> --
> Regards,
>
> Laurent Pinchart
>
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 4/6] ARM: shmobile: r8a7740: Prepare for reference DT setup
2013-04-04 13:45 [PATCH 4/6] ARM: shmobile: r8a7740: Prepare for reference DT setup Bastian Hecht
2013-04-04 14:07 ` Laurent Pinchart
2013-04-04 16:04 ` Bastian Hecht
@ 2013-04-05 0:07 ` Laurent Pinchart
2013-04-05 1:16 ` Kuninori Morimoto
` (4 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Laurent Pinchart @ 2013-04-05 0:07 UTC (permalink / raw)
To: linux-sh
Hi Bastian,
On Thursday 04 April 2013 18:04:40 Bastian Hecht wrote:
> 2013/4/4 Laurent Pinchart <laurent.pinchart@ideasonboard.com>:
> > Hi Bastian,
> >
> > Thanks for the patch.
> >
> > On Thursday 04 April 2013 15:45:42 Bastian Hecht wrote:
> >> We need two steps to prepare for the new Armadillo reference DT board
> >> code:
> >> - Split the device list into r8a7740_early_devices used by the old
> >> platform data setup (board-armadillo.c) and r8a7740_devices_dt used by
> >> both setup variants.
> >>
> >> - Introduce new r8a7740_init_delay() to be more flexible about calling
> >> shmobile_setup_delay().
> >>
> >> This is similar to commit 3b00f9342623a5ebc
> >> "ARM: shmobile: sh73a0: Do not use early devices with DT reference"
> >>
> >> Signed-off-by: Bastian Hecht <hechtb+renesas@gmail.com>
> >> ---
> >>
> >> arch/arm/mach-shmobile/include/mach/r8a7740.h | 2 ++
> >> arch/arm/mach-shmobile/setup-r8a7740.c | 41 +++++++++--------
> >> 2 files changed, 23 insertions(+), 20 deletions(-)
[snip]
> >> diff --git a/arch/arm/mach-shmobile/setup-r8a7740.c
> >> b/arch/arm/mach-shmobile/setup-r8a7740.c index 228d7ab..ce0d2e6 100644
> >> --- a/arch/arm/mach-shmobile/setup-r8a7740.c
> >> +++ b/arch/arm/mach-shmobile/setup-r8a7740.c
[snip]
> >> +void __init r8a7740_generic_init_early(void)
> >
> > static void ?
>
> I'm not sure, other people might want to use that in their board code
> when they don't have the need to set up the clocks with some special
> flags like we need it for Armadillo.
In that case they will need to patch the header file to declare
r8a7740_generic_init_early, so they could as well remove the static at that
point.
> >> +{
> >> + r8a7740_clock_init(0);
> >> + r8a7740_init_delay();
> >>
> >> }
--
Regards,
Laurent Pinchart
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 4/6] ARM: shmobile: r8a7740: Prepare for reference DT setup
2013-04-04 13:45 [PATCH 4/6] ARM: shmobile: r8a7740: Prepare for reference DT setup Bastian Hecht
` (2 preceding siblings ...)
2013-04-05 0:07 ` Laurent Pinchart
@ 2013-04-05 1:16 ` Kuninori Morimoto
2013-04-08 10:45 ` Bastian Hecht
` (3 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Kuninori Morimoto @ 2013-04-05 1:16 UTC (permalink / raw)
To: linux-sh
Hi Bastian
Thank you for your patch
> We need two steps to prepare for the new Armadillo reference DT board code:
> - Split the device list into r8a7740_early_devices used by the old platform
> data setup (board-armadillo.c) and r8a7740_devices_dt used by both
> setup variants.
> - Introduce new r8a7740_init_delay() to be more flexible about calling
> shmobile_setup_delay().
>
> This is similar to commit 3b00f9342623a5ebc
> "ARM: shmobile: sh73a0: Do not use early devices with DT reference"
>
> Signed-off-by: Bastian Hecht <hechtb+renesas@gmail.com>
> ---
Unfortunately, setup-xxx.c DT style between existing chip (= H1/sh73a0/A1)
and new chip (= APE6/M1/H2) are different now.
I know A1 setup.c already have DT support,
so, I think that it is not easy to make it completely
the same style as APE6/M1/H1/H2 style.
And, I'm not sure when/who/how do it,
(do it or doesn't it ?)
but we will try to exchange
H1/sh73a0/A1 setup.c DT style in the future.
So, this is just information
Could you please check below my comments,
and Magnus <--> Arnd email thread on this patch series ?
[PATCH x/x] ARM: shmobile: r8a73a4 xxxx
> arch/arm/mach-shmobile/include/mach/r8a7740.h | 2 ++
> arch/arm/mach-shmobile/setup-r8a7740.c | 41 +++++++++++++------------
> 2 files changed, 23 insertions(+), 20 deletions(-)
>
> diff --git a/arch/arm/mach-shmobile/include/mach/r8a7740.h b/arch/arm/mach-shmobile/include/mach/r8a7740.h
> index abdc4d4..61df082 100644
> --- a/arch/arm/mach-shmobile/include/mach/r8a7740.h
> +++ b/arch/arm/mach-shmobile/include/mach/r8a7740.h
> @@ -533,10 +533,12 @@ enum {
> };
>
> extern void r8a7740_meram_workaround(void);
> +extern void r8a7740_init_delay(void);
> extern void r8a7740_init_irq(void);
> extern void r8a7740_map_io(void);
> extern void r8a7740_add_early_devices(void);
> extern void r8a7740_add_standard_devices(void);
> +extern void r8a7740_add_standard_devices_dt(void);
> extern void r8a7740_clock_init(u8 md_ck);
> extern void r8a7740_pinmux_init(void);
> extern void r8a7740_pm_init(void);
> diff --git a/arch/arm/mach-shmobile/setup-r8a7740.c b/arch/arm/mach-shmobile/setup-r8a7740.c
> index 228d7ab..ce0d2e6 100644
> --- a/arch/arm/mach-shmobile/setup-r8a7740.c
> +++ b/arch/arm/mach-shmobile/setup-r8a7740.c
> @@ -531,11 +531,7 @@ static struct platform_device ipmmu_device = {
> .num_resources = ARRAY_SIZE(ipmmu_resources),
> };
>
> -static struct platform_device *r8a7740_early_devices[] __initdata = {
> - &irqpin0_device,
> - &irqpin1_device,
> - &irqpin2_device,
> - &irqpin3_device,
> +static struct platform_device *r8a7740_devices_dt[] __initdata = {
> &scif0_device,
> &scif1_device,
> &scif2_device,
> @@ -546,6 +542,13 @@ static struct platform_device *r8a7740_early_devices[] __initdata = {
> &scif7_device,
> &scifb_device,
> &cmt10_device,
> +};
> +
> +static struct platform_device *r8a7740_early_devices[] __initdata = {
> + &irqpin0_device,
> + &irqpin1_device,
> + &irqpin2_device,
> + &irqpin3_device,
> &tmu00_device,
> &tmu01_device,
> &tmu02_device,
> @@ -965,6 +968,8 @@ void __init r8a7740_add_standard_devices(void)
> /* add devices */
> platform_add_devices(r8a7740_early_devices,
> ARRAY_SIZE(r8a7740_early_devices));
> + platform_add_devices(r8a7740_devices_dt,
> + ARRAY_SIZE(r8a7740_devices_dt));
> platform_add_devices(r8a7740_late_devices,
> ARRAY_SIZE(r8a7740_late_devices));
This is for our note.
We will not use platform_add_devices() in the future.
But, I think, these could be changed collectively later.
> @@ -991,31 +996,27 @@ void __init r8a7740_add_early_devices(void)
> shmobile_setup_console();
> }
>
> -#ifdef CONFIG_USE_OF
> -
> -void __init r8a7740_add_early_devices_dt(void)
> +void __init r8a7740_init_delay(void)
> {
> shmobile_setup_delay(800, 1, 3); /* Cortex-A9 @ 800MHz */
> +};
>
> - early_platform_add_devices(r8a7740_early_devices,
> - ARRAY_SIZE(r8a7740_early_devices));
> -
> - /* setup early console here as well */
> - shmobile_setup_console();
> +void __init r8a7740_generic_init_early(void)
> +{
> + r8a7740_clock_init(0);
> + r8a7740_init_delay();
> }
Current APE6/M1/H1/H2 doesn't call {CPU}_clock_init() from setup.c
It will be called from board.c now
> +#ifdef CONFIG_USE_OF
> +
> static const struct of_dev_auxdata r8a7740_auxdata_lookup[] __initconst = {
> { }
> };
>
> void __init r8a7740_add_standard_devices_dt(void)
> {
> - /* clocks are setup late during boot in the case of DT */
> - r8a7740_clock_init(0);
> -
> - platform_add_devices(r8a7740_early_devices,
> - ARRAY_SIZE(r8a7740_early_devices));
> -
> + platform_add_devices(r8a7740_devices_dt,
> + ARRAY_SIZE(r8a7740_devices_dt));
> of_platform_populate(NULL, of_default_bus_match_table,
> r8a7740_auxdata_lookup, NULL);
> }
This is just information.
I'm not sure r8a7740 / armadillo case,
but, current {CPU}_add_standard_devices_dt() on APE6/M1/H1/H2
only have of_platform_populate(),
and it will be removed in the future (?).
Thank you
Best regards
---
Kuninori Morimoto
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 4/6] ARM: shmobile: r8a7740: Prepare for reference DT setup
2013-04-04 13:45 [PATCH 4/6] ARM: shmobile: r8a7740: Prepare for reference DT setup Bastian Hecht
` (3 preceding siblings ...)
2013-04-05 1:16 ` Kuninori Morimoto
@ 2013-04-08 10:45 ` Bastian Hecht
2013-04-09 0:03 ` Kuninori Morimoto
` (2 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Bastian Hecht @ 2013-04-08 10:45 UTC (permalink / raw)
To: linux-sh
Hi Morimoto-san,
thanks for pointing out the differences of the board codes, I will
have a look and see if it's appropriate to apply (partially) the new
style or go with the old one.
Cheers,
Bastian
2013/4/5 Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>:
>
> Hi Bastian
>
> Thank you for your patch
>
>> We need two steps to prepare for the new Armadillo reference DT board code:
>> - Split the device list into r8a7740_early_devices used by the old platform
>> data setup (board-armadillo.c) and r8a7740_devices_dt used by both
>> setup variants.
>> - Introduce new r8a7740_init_delay() to be more flexible about calling
>> shmobile_setup_delay().
>>
>> This is similar to commit 3b00f9342623a5ebc
>> "ARM: shmobile: sh73a0: Do not use early devices with DT reference"
>>
>> Signed-off-by: Bastian Hecht <hechtb+renesas@gmail.com>
>> ---
>
> Unfortunately, setup-xxx.c DT style between existing chip (= H1/sh73a0/A1)
> and new chip (= APE6/M1/H2) are different now.
>
> I know A1 setup.c already have DT support,
> so, I think that it is not easy to make it completely
> the same style as APE6/M1/H1/H2 style.
>
> And, I'm not sure when/who/how do it,
> (do it or doesn't it ?)
> but we will try to exchange
> H1/sh73a0/A1 setup.c DT style in the future.
>
> So, this is just information
>
> Could you please check below my comments,
> and Magnus <--> Arnd email thread on this patch series ?
>
> [PATCH x/x] ARM: shmobile: r8a73a4 xxxx
>
>
>> arch/arm/mach-shmobile/include/mach/r8a7740.h | 2 ++
>> arch/arm/mach-shmobile/setup-r8a7740.c | 41 +++++++++++++------------
>> 2 files changed, 23 insertions(+), 20 deletions(-)
>>
>> diff --git a/arch/arm/mach-shmobile/include/mach/r8a7740.h b/arch/arm/mach-shmobile/include/mach/r8a7740.h
>> index abdc4d4..61df082 100644
>> --- a/arch/arm/mach-shmobile/include/mach/r8a7740.h
>> +++ b/arch/arm/mach-shmobile/include/mach/r8a7740.h
>> @@ -533,10 +533,12 @@ enum {
>> };
>>
>> extern void r8a7740_meram_workaround(void);
>> +extern void r8a7740_init_delay(void);
>> extern void r8a7740_init_irq(void);
>> extern void r8a7740_map_io(void);
>> extern void r8a7740_add_early_devices(void);
>> extern void r8a7740_add_standard_devices(void);
>> +extern void r8a7740_add_standard_devices_dt(void);
>> extern void r8a7740_clock_init(u8 md_ck);
>> extern void r8a7740_pinmux_init(void);
>> extern void r8a7740_pm_init(void);
>> diff --git a/arch/arm/mach-shmobile/setup-r8a7740.c b/arch/arm/mach-shmobile/setup-r8a7740.c
>> index 228d7ab..ce0d2e6 100644
>> --- a/arch/arm/mach-shmobile/setup-r8a7740.c
>> +++ b/arch/arm/mach-shmobile/setup-r8a7740.c
>> @@ -531,11 +531,7 @@ static struct platform_device ipmmu_device = {
>> .num_resources = ARRAY_SIZE(ipmmu_resources),
>> };
>>
>> -static struct platform_device *r8a7740_early_devices[] __initdata = {
>> - &irqpin0_device,
>> - &irqpin1_device,
>> - &irqpin2_device,
>> - &irqpin3_device,
>> +static struct platform_device *r8a7740_devices_dt[] __initdata = {
>> &scif0_device,
>> &scif1_device,
>> &scif2_device,
>> @@ -546,6 +542,13 @@ static struct platform_device *r8a7740_early_devices[] __initdata = {
>> &scif7_device,
>> &scifb_device,
>> &cmt10_device,
>> +};
>> +
>> +static struct platform_device *r8a7740_early_devices[] __initdata = {
>> + &irqpin0_device,
>> + &irqpin1_device,
>> + &irqpin2_device,
>> + &irqpin3_device,
>> &tmu00_device,
>> &tmu01_device,
>> &tmu02_device,
>> @@ -965,6 +968,8 @@ void __init r8a7740_add_standard_devices(void)
>> /* add devices */
>> platform_add_devices(r8a7740_early_devices,
>> ARRAY_SIZE(r8a7740_early_devices));
>> + platform_add_devices(r8a7740_devices_dt,
>> + ARRAY_SIZE(r8a7740_devices_dt));
>> platform_add_devices(r8a7740_late_devices,
>> ARRAY_SIZE(r8a7740_late_devices));
>
> This is for our note.
> We will not use platform_add_devices() in the future.
> But, I think, these could be changed collectively later.
>
>> @@ -991,31 +996,27 @@ void __init r8a7740_add_early_devices(void)
>> shmobile_setup_console();
>> }
>>
>> -#ifdef CONFIG_USE_OF
>> -
>> -void __init r8a7740_add_early_devices_dt(void)
>> +void __init r8a7740_init_delay(void)
>> {
>> shmobile_setup_delay(800, 1, 3); /* Cortex-A9 @ 800MHz */
>> +};
>>
>> - early_platform_add_devices(r8a7740_early_devices,
>> - ARRAY_SIZE(r8a7740_early_devices));
>> -
>> - /* setup early console here as well */
>> - shmobile_setup_console();
>> +void __init r8a7740_generic_init_early(void)
>> +{
>> + r8a7740_clock_init(0);
>> + r8a7740_init_delay();
>> }
>
> Current APE6/M1/H1/H2 doesn't call {CPU}_clock_init() from setup.c
> It will be called from board.c now
>
>> +#ifdef CONFIG_USE_OF
>> +
>> static const struct of_dev_auxdata r8a7740_auxdata_lookup[] __initconst = {
>> { }
>> };
>>
>> void __init r8a7740_add_standard_devices_dt(void)
>> {
>> - /* clocks are setup late during boot in the case of DT */
>> - r8a7740_clock_init(0);
>> -
>> - platform_add_devices(r8a7740_early_devices,
>> - ARRAY_SIZE(r8a7740_early_devices));
>> -
>> + platform_add_devices(r8a7740_devices_dt,
>> + ARRAY_SIZE(r8a7740_devices_dt));
>> of_platform_populate(NULL, of_default_bus_match_table,
>> r8a7740_auxdata_lookup, NULL);
>> }
>
> This is just information.
> I'm not sure r8a7740 / armadillo case,
> but, current {CPU}_add_standard_devices_dt() on APE6/M1/H1/H2
> only have of_platform_populate(),
> and it will be removed in the future (?).
>
> Thank you
>
> Best regards
> ---
> Kuninori Morimoto
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 4/6] ARM: shmobile: r8a7740: Prepare for reference DT setup
2013-04-04 13:45 [PATCH 4/6] ARM: shmobile: r8a7740: Prepare for reference DT setup Bastian Hecht
` (4 preceding siblings ...)
2013-04-08 10:45 ` Bastian Hecht
@ 2013-04-09 0:03 ` Kuninori Morimoto
2013-04-17 9:18 ` Bastian Hecht
2013-04-18 0:34 ` Kuninori Morimoto
7 siblings, 0 replies; 9+ messages in thread
From: Kuninori Morimoto @ 2013-04-09 0:03 UTC (permalink / raw)
To: linux-sh
Hi Bastian
> thanks for pointing out the differences of the board codes, I will
> have a look and see if it's appropriate to apply (partially) the new
> style or go with the old one.
Thank you for your help !!
> 2013/4/5 Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>:
> >
> > Hi Bastian
> >
> > Thank you for your patch
> >
> >> We need two steps to prepare for the new Armadillo reference DT board code:
> >> - Split the device list into r8a7740_early_devices used by the old platform
> >> data setup (board-armadillo.c) and r8a7740_devices_dt used by both
> >> setup variants.
> >> - Introduce new r8a7740_init_delay() to be more flexible about calling
> >> shmobile_setup_delay().
> >>
> >> This is similar to commit 3b00f9342623a5ebc
> >> "ARM: shmobile: sh73a0: Do not use early devices with DT reference"
> >>
> >> Signed-off-by: Bastian Hecht <hechtb+renesas@gmail.com>
> >> ---
> >
> > Unfortunately, setup-xxx.c DT style between existing chip (= H1/sh73a0/A1)
> > and new chip (= APE6/M1/H2) are different now.
> >
> > I know A1 setup.c already have DT support,
> > so, I think that it is not easy to make it completely
> > the same style as APE6/M1/H1/H2 style.
> >
> > And, I'm not sure when/who/how do it,
> > (do it or doesn't it ?)
> > but we will try to exchange
> > H1/sh73a0/A1 setup.c DT style in the future.
> >
> > So, this is just information
> >
> > Could you please check below my comments,
> > and Magnus <--> Arnd email thread on this patch series ?
> >
> > [PATCH x/x] ARM: shmobile: r8a73a4 xxxx
> >
> >
> >> arch/arm/mach-shmobile/include/mach/r8a7740.h | 2 ++
> >> arch/arm/mach-shmobile/setup-r8a7740.c | 41 +++++++++++++------------
> >> 2 files changed, 23 insertions(+), 20 deletions(-)
> >>
> >> diff --git a/arch/arm/mach-shmobile/include/mach/r8a7740.h b/arch/arm/mach-shmobile/include/mach/r8a7740.h
> >> index abdc4d4..61df082 100644
> >> --- a/arch/arm/mach-shmobile/include/mach/r8a7740.h
> >> +++ b/arch/arm/mach-shmobile/include/mach/r8a7740.h
> >> @@ -533,10 +533,12 @@ enum {
> >> };
> >>
> >> extern void r8a7740_meram_workaround(void);
> >> +extern void r8a7740_init_delay(void);
> >> extern void r8a7740_init_irq(void);
> >> extern void r8a7740_map_io(void);
> >> extern void r8a7740_add_early_devices(void);
> >> extern void r8a7740_add_standard_devices(void);
> >> +extern void r8a7740_add_standard_devices_dt(void);
> >> extern void r8a7740_clock_init(u8 md_ck);
> >> extern void r8a7740_pinmux_init(void);
> >> extern void r8a7740_pm_init(void);
> >> diff --git a/arch/arm/mach-shmobile/setup-r8a7740.c b/arch/arm/mach-shmobile/setup-r8a7740.c
> >> index 228d7ab..ce0d2e6 100644
> >> --- a/arch/arm/mach-shmobile/setup-r8a7740.c
> >> +++ b/arch/arm/mach-shmobile/setup-r8a7740.c
> >> @@ -531,11 +531,7 @@ static struct platform_device ipmmu_device = {
> >> .num_resources = ARRAY_SIZE(ipmmu_resources),
> >> };
> >>
> >> -static struct platform_device *r8a7740_early_devices[] __initdata = {
> >> - &irqpin0_device,
> >> - &irqpin1_device,
> >> - &irqpin2_device,
> >> - &irqpin3_device,
> >> +static struct platform_device *r8a7740_devices_dt[] __initdata = {
> >> &scif0_device,
> >> &scif1_device,
> >> &scif2_device,
> >> @@ -546,6 +542,13 @@ static struct platform_device *r8a7740_early_devices[] __initdata = {
> >> &scif7_device,
> >> &scifb_device,
> >> &cmt10_device,
> >> +};
> >> +
> >> +static struct platform_device *r8a7740_early_devices[] __initdata = {
> >> + &irqpin0_device,
> >> + &irqpin1_device,
> >> + &irqpin2_device,
> >> + &irqpin3_device,
> >> &tmu00_device,
> >> &tmu01_device,
> >> &tmu02_device,
> >> @@ -965,6 +968,8 @@ void __init r8a7740_add_standard_devices(void)
> >> /* add devices */
> >> platform_add_devices(r8a7740_early_devices,
> >> ARRAY_SIZE(r8a7740_early_devices));
> >> + platform_add_devices(r8a7740_devices_dt,
> >> + ARRAY_SIZE(r8a7740_devices_dt));
> >> platform_add_devices(r8a7740_late_devices,
> >> ARRAY_SIZE(r8a7740_late_devices));
> >
> > This is for our note.
> > We will not use platform_add_devices() in the future.
> > But, I think, these could be changed collectively later.
> >
> >> @@ -991,31 +996,27 @@ void __init r8a7740_add_early_devices(void)
> >> shmobile_setup_console();
> >> }
> >>
> >> -#ifdef CONFIG_USE_OF
> >> -
> >> -void __init r8a7740_add_early_devices_dt(void)
> >> +void __init r8a7740_init_delay(void)
> >> {
> >> shmobile_setup_delay(800, 1, 3); /* Cortex-A9 @ 800MHz */
> >> +};
> >>
> >> - early_platform_add_devices(r8a7740_early_devices,
> >> - ARRAY_SIZE(r8a7740_early_devices));
> >> -
> >> - /* setup early console here as well */
> >> - shmobile_setup_console();
> >> +void __init r8a7740_generic_init_early(void)
> >> +{
> >> + r8a7740_clock_init(0);
> >> + r8a7740_init_delay();
> >> }
> >
> > Current APE6/M1/H1/H2 doesn't call {CPU}_clock_init() from setup.c
> > It will be called from board.c now
> >
> >> +#ifdef CONFIG_USE_OF
> >> +
> >> static const struct of_dev_auxdata r8a7740_auxdata_lookup[] __initconst = {
> >> { }
> >> };
> >>
> >> void __init r8a7740_add_standard_devices_dt(void)
> >> {
> >> - /* clocks are setup late during boot in the case of DT */
> >> - r8a7740_clock_init(0);
> >> -
> >> - platform_add_devices(r8a7740_early_devices,
> >> - ARRAY_SIZE(r8a7740_early_devices));
> >> -
> >> + platform_add_devices(r8a7740_devices_dt,
> >> + ARRAY_SIZE(r8a7740_devices_dt));
> >> of_platform_populate(NULL, of_default_bus_match_table,
> >> r8a7740_auxdata_lookup, NULL);
> >> }
> >
> > This is just information.
> > I'm not sure r8a7740 / armadillo case,
> > but, current {CPU}_add_standard_devices_dt() on APE6/M1/H1/H2
> > only have of_platform_populate(),
> > and it will be removed in the future (?).
> >
> > Thank you
> >
> > Best regards
> > ---
> > Kuninori Morimoto
Best regards
---
Kuninori Morimoto
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 4/6] ARM: shmobile: r8a7740: Prepare for reference DT setup
2013-04-04 13:45 [PATCH 4/6] ARM: shmobile: r8a7740: Prepare for reference DT setup Bastian Hecht
` (5 preceding siblings ...)
2013-04-09 0:03 ` Kuninori Morimoto
@ 2013-04-17 9:18 ` Bastian Hecht
2013-04-18 0:34 ` Kuninori Morimoto
7 siblings, 0 replies; 9+ messages in thread
From: Bastian Hecht @ 2013-04-17 9:18 UTC (permalink / raw)
To: linux-sh
Hello Morimoto-san,
2013/4/9 Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>:
>
> Hi Bastian
>
>> thanks for pointing out the differences of the board codes, I will
>> have a look and see if it's appropriate to apply (partially) the new
>> style or go with the old one.
>
> Thank you for your help !!
I've decided to repost the patch series more or less at it is as I've
got limited resources for it and if I would need to convert both board
files to use the new style we would never get it. So better old style
then nothing.
Sorry,
Bastian
>
>> 2013/4/5 Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>:
>> >
>> > Hi Bastian
>> >
>> > Thank you for your patch
>> >
>> >> We need two steps to prepare for the new Armadillo reference DT board code:
>> >> - Split the device list into r8a7740_early_devices used by the old platform
>> >> data setup (board-armadillo.c) and r8a7740_devices_dt used by both
>> >> setup variants.
>> >> - Introduce new r8a7740_init_delay() to be more flexible about calling
>> >> shmobile_setup_delay().
>> >>
>> >> This is similar to commit 3b00f9342623a5ebc
>> >> "ARM: shmobile: sh73a0: Do not use early devices with DT reference"
>> >>
>> >> Signed-off-by: Bastian Hecht <hechtb+renesas@gmail.com>
>> >> ---
>> >
>> > Unfortunately, setup-xxx.c DT style between existing chip (= H1/sh73a0/A1)
>> > and new chip (= APE6/M1/H2) are different now.
>> >
>> > I know A1 setup.c already have DT support,
>> > so, I think that it is not easy to make it completely
>> > the same style as APE6/M1/H1/H2 style.
>> >
>> > And, I'm not sure when/who/how do it,
>> > (do it or doesn't it ?)
>> > but we will try to exchange
>> > H1/sh73a0/A1 setup.c DT style in the future.
>> >
>> > So, this is just information
>> >
>> > Could you please check below my comments,
>> > and Magnus <--> Arnd email thread on this patch series ?
>> >
>> > [PATCH x/x] ARM: shmobile: r8a73a4 xxxx
>> >
>> >
>> >> arch/arm/mach-shmobile/include/mach/r8a7740.h | 2 ++
>> >> arch/arm/mach-shmobile/setup-r8a7740.c | 41 +++++++++++++------------
>> >> 2 files changed, 23 insertions(+), 20 deletions(-)
>> >>
>> >> diff --git a/arch/arm/mach-shmobile/include/mach/r8a7740.h b/arch/arm/mach-shmobile/include/mach/r8a7740.h
>> >> index abdc4d4..61df082 100644
>> >> --- a/arch/arm/mach-shmobile/include/mach/r8a7740.h
>> >> +++ b/arch/arm/mach-shmobile/include/mach/r8a7740.h
>> >> @@ -533,10 +533,12 @@ enum {
>> >> };
>> >>
>> >> extern void r8a7740_meram_workaround(void);
>> >> +extern void r8a7740_init_delay(void);
>> >> extern void r8a7740_init_irq(void);
>> >> extern void r8a7740_map_io(void);
>> >> extern void r8a7740_add_early_devices(void);
>> >> extern void r8a7740_add_standard_devices(void);
>> >> +extern void r8a7740_add_standard_devices_dt(void);
>> >> extern void r8a7740_clock_init(u8 md_ck);
>> >> extern void r8a7740_pinmux_init(void);
>> >> extern void r8a7740_pm_init(void);
>> >> diff --git a/arch/arm/mach-shmobile/setup-r8a7740.c b/arch/arm/mach-shmobile/setup-r8a7740.c
>> >> index 228d7ab..ce0d2e6 100644
>> >> --- a/arch/arm/mach-shmobile/setup-r8a7740.c
>> >> +++ b/arch/arm/mach-shmobile/setup-r8a7740.c
>> >> @@ -531,11 +531,7 @@ static struct platform_device ipmmu_device = {
>> >> .num_resources = ARRAY_SIZE(ipmmu_resources),
>> >> };
>> >>
>> >> -static struct platform_device *r8a7740_early_devices[] __initdata = {
>> >> - &irqpin0_device,
>> >> - &irqpin1_device,
>> >> - &irqpin2_device,
>> >> - &irqpin3_device,
>> >> +static struct platform_device *r8a7740_devices_dt[] __initdata = {
>> >> &scif0_device,
>> >> &scif1_device,
>> >> &scif2_device,
>> >> @@ -546,6 +542,13 @@ static struct platform_device *r8a7740_early_devices[] __initdata = {
>> >> &scif7_device,
>> >> &scifb_device,
>> >> &cmt10_device,
>> >> +};
>> >> +
>> >> +static struct platform_device *r8a7740_early_devices[] __initdata = {
>> >> + &irqpin0_device,
>> >> + &irqpin1_device,
>> >> + &irqpin2_device,
>> >> + &irqpin3_device,
>> >> &tmu00_device,
>> >> &tmu01_device,
>> >> &tmu02_device,
>> >> @@ -965,6 +968,8 @@ void __init r8a7740_add_standard_devices(void)
>> >> /* add devices */
>> >> platform_add_devices(r8a7740_early_devices,
>> >> ARRAY_SIZE(r8a7740_early_devices));
>> >> + platform_add_devices(r8a7740_devices_dt,
>> >> + ARRAY_SIZE(r8a7740_devices_dt));
>> >> platform_add_devices(r8a7740_late_devices,
>> >> ARRAY_SIZE(r8a7740_late_devices));
>> >
>> > This is for our note.
>> > We will not use platform_add_devices() in the future.
>> > But, I think, these could be changed collectively later.
>> >
>> >> @@ -991,31 +996,27 @@ void __init r8a7740_add_early_devices(void)
>> >> shmobile_setup_console();
>> >> }
>> >>
>> >> -#ifdef CONFIG_USE_OF
>> >> -
>> >> -void __init r8a7740_add_early_devices_dt(void)
>> >> +void __init r8a7740_init_delay(void)
>> >> {
>> >> shmobile_setup_delay(800, 1, 3); /* Cortex-A9 @ 800MHz */
>> >> +};
>> >>
>> >> - early_platform_add_devices(r8a7740_early_devices,
>> >> - ARRAY_SIZE(r8a7740_early_devices));
>> >> -
>> >> - /* setup early console here as well */
>> >> - shmobile_setup_console();
>> >> +void __init r8a7740_generic_init_early(void)
>> >> +{
>> >> + r8a7740_clock_init(0);
>> >> + r8a7740_init_delay();
>> >> }
>> >
>> > Current APE6/M1/H1/H2 doesn't call {CPU}_clock_init() from setup.c
>> > It will be called from board.c now
>> >
>> >> +#ifdef CONFIG_USE_OF
>> >> +
>> >> static const struct of_dev_auxdata r8a7740_auxdata_lookup[] __initconst = {
>> >> { }
>> >> };
>> >>
>> >> void __init r8a7740_add_standard_devices_dt(void)
>> >> {
>> >> - /* clocks are setup late during boot in the case of DT */
>> >> - r8a7740_clock_init(0);
>> >> -
>> >> - platform_add_devices(r8a7740_early_devices,
>> >> - ARRAY_SIZE(r8a7740_early_devices));
>> >> -
>> >> + platform_add_devices(r8a7740_devices_dt,
>> >> + ARRAY_SIZE(r8a7740_devices_dt));
>> >> of_platform_populate(NULL, of_default_bus_match_table,
>> >> r8a7740_auxdata_lookup, NULL);
>> >> }
>> >
>> > This is just information.
>> > I'm not sure r8a7740 / armadillo case,
>> > but, current {CPU}_add_standard_devices_dt() on APE6/M1/H1/H2
>> > only have of_platform_populate(),
>> > and it will be removed in the future (?).
>> >
>> > Thank you
>> >
>> > Best regards
>> > ---
>> > Kuninori Morimoto
>
>
> Best regards
> ---
> Kuninori Morimoto
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 4/6] ARM: shmobile: r8a7740: Prepare for reference DT setup
2013-04-04 13:45 [PATCH 4/6] ARM: shmobile: r8a7740: Prepare for reference DT setup Bastian Hecht
` (6 preceding siblings ...)
2013-04-17 9:18 ` Bastian Hecht
@ 2013-04-18 0:34 ` Kuninori Morimoto
7 siblings, 0 replies; 9+ messages in thread
From: Kuninori Morimoto @ 2013-04-18 0:34 UTC (permalink / raw)
To: linux-sh
Hi Bastian
> >> thanks for pointing out the differences of the board codes, I will
> >> have a look and see if it's appropriate to apply (partially) the new
> >> style or go with the old one.
> >
> > Thank you for your help !!
>
> I've decided to repost the patch series more or less at it is as I've
> got limited resources for it and if I would need to convert both board
> files to use the new style we would never get it. So better old style
> then nothing.
Thank you for your report.
OK, no problem for me
Best regards
---
Kuninori Morimoto
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2013-04-18 0:34 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-04-04 13:45 [PATCH 4/6] ARM: shmobile: r8a7740: Prepare for reference DT setup Bastian Hecht
2013-04-04 14:07 ` Laurent Pinchart
2013-04-04 16:04 ` Bastian Hecht
2013-04-05 0:07 ` Laurent Pinchart
2013-04-05 1:16 ` Kuninori Morimoto
2013-04-08 10:45 ` Bastian Hecht
2013-04-09 0:03 ` Kuninori Morimoto
2013-04-17 9:18 ` Bastian Hecht
2013-04-18 0:34 ` Kuninori Morimoto
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox