Linux Samsung SOC development
 help / color / mirror / Atom feed
* [PATCH 00/26] ARM: provide common arch init for DT clocks
@ 2013-09-18 17:53 Sebastian Hesselbarth
  2013-09-18 17:53 ` [PATCH 09/26] ARM: call of_clk_init from default time_init handler Sebastian Hesselbarth
                   ` (3 more replies)
  0 siblings, 4 replies; 15+ messages in thread
From: Sebastian Hesselbarth @ 2013-09-18 17:53 UTC (permalink / raw)
  To: Sebastian Hesselbarth
  Cc: Olof Johansson, Arnd Bergmann, Russell King, STEricsson,
	linux-tegra, linux-rpi-kernel, linux-samsung-soc, kernel,
	linux-arm-kernel, linux-kernel

This is a patch set based on an RFC [1][2] sent earlier to provide a common
arch/arm init for DT clock providers. Currently, the call to of_clk_init(NULL)
to initialize DT clock providers is spread among several mach-dirs. Since most
machs require DT clocks initialized before timers, no initcall can be used.

By adding of_clk_init(NULL) to arch/arm time_init(), we can remove all
mach-specific .init_time hooks that basically called of_clk_init and
clocksource_of_init.

In contrast to the RFC version, of_clk_init(NULL) is now only called if no
custom .init_time callback is set. This allows some machs to still call clock
init themselves, as not all can be converted now. Therefore, this patch sets
drops conversion of mach-mvebu and mach-zynq. New machs that were introduced
with v3.12-rc1 are also converted, except mach-u300 that requires clocks
before irqs.

The patch set is based on v3.12-rc1 and further depends on a topic branch
created by Stephen Warren for mach-tegra [3]. It is now split into preparation
and removal patches to not break bisectability. I added all Acked-by/Tested-by's
where applicable or dropped them, if the patch was separated into two.
It has been compile tested for all machs involved with the following defconfigs
(multi_v7, bcm2835, dove, exynos, kirkwood, mxs, nhk8815) and nspire selected
on multi_v4_v5.

Patches 1-8 comprise preparation patches that convert machs nomadik, prima2,
socfpga, sunxi, tegra, and vt8500 to usual .init_time callbacks calling only
of_clk_init and clocksource_of_init.

Patch 9 then introduces of_clk_init(NULL) to the arch-wide default .init_time
callback.

Patches 10-26 finally remove custom .init_time callbacks from the machs involved.

The patches have been pushed to a topic branch based on v3.12-rc1 with tegra's
tegra-for-3.13-deps-for-arm-init-time-cleanup branch merged in to

https://github.com/shesselba/linux-dove.git clk-of-init-v1_for-3.13

[1] http://www.spinics.net/lists/arm-kernel/msg268260.html
[2] http://www.spinics.net/lists/arm-kernel/msg270173.html
[3] http://www.spinics.net/lists/arm-kernel/msg273957.html
    git://git.kernel.org/pub/scm/linux/kernel/git/swarren/linux-tegra.git tegra-for-3.13-deps-for-arm-init-time-cleanup

Sebastian Hesselbarth (26):
  ARM: nomadik: move mtu setup to clocksource init
  clk: nomadik: move src init out of nomadik_clk_init
  clk: nomadik: declare OF clock provider
  clk: prima2: declare OF clock provider
  ARM: socfgpa: prepare for arch-wide .init_time callback
  clk: sunxi: declare OF clock provider
  clk: vt8500: parse pmc_base from clock driver
  ARM: vt8500: prepare for arch-wide .init_time callback
  ARM: call of_clk_init from default time_init handler
  ARM: bcm2835: remove custom .init_time hook
  ARM: dove: remove custom .init_time hook
  ARM: exynos: remove custom .init_time hook
  ARM: highbank: remove custom .init_time hook
  ARM: imx: remove custom .init_time hook
  ARM: kirkwood: remove custom .init_time hook
  ARM: mxs: remove custom .init_time hook
  ARM: nomadik: remove custom .init_time hook
  ARM: nspire: remove custom .init_time hook
  ARM: prima2: remove custom .init_time hook
  ARM: rockchip: remove custom .init_time hook
  ARM: socfpga: remove custom .init_time hook
  ARM: sti: remove custom .init_time hook
  ARM: sunxi: remove custom .init_time hook
  ARM: tegra: remove custom .init_time hook
  ARM: vexpress: remove custom .init_time hook
  ARM: vt8500: remove custom .init_time hook

 arch/arm/kernel/time.c                    |   27 ++---
 arch/arm/mach-bcm2835/bcm2835.c           |    2 -
 arch/arm/mach-dove/board-dt.c             |   11 --
 arch/arm/mach-exynos/common.c             |    8 --
 arch/arm/mach-exynos/common.h             |    1 -
 arch/arm/mach-exynos/mach-exynos4-dt.c    |    2 -
 arch/arm/mach-exynos/mach-exynos5-dt.c    |    2 -
 arch/arm/mach-highbank/highbank.c         |   23 ++---
 arch/arm/mach-imx/clk-imx51-imx53.c       |   29 ++----
 arch/arm/mach-imx/common.h                |    4 -
 arch/arm/mach-imx/imx51-dt.c              |    6 --
 arch/arm/mach-imx/mach-imx53.c            |    6 --
 arch/arm/mach-imx/mach-imx6q.c            |   14 +--
 arch/arm/mach-imx/mach-imx6sl.c           |    7 --
 arch/arm/mach-imx/mach-vf610.c            |    9 --
 arch/arm/mach-kirkwood/board-dt.c         |    8 --
 arch/arm/mach-mxs/mach-mxs.c              |   13 ---
 arch/arm/mach-nomadik/cpu-8815.c          |   36 -------
 arch/arm/mach-nspire/nspire.c             |    9 --
 arch/arm/mach-prima2/common.c             |   11 --
 arch/arm/mach-prima2/common.h             |    1 -
 arch/arm/mach-rockchip/rockchip.c         |    9 --
 arch/arm/mach-socfpga/socfpga.c           |    2 -
 arch/arm/mach-sti/board-dt.c              |   10 +-
 arch/arm/mach-sunxi/sunxi.c               |   10 --
 arch/arm/mach-tegra/tegra.c               |    9 --
 arch/arm/mach-vexpress/v2m.c              |   14 +--
 arch/arm/mach-vt8500/common.h             |   24 -----
 arch/arm/mach-vt8500/vt8500.c             |    6 --
 drivers/clk/clk-bcm2835.c                 |    8 --
 drivers/clk/clk-highbank.c                |   10 +-
 drivers/clk/clk-nomadik.c                 |  161 ++++++++++++++---------------
 drivers/clk/clk-prima2.c                  |   29 ++----
 drivers/clk/clk-vt8500.c                  |   31 ++++--
 drivers/clk/mxs/clk-imx23.c               |   15 +--
 drivers/clk/mxs/clk-imx28.c               |   16 +--
 drivers/clk/sunxi/clk-sunxi.c             |   11 +-
 drivers/clocksource/nomadik-mtu.c         |   11 ++
 include/linux/clk/mxs.h                   |    2 -
 include/linux/clk/sunxi.h                 |   22 ----
 include/linux/platform_data/clk-nomadik.h |    2 -
 41 files changed, 182 insertions(+), 449 deletions(-)
 delete mode 100644 arch/arm/mach-vt8500/common.h
 delete mode 100644 include/linux/clk/sunxi.h
 delete mode 100644 include/linux/platform_data/clk-nomadik.h

---
Cc: Olof Johansson <olof@lixom.net>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Russell King <linux@arm.linux.org.uk>
Cc: STEricsson <STEricsson_nomadik_linux@list.st.com>
Cc: linux-tegra@vger.kernel.org
Cc: linux-rpi-kernel@lists.infradead.org
Cc: linux-samsung-soc@vger.kernel.org
Cc: kernel@stlinux.com
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
-- 
1.7.10.4

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [PATCH 09/26] ARM: call of_clk_init from default time_init handler
  2013-09-18 17:53 [PATCH 00/26] ARM: provide common arch init for DT clocks Sebastian Hesselbarth
@ 2013-09-18 17:53 ` Sebastian Hesselbarth
       [not found]   ` <1379526839-14798-10-git-send-email-sebastian.hesselbarth-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
  2013-09-18 17:53 ` [PATCH 12/26] ARM: exynos: remove custom .init_time hook Sebastian Hesselbarth
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 15+ messages in thread
From: Sebastian Hesselbarth @ 2013-09-18 17:53 UTC (permalink / raw)
  To: Sebastian Hesselbarth
  Cc: linux-samsung-soc, linux-tegra, kernel, Arnd Bergmann,
	linux-kernel, STEricsson, linux-rpi-kernel, Olof Johansson,
	Russell King, linux-arm-kernel

Most DT ARM machs require common clock providers initialized before timers.
Currently, arch/arm machs use .init_time to call of_clk_init right before
clocksource_of_init. This prevents to remove that callback and use the default
one instead.

This patch adds a call to of_clk_init() to the default .init_time callback
to allow to remove custom callbacks where applicable. While at it, also
reorder includes alphabetically.

Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
---
Changelog:
RFCv2->v1:
- only call of_clk_init(NULL) when no custom .init_time is set
  (Suggested by Soeren Brinkmann)
RFCv1->RFCv2:
- reorder includes alphabetically

Cc: Olof Johansson <olof@lixom.net>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Russell King <linux@arm.linux.org.uk>
Cc: STEricsson <STEricsson_nomadik_linux@list.st.com>
Cc: linux-tegra@vger.kernel.org
Cc: linux-rpi-kernel@lists.infradead.org
Cc: linux-samsung-soc@vger.kernel.org
Cc: kernel@stlinux.com
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
---
 arch/arm/kernel/time.c |   27 +++++++++++++++------------
 1 file changed, 15 insertions(+), 12 deletions(-)

diff --git a/arch/arm/kernel/time.c b/arch/arm/kernel/time.c
index 98aee32..bc0468b 100644
--- a/arch/arm/kernel/time.c
+++ b/arch/arm/kernel/time.c
@@ -11,25 +11,26 @@
  *  This file contains the ARM-specific time handling details:
  *  reading the RTC at bootup, etc...
  */
+#include <linux/clk-provider.h>
+#include <linux/clocksource.h>
+#include <linux/errno.h>
 #include <linux/export.h>
-#include <linux/kernel.h>
-#include <linux/interrupt.h>
-#include <linux/time.h>
 #include <linux/init.h>
+#include <linux/interrupt.h>
+#include <linux/irq.h>
+#include <linux/kernel.h>
+#include <linux/profile.h>
 #include <linux/sched.h>
+#include <linux/sched_clock.h>
 #include <linux/smp.h>
+#include <linux/time.h>
 #include <linux/timex.h>
-#include <linux/errno.h>
-#include <linux/profile.h>
 #include <linux/timer.h>
-#include <linux/clocksource.h>
-#include <linux/irq.h>
-#include <linux/sched_clock.h>
 
-#include <asm/thread_info.h>
-#include <asm/stacktrace.h>
 #include <asm/mach/arch.h>
 #include <asm/mach/time.h>
+#include <asm/stacktrace.h>
+#include <asm/thread_info.h>
 
 #if defined(CONFIG_RTC_DRV_CMOS) || defined(CONFIG_RTC_DRV_CMOS_MODULE) || \
     defined(CONFIG_NVRAM) || defined(CONFIG_NVRAM_MODULE)
@@ -116,8 +117,10 @@ int __init register_persistent_clock(clock_access_fn read_boot,
 
 void __init time_init(void)
 {
-	if (machine_desc->init_time)
+	if (machine_desc->init_time) {
 		machine_desc->init_time();
-	else
+	} else {
+		of_clk_init(NULL);
 		clocksource_of_init();
+	}
 }
-- 
1.7.10.4

^ permalink raw reply related	[flat|nested] 15+ messages in thread

* [PATCH 12/26] ARM: exynos: remove custom .init_time hook
  2013-09-18 17:53 [PATCH 00/26] ARM: provide common arch init for DT clocks Sebastian Hesselbarth
  2013-09-18 17:53 ` [PATCH 09/26] ARM: call of_clk_init from default time_init handler Sebastian Hesselbarth
@ 2013-09-18 17:53 ` Sebastian Hesselbarth
  2013-09-26  6:21   ` Sebastian Hesselbarth
       [not found] ` <1379526839-14798-1-git-send-email-sebastian.hesselbarth-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
  2013-09-20 19:16 ` Matt Porter
  3 siblings, 1 reply; 15+ messages in thread
From: Sebastian Hesselbarth @ 2013-09-18 17:53 UTC (permalink / raw)
  To: Sebastian Hesselbarth
  Cc: Olof Johansson, Arnd Bergmann, Russell King, Kukjin Kim,
	linux-arm-kernel, linux-samsung-soc, linux-kernel

With arch/arm calling of_clk_init(NULL) from time_init(), we can now
remove custom .init_time hooks. While at it, also remove some now
redundant includes.

Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
---
Cc: Olof Johansson <olof@lixom.net>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Kukjin Kim <kgene.kim@samsung.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-samsung-soc@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
---
 arch/arm/mach-exynos/common.c          |    8 --------
 arch/arm/mach-exynos/common.h          |    1 -
 arch/arm/mach-exynos/mach-exynos4-dt.c |    2 --
 arch/arm/mach-exynos/mach-exynos5-dt.c |    2 --
 4 files changed, 13 deletions(-)

diff --git a/arch/arm/mach-exynos/common.c b/arch/arm/mach-exynos/common.c
index ba95e5d..a4e7ba8 100644
--- a/arch/arm/mach-exynos/common.c
+++ b/arch/arm/mach-exynos/common.c
@@ -26,8 +26,6 @@
 #include <linux/export.h>
 #include <linux/irqdomain.h>
 #include <linux/of_address.h>
-#include <linux/clocksource.h>
-#include <linux/clk-provider.h>
 #include <linux/irqchip/arm-gic.h>
 #include <linux/irqchip/chained_irq.h>
 
@@ -367,12 +365,6 @@ static void __init exynos5_map_io(void)
 		iotable_init(exynos5250_iodesc, ARRAY_SIZE(exynos5250_iodesc));
 }
 
-void __init exynos_init_time(void)
-{
-	of_clk_init(NULL);
-	clocksource_of_init();
-}
-
 struct bus_type exynos_subsys = {
 	.name		= "exynos-core",
 	.dev_name	= "exynos-core",
diff --git a/arch/arm/mach-exynos/common.h b/arch/arm/mach-exynos/common.h
index 8646a14..f0fa205 100644
--- a/arch/arm/mach-exynos/common.h
+++ b/arch/arm/mach-exynos/common.h
@@ -16,7 +16,6 @@
 #include <linux/of.h>
 
 void mct_init(void __iomem *base, int irq_g0, int irq_l0, int irq_l1);
-void exynos_init_time(void);
 
 struct map_desc;
 void exynos_init_io(void);
diff --git a/arch/arm/mach-exynos/mach-exynos4-dt.c b/arch/arm/mach-exynos/mach-exynos4-dt.c
index 0099c6c..6858d73 100644
--- a/arch/arm/mach-exynos/mach-exynos4-dt.c
+++ b/arch/arm/mach-exynos/mach-exynos4-dt.c
@@ -16,7 +16,6 @@
 #include <linux/of_fdt.h>
 #include <linux/serial_core.h>
 #include <linux/memblock.h>
-#include <linux/clocksource.h>
 
 #include <asm/mach/arch.h>
 #include <plat/mfc.h>
@@ -54,7 +53,6 @@ DT_MACHINE_START(EXYNOS4210_DT, "Samsung Exynos4 (Flattened Device Tree)")
 	.init_early	= exynos_firmware_init,
 	.init_machine	= exynos4_dt_machine_init,
 	.init_late	= exynos_init_late,
-	.init_time	= exynos_init_time,
 	.dt_compat	= exynos4_dt_compat,
 	.restart        = exynos4_restart,
 	.reserve	= exynos4_reserve,
diff --git a/arch/arm/mach-exynos/mach-exynos5-dt.c b/arch/arm/mach-exynos/mach-exynos5-dt.c
index f874b77..bac2105 100644
--- a/arch/arm/mach-exynos/mach-exynos5-dt.c
+++ b/arch/arm/mach-exynos/mach-exynos5-dt.c
@@ -13,7 +13,6 @@
 #include <linux/of_fdt.h>
 #include <linux/memblock.h>
 #include <linux/io.h>
-#include <linux/clocksource.h>
 
 #include <asm/mach/arch.h>
 #include <mach/regs-pmu.h>
@@ -76,7 +75,6 @@ DT_MACHINE_START(EXYNOS5_DT, "SAMSUNG EXYNOS5 (Flattened Device Tree)")
 	.map_io		= exynos_init_io,
 	.init_machine	= exynos5_dt_machine_init,
 	.init_late	= exynos_init_late,
-	.init_time	= exynos_init_time,
 	.dt_compat	= exynos5_dt_compat,
 	.restart        = exynos5_restart,
 	.reserve	= exynos5_reserve,
-- 
1.7.10.4

^ permalink raw reply related	[flat|nested] 15+ messages in thread

* Re: [PATCH 00/26] ARM: provide common arch init for DT clocks
       [not found] ` <1379526839-14798-1-git-send-email-sebastian.hesselbarth-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
@ 2013-09-18 19:47   ` Jason Cooper
       [not found]     ` <20130918194711.GR19937-u4khhh1J0LxI1Ri9qeTfzeTW4wlIGRCZ@public.gmane.org>
  0 siblings, 1 reply; 15+ messages in thread
From: Jason Cooper @ 2013-09-18 19:47 UTC (permalink / raw)
  To: Sebastian Hesselbarth
  Cc: linux-samsung-soc-u79uwXL29TY76Z2rM5mHXA,
	linux-tegra-u79uwXL29TY76Z2rM5mHXA, kernel-F5mvAk5X5gdBDgjK7y7TUQ,
	Arnd Bergmann, linux-kernel-u79uwXL29TY76Z2rM5mHXA, STEricsson,
	linux-rpi-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, Olof Johansson,
	Russell King, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r

Sebastian,

On Wed, Sep 18, 2013 at 07:53:33PM +0200, Sebastian Hesselbarth wrote:
...
> Sebastian Hesselbarth (26):
>   ARM: nomadik: move mtu setup to clocksource init
>   clk: nomadik: move src init out of nomadik_clk_init
>   clk: nomadik: declare OF clock provider
>   clk: prima2: declare OF clock provider
>   ARM: socfgpa: prepare for arch-wide .init_time callback
>   clk: sunxi: declare OF clock provider
>   clk: vt8500: parse pmc_base from clock driver
>   ARM: vt8500: prepare for arch-wide .init_time callback
>   ARM: call of_clk_init from default time_init handler
>   ARM: bcm2835: remove custom .init_time hook
>   ARM: dove: remove custom .init_time hook
>   ARM: exynos: remove custom .init_time hook
>   ARM: highbank: remove custom .init_time hook
>   ARM: imx: remove custom .init_time hook
>   ARM: kirkwood: remove custom .init_time hook
>   ARM: mxs: remove custom .init_time hook
>   ARM: nomadik: remove custom .init_time hook
>   ARM: nspire: remove custom .init_time hook
>   ARM: prima2: remove custom .init_time hook
>   ARM: rockchip: remove custom .init_time hook
>   ARM: socfpga: remove custom .init_time hook
>   ARM: sti: remove custom .init_time hook
>   ARM: sunxi: remove custom .init_time hook
>   ARM: tegra: remove custom .init_time hook
>   ARM: vexpress: remove custom .init_time hook
>   ARM: vt8500: remove custom .init_time hook
> 
>  arch/arm/kernel/time.c                    |   27 ++---
>  arch/arm/mach-bcm2835/bcm2835.c           |    2 -
>  arch/arm/mach-dove/board-dt.c             |   11 --
>  arch/arm/mach-exynos/common.c             |    8 --
>  arch/arm/mach-exynos/common.h             |    1 -
>  arch/arm/mach-exynos/mach-exynos4-dt.c    |    2 -
>  arch/arm/mach-exynos/mach-exynos5-dt.c    |    2 -
>  arch/arm/mach-highbank/highbank.c         |   23 ++---
>  arch/arm/mach-imx/clk-imx51-imx53.c       |   29 ++----
>  arch/arm/mach-imx/common.h                |    4 -
>  arch/arm/mach-imx/imx51-dt.c              |    6 --
>  arch/arm/mach-imx/mach-imx53.c            |    6 --
>  arch/arm/mach-imx/mach-imx6q.c            |   14 +--
>  arch/arm/mach-imx/mach-imx6sl.c           |    7 --
>  arch/arm/mach-imx/mach-vf610.c            |    9 --
>  arch/arm/mach-kirkwood/board-dt.c         |    8 --
>  arch/arm/mach-mxs/mach-mxs.c              |   13 ---
>  arch/arm/mach-nomadik/cpu-8815.c          |   36 -------
>  arch/arm/mach-nspire/nspire.c             |    9 --
>  arch/arm/mach-prima2/common.c             |   11 --
>  arch/arm/mach-prima2/common.h             |    1 -
>  arch/arm/mach-rockchip/rockchip.c         |    9 --
>  arch/arm/mach-socfpga/socfpga.c           |    2 -
>  arch/arm/mach-sti/board-dt.c              |   10 +-
>  arch/arm/mach-sunxi/sunxi.c               |   10 --
>  arch/arm/mach-tegra/tegra.c               |    9 --
>  arch/arm/mach-vexpress/v2m.c              |   14 +--
>  arch/arm/mach-vt8500/common.h             |   24 -----
>  arch/arm/mach-vt8500/vt8500.c             |    6 --
>  drivers/clk/clk-bcm2835.c                 |    8 --
>  drivers/clk/clk-highbank.c                |   10 +-
>  drivers/clk/clk-nomadik.c                 |  161 ++++++++++++++---------------
>  drivers/clk/clk-prima2.c                  |   29 ++----
>  drivers/clk/clk-vt8500.c                  |   31 ++++--
>  drivers/clk/mxs/clk-imx23.c               |   15 +--
>  drivers/clk/mxs/clk-imx28.c               |   16 +--
>  drivers/clk/sunxi/clk-sunxi.c             |   11 +-
>  drivers/clocksource/nomadik-mtu.c         |   11 ++
>  include/linux/clk/mxs.h                   |    2 -
>  include/linux/clk/sunxi.h                 |   22 ----
>  include/linux/platform_data/clk-nomadik.h |    2 -
>  41 files changed, 182 insertions(+), 449 deletions(-)
>  delete mode 100644 arch/arm/mach-vt8500/common.h
>  delete mode 100644 include/linux/clk/sunxi.h
>  delete mode 100644 include/linux/platform_data/clk-nomadik.h

How would you like to handle this series?

thx,

Jason.

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH 00/26] ARM: provide common arch init for DT clocks
       [not found]     ` <20130918194711.GR19937-u4khhh1J0LxI1Ri9qeTfzeTW4wlIGRCZ@public.gmane.org>
@ 2013-09-18 19:52       ` Sebastian Hesselbarth
  2013-09-18 20:45         ` Stephen Warren
  2013-09-18 20:48         ` Olof Johansson
  0 siblings, 2 replies; 15+ messages in thread
From: Sebastian Hesselbarth @ 2013-09-18 19:52 UTC (permalink / raw)
  To: Jason Cooper
  Cc: linux-samsung-soc-u79uwXL29TY76Z2rM5mHXA,
	linux-tegra-u79uwXL29TY76Z2rM5mHXA, kernel-F5mvAk5X5gdBDgjK7y7TUQ,
	Arnd Bergmann, linux-kernel-u79uwXL29TY76Z2rM5mHXA, STEricsson,
	linux-rpi-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, Olof Johansson,
	Russell King, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r

On 09/18/2013 09:47 PM, Jason Cooper wrote:
> On Wed, Sep 18, 2013 at 07:53:33PM +0200, Sebastian Hesselbarth wrote:
> ...
>> Sebastian Hesselbarth (26):
>>    ARM: nomadik: move mtu setup to clocksource init
>>    clk: nomadik: move src init out of nomadik_clk_init
>>    clk: nomadik: declare OF clock provider
>>    clk: prima2: declare OF clock provider
>>    ARM: socfgpa: prepare for arch-wide .init_time callback
>>    clk: sunxi: declare OF clock provider
>>    clk: vt8500: parse pmc_base from clock driver
>>    ARM: vt8500: prepare for arch-wide .init_time callback
>>    ARM: call of_clk_init from default time_init handler
>>    ARM: bcm2835: remove custom .init_time hook
>>    ARM: dove: remove custom .init_time hook
>>    ARM: exynos: remove custom .init_time hook
>>    ARM: highbank: remove custom .init_time hook
>>    ARM: imx: remove custom .init_time hook
>>    ARM: kirkwood: remove custom .init_time hook
>>    ARM: mxs: remove custom .init_time hook
>>    ARM: nomadik: remove custom .init_time hook
>>    ARM: nspire: remove custom .init_time hook
>>    ARM: prima2: remove custom .init_time hook
>>    ARM: rockchip: remove custom .init_time hook
>>    ARM: socfpga: remove custom .init_time hook
>>    ARM: sti: remove custom .init_time hook
>>    ARM: sunxi: remove custom .init_time hook
>>    ARM: tegra: remove custom .init_time hook
>>    ARM: vexpress: remove custom .init_time hook
>>    ARM: vt8500: remove custom .init_time hook
>>
>>   arch/arm/kernel/time.c                    |   27 ++---
>>   arch/arm/mach-bcm2835/bcm2835.c           |    2 -
>>   arch/arm/mach-dove/board-dt.c             |   11 --
>>   arch/arm/mach-exynos/common.c             |    8 --
>>   arch/arm/mach-exynos/common.h             |    1 -
>>   arch/arm/mach-exynos/mach-exynos4-dt.c    |    2 -
>>   arch/arm/mach-exynos/mach-exynos5-dt.c    |    2 -
>>   arch/arm/mach-highbank/highbank.c         |   23 ++---
>>   arch/arm/mach-imx/clk-imx51-imx53.c       |   29 ++----
>>   arch/arm/mach-imx/common.h                |    4 -
>>   arch/arm/mach-imx/imx51-dt.c              |    6 --
>>   arch/arm/mach-imx/mach-imx53.c            |    6 --
>>   arch/arm/mach-imx/mach-imx6q.c            |   14 +--
>>   arch/arm/mach-imx/mach-imx6sl.c           |    7 --
>>   arch/arm/mach-imx/mach-vf610.c            |    9 --
>>   arch/arm/mach-kirkwood/board-dt.c         |    8 --
>>   arch/arm/mach-mxs/mach-mxs.c              |   13 ---
>>   arch/arm/mach-nomadik/cpu-8815.c          |   36 -------
>>   arch/arm/mach-nspire/nspire.c             |    9 --
>>   arch/arm/mach-prima2/common.c             |   11 --
>>   arch/arm/mach-prima2/common.h             |    1 -
>>   arch/arm/mach-rockchip/rockchip.c         |    9 --
>>   arch/arm/mach-socfpga/socfpga.c           |    2 -
>>   arch/arm/mach-sti/board-dt.c              |   10 +-
>>   arch/arm/mach-sunxi/sunxi.c               |   10 --
>>   arch/arm/mach-tegra/tegra.c               |    9 --
>>   arch/arm/mach-vexpress/v2m.c              |   14 +--
>>   arch/arm/mach-vt8500/common.h             |   24 -----
>>   arch/arm/mach-vt8500/vt8500.c             |    6 --
>>   drivers/clk/clk-bcm2835.c                 |    8 --
>>   drivers/clk/clk-highbank.c                |   10 +-
>>   drivers/clk/clk-nomadik.c                 |  161 ++++++++++++++---------------
>>   drivers/clk/clk-prima2.c                  |   29 ++----
>>   drivers/clk/clk-vt8500.c                  |   31 ++++--
>>   drivers/clk/mxs/clk-imx23.c               |   15 +--
>>   drivers/clk/mxs/clk-imx28.c               |   16 +--
>>   drivers/clk/sunxi/clk-sunxi.c             |   11 +-
>>   drivers/clocksource/nomadik-mtu.c         |   11 ++
>>   include/linux/clk/mxs.h                   |    2 -
>>   include/linux/clk/sunxi.h                 |   22 ----
>>   include/linux/platform_data/clk-nomadik.h |    2 -
>>   41 files changed, 182 insertions(+), 449 deletions(-)
>>   delete mode 100644 arch/arm/mach-vt8500/common.h
>>   delete mode 100644 include/linux/clk/sunxi.h
>>   delete mode 100644 include/linux/platform_data/clk-nomadik.h
>
> How would you like to handle this series?

Jason,

honestly I don't really know, yet. I was hoping for Arnd and Olof
decide on that. Maybe they also create a topic branch up to where
arch-wide of_clk_init is introduced. Then each removal patch can
go through the independent sub-trees. There may be more machs
introduced before, that can then also depend on the common branch.

Sebastian

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH 00/26] ARM: provide common arch init for DT clocks
  2013-09-18 19:52       ` Sebastian Hesselbarth
@ 2013-09-18 20:45         ` Stephen Warren
  2013-09-18 20:48         ` Olof Johansson
  1 sibling, 0 replies; 15+ messages in thread
From: Stephen Warren @ 2013-09-18 20:45 UTC (permalink / raw)
  To: Sebastian Hesselbarth
  Cc: Jason Cooper, linux-samsung-soc, linux-tegra, kernel,
	Arnd Bergmann, linux-kernel, STEricsson, linux-rpi-kernel,
	Olof Johansson, Russell King, linux-arm-kernel

On 09/18/2013 01:52 PM, Sebastian Hesselbarth wrote:
> On 09/18/2013 09:47 PM, Jason Cooper wrote:
>> On Wed, Sep 18, 2013 at 07:53:33PM +0200, Sebastian Hesselbarth wrote:
>> ...
>>> Sebastian Hesselbarth (26):
>>>    ARM: nomadik: move mtu setup to clocksource init
...
>>
>> How would you like to handle this series?
> 
> Jason,
> 
> honestly I don't really know, yet. I was hoping for Arnd and Olof
> decide on that. Maybe they also create a topic branch up to where
> arch-wide of_clk_init is introduced. Then each removal patch can
> go through the independent sub-trees. There may be more machs
> introduced before, that can then also depend on the common branch.

Oh, I was assuming you'd just take the whole thing through one tree,
likely in arm-soc. That's why I created the topic branch for the Tegra
PMIC patch that's a dependency of this... However, I guess if you just
merge the core into a topic branch in arm-soc and everyone merges it
back, that's fine. I assume the Tegra topic branch I created won't be
necessary in that case.

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH 00/26] ARM: provide common arch init for DT clocks
  2013-09-18 19:52       ` Sebastian Hesselbarth
  2013-09-18 20:45         ` Stephen Warren
@ 2013-09-18 20:48         ` Olof Johansson
  2013-09-18 21:04           ` Sebastian Hesselbarth
  1 sibling, 1 reply; 15+ messages in thread
From: Olof Johansson @ 2013-09-18 20:48 UTC (permalink / raw)
  To: Sebastian Hesselbarth
  Cc: Jason Cooper, linux-samsung-soc@vger.kernel.org,
	linux-tegra@vger.kernel.org, kernel, Arnd Bergmann,
	linux-kernel@vger.kernel.org, STEricsson, linux-rpi-kernel,
	Russell King, linux-arm-kernel@lists.infradead.org

On Wed, Sep 18, 2013 at 12:52 PM, Sebastian Hesselbarth
<sebastian.hesselbarth@gmail.com> wrote:
> On 09/18/2013 09:47 PM, Jason Cooper wrote:
>>
>> On Wed, Sep 18, 2013 at 07:53:33PM +0200, Sebastian Hesselbarth wrote:
>> ...
>>>
>>> Sebastian Hesselbarth (26):
>>>    ARM: nomadik: move mtu setup to clocksource init
>>>    clk: nomadik: move src init out of nomadik_clk_init
>>>    clk: nomadik: declare OF clock provider
>>>    clk: prima2: declare OF clock provider
>>>    ARM: socfgpa: prepare for arch-wide .init_time callback
>>>    clk: sunxi: declare OF clock provider
>>>    clk: vt8500: parse pmc_base from clock driver
>>>    ARM: vt8500: prepare for arch-wide .init_time callback
>>>    ARM: call of_clk_init from default time_init handler
>>>    ARM: bcm2835: remove custom .init_time hook
>>>    ARM: dove: remove custom .init_time hook
>>>    ARM: exynos: remove custom .init_time hook
>>>    ARM: highbank: remove custom .init_time hook
>>>    ARM: imx: remove custom .init_time hook
>>>    ARM: kirkwood: remove custom .init_time hook
>>>    ARM: mxs: remove custom .init_time hook
>>>    ARM: nomadik: remove custom .init_time hook
>>>    ARM: nspire: remove custom .init_time hook
>>>    ARM: prima2: remove custom .init_time hook
>>>    ARM: rockchip: remove custom .init_time hook
>>>    ARM: socfpga: remove custom .init_time hook
>>>    ARM: sti: remove custom .init_time hook
>>>    ARM: sunxi: remove custom .init_time hook
>>>    ARM: tegra: remove custom .init_time hook
>>>    ARM: vexpress: remove custom .init_time hook
>>>    ARM: vt8500: remove custom .init_time hook
>>>
>>>   arch/arm/kernel/time.c                    |   27 ++---
>>>   arch/arm/mach-bcm2835/bcm2835.c           |    2 -
>>>   arch/arm/mach-dove/board-dt.c             |   11 --
>>>   arch/arm/mach-exynos/common.c             |    8 --
>>>   arch/arm/mach-exynos/common.h             |    1 -
>>>   arch/arm/mach-exynos/mach-exynos4-dt.c    |    2 -
>>>   arch/arm/mach-exynos/mach-exynos5-dt.c    |    2 -
>>>   arch/arm/mach-highbank/highbank.c         |   23 ++---
>>>   arch/arm/mach-imx/clk-imx51-imx53.c       |   29 ++----
>>>   arch/arm/mach-imx/common.h                |    4 -
>>>   arch/arm/mach-imx/imx51-dt.c              |    6 --
>>>   arch/arm/mach-imx/mach-imx53.c            |    6 --
>>>   arch/arm/mach-imx/mach-imx6q.c            |   14 +--
>>>   arch/arm/mach-imx/mach-imx6sl.c           |    7 --
>>>   arch/arm/mach-imx/mach-vf610.c            |    9 --
>>>   arch/arm/mach-kirkwood/board-dt.c         |    8 --
>>>   arch/arm/mach-mxs/mach-mxs.c              |   13 ---
>>>   arch/arm/mach-nomadik/cpu-8815.c          |   36 -------
>>>   arch/arm/mach-nspire/nspire.c             |    9 --
>>>   arch/arm/mach-prima2/common.c             |   11 --
>>>   arch/arm/mach-prima2/common.h             |    1 -
>>>   arch/arm/mach-rockchip/rockchip.c         |    9 --
>>>   arch/arm/mach-socfpga/socfpga.c           |    2 -
>>>   arch/arm/mach-sti/board-dt.c              |   10 +-
>>>   arch/arm/mach-sunxi/sunxi.c               |   10 --
>>>   arch/arm/mach-tegra/tegra.c               |    9 --
>>>   arch/arm/mach-vexpress/v2m.c              |   14 +--
>>>   arch/arm/mach-vt8500/common.h             |   24 -----
>>>   arch/arm/mach-vt8500/vt8500.c             |    6 --
>>>   drivers/clk/clk-bcm2835.c                 |    8 --
>>>   drivers/clk/clk-highbank.c                |   10 +-
>>>   drivers/clk/clk-nomadik.c                 |  161
>>> ++++++++++++++---------------
>>>   drivers/clk/clk-prima2.c                  |   29 ++----
>>>   drivers/clk/clk-vt8500.c                  |   31 ++++--
>>>   drivers/clk/mxs/clk-imx23.c               |   15 +--
>>>   drivers/clk/mxs/clk-imx28.c               |   16 +--
>>>   drivers/clk/sunxi/clk-sunxi.c             |   11 +-
>>>   drivers/clocksource/nomadik-mtu.c         |   11 ++
>>>   include/linux/clk/mxs.h                   |    2 -
>>>   include/linux/clk/sunxi.h                 |   22 ----
>>>   include/linux/platform_data/clk-nomadik.h |    2 -
>>>   41 files changed, 182 insertions(+), 449 deletions(-)
>>>   delete mode 100644 arch/arm/mach-vt8500/common.h
>>>   delete mode 100644 include/linux/clk/sunxi.h
>>>   delete mode 100644 include/linux/platform_data/clk-nomadik.h
>>
>>
>> How would you like to handle this series?
>
>
> Jason,
>
> honestly I don't really know, yet. I was hoping for Arnd and Olof
> decide on that. Maybe they also create a topic branch up to where
> arch-wide of_clk_init is introduced. Then each removal patch can
> go through the independent sub-trees. There may be more machs
> introduced before, that can then also depend on the common branch.

I'd like to see this merged early into arm-soc and have it as a base
branch for other platform branches if there will be much conflicts
(for trivial or small conflicts we can resolve, of course). So please
collect acks and prepare a branch for me to merge, Sebastian. Or if
it's easier I can just apply the patches directly -- just let me know.
But given the tegra dependency it's probably easier to take a branch.

The long tail might be the cases where you rewrote some of the init
code, since that'll need to be tested on those platforms. I wonder if
we can pick up most of the other pieces if that ends up taking a
while.


-Olof

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH 00/26] ARM: provide common arch init for DT clocks
  2013-09-18 20:48         ` Olof Johansson
@ 2013-09-18 21:04           ` Sebastian Hesselbarth
  0 siblings, 0 replies; 15+ messages in thread
From: Sebastian Hesselbarth @ 2013-09-18 21:04 UTC (permalink / raw)
  To: Olof Johansson
  Cc: Jason Cooper, linux-samsung-soc@vger.kernel.org,
	linux-tegra@vger.kernel.org, kernel, Arnd Bergmann,
	linux-kernel@vger.kernel.org, STEricsson, linux-rpi-kernel,
	Russell King, linux-arm-kernel@lists.infradead.org

On 09/18/2013 10:48 PM, Olof Johansson wrote:
> On Wed, Sep 18, 2013 at 12:52 PM, Sebastian Hesselbarth
> <sebastian.hesselbarth@gmail.com> wrote:
>> On 09/18/2013 09:47 PM, Jason Cooper wrote:
>>>
>>> On Wed, Sep 18, 2013 at 07:53:33PM +0200, Sebastian Hesselbarth wrote:
>>> ...
>>>>
>>>> Sebastian Hesselbarth (26):
>>>>     ARM: nomadik: move mtu setup to clocksource init
>>>>     clk: nomadik: move src init out of nomadik_clk_init
>>>>     clk: nomadik: declare OF clock provider
>>>>     clk: prima2: declare OF clock provider
>>>>     ARM: socfgpa: prepare for arch-wide .init_time callback
>>>>     clk: sunxi: declare OF clock provider
>>>>     clk: vt8500: parse pmc_base from clock driver
>>>>     ARM: vt8500: prepare for arch-wide .init_time callback
>>>>     ARM: call of_clk_init from default time_init handler
>>>>     ARM: bcm2835: remove custom .init_time hook
>>>>     ARM: dove: remove custom .init_time hook
>>>>     ARM: exynos: remove custom .init_time hook
>>>>     ARM: highbank: remove custom .init_time hook
>>>>     ARM: imx: remove custom .init_time hook
>>>>     ARM: kirkwood: remove custom .init_time hook
>>>>     ARM: mxs: remove custom .init_time hook
>>>>     ARM: nomadik: remove custom .init_time hook
>>>>     ARM: nspire: remove custom .init_time hook
>>>>     ARM: prima2: remove custom .init_time hook
>>>>     ARM: rockchip: remove custom .init_time hook
>>>>     ARM: socfpga: remove custom .init_time hook
>>>>     ARM: sti: remove custom .init_time hook
>>>>     ARM: sunxi: remove custom .init_time hook
>>>>     ARM: tegra: remove custom .init_time hook
>>>>     ARM: vexpress: remove custom .init_time hook
>>>>     ARM: vt8500: remove custom .init_time hook
>>>>
>>>>    arch/arm/kernel/time.c                    |   27 ++---
>>>>    arch/arm/mach-bcm2835/bcm2835.c           |    2 -
>>>>    arch/arm/mach-dove/board-dt.c             |   11 --
>>>>    arch/arm/mach-exynos/common.c             |    8 --
>>>>    arch/arm/mach-exynos/common.h             |    1 -
>>>>    arch/arm/mach-exynos/mach-exynos4-dt.c    |    2 -
>>>>    arch/arm/mach-exynos/mach-exynos5-dt.c    |    2 -
>>>>    arch/arm/mach-highbank/highbank.c         |   23 ++---
>>>>    arch/arm/mach-imx/clk-imx51-imx53.c       |   29 ++----
>>>>    arch/arm/mach-imx/common.h                |    4 -
>>>>    arch/arm/mach-imx/imx51-dt.c              |    6 --
>>>>    arch/arm/mach-imx/mach-imx53.c            |    6 --
>>>>    arch/arm/mach-imx/mach-imx6q.c            |   14 +--
>>>>    arch/arm/mach-imx/mach-imx6sl.c           |    7 --
>>>>    arch/arm/mach-imx/mach-vf610.c            |    9 --
>>>>    arch/arm/mach-kirkwood/board-dt.c         |    8 --
>>>>    arch/arm/mach-mxs/mach-mxs.c              |   13 ---
>>>>    arch/arm/mach-nomadik/cpu-8815.c          |   36 -------
>>>>    arch/arm/mach-nspire/nspire.c             |    9 --
>>>>    arch/arm/mach-prima2/common.c             |   11 --
>>>>    arch/arm/mach-prima2/common.h             |    1 -
>>>>    arch/arm/mach-rockchip/rockchip.c         |    9 --
>>>>    arch/arm/mach-socfpga/socfpga.c           |    2 -
>>>>    arch/arm/mach-sti/board-dt.c              |   10 +-
>>>>    arch/arm/mach-sunxi/sunxi.c               |   10 --
>>>>    arch/arm/mach-tegra/tegra.c               |    9 --
>>>>    arch/arm/mach-vexpress/v2m.c              |   14 +--
>>>>    arch/arm/mach-vt8500/common.h             |   24 -----
>>>>    arch/arm/mach-vt8500/vt8500.c             |    6 --
>>>>    drivers/clk/clk-bcm2835.c                 |    8 --
>>>>    drivers/clk/clk-highbank.c                |   10 +-
>>>>    drivers/clk/clk-nomadik.c                 |  161
>>>> ++++++++++++++---------------
>>>>    drivers/clk/clk-prima2.c                  |   29 ++----
>>>>    drivers/clk/clk-vt8500.c                  |   31 ++++--
>>>>    drivers/clk/mxs/clk-imx23.c               |   15 +--
>>>>    drivers/clk/mxs/clk-imx28.c               |   16 +--
>>>>    drivers/clk/sunxi/clk-sunxi.c             |   11 +-
>>>>    drivers/clocksource/nomadik-mtu.c         |   11 ++
>>>>    include/linux/clk/mxs.h                   |    2 -
>>>>    include/linux/clk/sunxi.h                 |   22 ----
>>>>    include/linux/platform_data/clk-nomadik.h |    2 -
>>>>    41 files changed, 182 insertions(+), 449 deletions(-)
>>>>    delete mode 100644 arch/arm/mach-vt8500/common.h
>>>>    delete mode 100644 include/linux/clk/sunxi.h
>>>>    delete mode 100644 include/linux/platform_data/clk-nomadik.h
>>>
>>>
>>> How would you like to handle this series?
>>
>>
>> Jason,
>>
>> honestly I don't really know, yet. I was hoping for Arnd and Olof
>> decide on that. Maybe they also create a topic branch up to where
>> arch-wide of_clk_init is introduced. Then each removal patch can
>> go through the independent sub-trees. There may be more machs
>> introduced before, that can then also depend on the common branch.
>
> I'd like to see this merged early into arm-soc and have it as a base
> branch for other platform branches if there will be much conflicts
> (for trivial or small conflicts we can resolve, of course). So please
> collect acks and prepare a branch for me to merge, Sebastian. Or if
> it's easier I can just apply the patches directly -- just let me know.
> But given the tegra dependency it's probably easier to take a branch.

Actually, I'd be happy if you make a decision. It would be my first
pull request and maybe it should go guided by more experienced devs
from now on. Although I am willing to learn.

> The long tail might be the cases where you rewrote some of the init
> code, since that'll need to be tested on those platforms. I wonder if
> we can pick up most of the other pieces if that ends up taking a
> while.

True, for an early merge that was a bad decision. I looked again into
patches 1-8 and if there are concerns:
- nomadik can be dropped as it still has custom .init_time.
- prima2 and sunxi are quite straight forward but also have custom
   .init_time that protect them from the arch-wide call.
- socfpga needs some new custom .init_time then.
- vt8500 is a little bit more changes but has .init_time call to
   clocksource_of_init alone.

Sebastian

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH 00/26] ARM: provide common arch init for DT clocks
  2013-09-18 17:53 [PATCH 00/26] ARM: provide common arch init for DT clocks Sebastian Hesselbarth
                   ` (2 preceding siblings ...)
       [not found] ` <1379526839-14798-1-git-send-email-sebastian.hesselbarth-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
@ 2013-09-20 19:16 ` Matt Porter
  2013-09-22 12:14   ` Sebastian Hesselbarth
  3 siblings, 1 reply; 15+ messages in thread
From: Matt Porter @ 2013-09-20 19:16 UTC (permalink / raw)
  To: Sebastian Hesselbarth
  Cc: Olof Johansson, Arnd Bergmann, Russell King, Christian Daudt,
	STEricsson, linux-tegra, linux-rpi-kernel, linux-samsung-soc,
	kernel, linux-arm-kernel, Linux Kernel Mailing List

On Wed, Sep 18, 2013 at 07:53:33PM +0200, Sebastian Hesselbarth wrote:
> This is a patch set based on an RFC [1][2] sent earlier to provide a common
> arch/arm init for DT clock providers. Currently, the call to of_clk_init(NULL)
> to initialize DT clock providers is spread among several mach-dirs. Since most
> machs require DT clocks initialized before timers, no initcall can be used.
> 
> By adding of_clk_init(NULL) to arch/arm time_init(), we can remove all
> mach-specific .init_time hooks that basically called of_clk_init and
> clocksource_of_init.
> 
> In contrast to the RFC version, of_clk_init(NULL) is now only called if no
> custom .init_time callback is set. This allows some machs to still call clock
> init themselves, as not all can be converted now. Therefore, this patch sets
> drops conversion of mach-mvebu and mach-zynq. New machs that were introduced
> with v3.12-rc1 are also converted, except mach-u300 that requires clocks
> before irqs.
> 
> The patch set is based on v3.12-rc1 and further depends on a topic branch
> created by Stephen Warren for mach-tegra [3]. It is now split into preparation
> and removal patches to not break bisectability. I added all Acked-by/Tested-by's
> where applicable or dropped them, if the patch was separated into two.
> It has been compile tested for all machs involved with the following defconfigs
> (multi_v7, bcm2835, dove, exynos, kirkwood, mxs, nhk8815) and nspire selected
> on multi_v4_v5.
> 
> Patches 1-8 comprise preparation patches that convert machs nomadik, prima2,
> socfpga, sunxi, tegra, and vt8500 to usual .init_time callbacks calling only
> of_clk_init and clocksource_of_init.
> 
> Patch 9 then introduces of_clk_init(NULL) to the arch-wide default .init_time
> callback.
> 
> Patches 10-26 finally remove custom .init_time callbacks from the machs involved.

Hi Sebastian,

Could you pick up the following patch for mach-bcm/ into this series?

Thanks,
Matt

>From f65d048b3453447bb3e693cb21701c4d0c6375ed Mon Sep 17 00:00:00 2001
From: Matt Porter <matt.porter@linaro.org>
Date: Fri, 20 Sep 2013 13:41:06 -0400
Subject: [PATCH] ARM: bcm: Remove custom .time_init hook

With arch/arm calling of_clk_init(NULL) and clocksource_of_init()
this is no longer needed. The former is useful because we can make
use of dummy fixed clocks for drivers until the bcm281xx common
clock driver is ready.

Signed-off-by: Matt Porter <matt.porter@linaro.org>
Reviewed-by: Markus Mayer <markus.mayer@linaro.org>
Reviewed-by: Christian Daudt <csd@broadcom.com>
---
 arch/arm/mach-bcm/board_bcm281xx.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/arch/arm/mach-bcm/board_bcm281xx.c b/arch/arm/mach-bcm/board_bcm281xx.c
index 8d9f931..26b2390 100644
--- a/arch/arm/mach-bcm/board_bcm281xx.c
+++ b/arch/arm/mach-bcm/board_bcm281xx.c
@@ -68,7 +68,6 @@ static void __init board_init(void)
 static const char * const bcm11351_dt_compat[] = { "brcm,bcm11351", NULL, };
 
 DT_MACHINE_START(BCM11351_DT, "Broadcom Application Processor")
-	.init_time = clocksource_of_init,
 	.init_machine = board_init,
 	.restart = bcm_kona_restart,
 	.dt_compat = bcm11351_dt_compat,
-- 
1.8.4

^ permalink raw reply related	[flat|nested] 15+ messages in thread

* Re: [PATCH 00/26] ARM: provide common arch init for DT clocks
  2013-09-20 19:16 ` Matt Porter
@ 2013-09-22 12:14   ` Sebastian Hesselbarth
       [not found]     ` <523EDF16.10102-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
  0 siblings, 1 reply; 15+ messages in thread
From: Sebastian Hesselbarth @ 2013-09-22 12:14 UTC (permalink / raw)
  To: Matt Porter
  Cc: Olof Johansson, Arnd Bergmann, Russell King, Christian Daudt,
	STEricsson, linux-tegra, linux-rpi-kernel, linux-samsung-soc,
	kernel, linux-arm-kernel, Linux Kernel Mailing List

On 09/20/2013 09:16 PM, Matt Porter wrote:
> On Wed, Sep 18, 2013 at 07:53:33PM +0200, Sebastian Hesselbarth wrote:
>> This is a patch set based on an RFC [1][2] sent earlier to provide a common
>> arch/arm init for DT clock providers. Currently, the call to of_clk_init(NULL)
>> to initialize DT clock providers is spread among several mach-dirs. Since most
>> machs require DT clocks initialized before timers, no initcall can be used.
[...]
> Could you pick up the following patch for mach-bcm/ into this series?
>
> Thanks,
> Matt
>
>  From f65d048b3453447bb3e693cb21701c4d0c6375ed Mon Sep 17 00:00:00 2001
> From: Matt Porter <matt.porter@linaro.org>
> Date: Fri, 20 Sep 2013 13:41:06 -0400
> Subject: [PATCH] ARM: bcm: Remove custom .time_init hook
>
> With arch/arm calling of_clk_init(NULL) and clocksource_of_init()
> this is no longer needed. The former is useful because we can make
> use of dummy fixed clocks for drivers until the bcm281xx common
> clock driver is ready.
>
> Signed-off-by: Matt Porter <matt.porter@linaro.org>
> Reviewed-by: Markus Mayer <markus.mayer@linaro.org>
> Reviewed-by: Christian Daudt <csd@broadcom.com>

As a v2 is required due to calling of_clk_init() breaks non-DT builds,
I will include this _if_ Christian actually gives his Acked-By.

Sebastian

> ---
>   arch/arm/mach-bcm/board_bcm281xx.c | 1 -
>   1 file changed, 1 deletion(-)
>
> diff --git a/arch/arm/mach-bcm/board_bcm281xx.c b/arch/arm/mach-bcm/board_bcm281xx.c
> index 8d9f931..26b2390 100644
> --- a/arch/arm/mach-bcm/board_bcm281xx.c
> +++ b/arch/arm/mach-bcm/board_bcm281xx.c
> @@ -68,7 +68,6 @@ static void __init board_init(void)
>   static const char * const bcm11351_dt_compat[] = { "brcm,bcm11351", NULL, };
>
>   DT_MACHINE_START(BCM11351_DT, "Broadcom Application Processor")
> -	.init_time = clocksource_of_init,
>   	.init_machine = board_init,
>   	.restart = bcm_kona_restart,
>   	.dt_compat = bcm11351_dt_compat,
>

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [PATCH v2 09/26] ARM: call of_clk_init from default time_init handler
       [not found]   ` <1379526839-14798-10-git-send-email-sebastian.hesselbarth-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
@ 2013-09-23  7:54     ` Sebastian Hesselbarth
  0 siblings, 0 replies; 15+ messages in thread
From: Sebastian Hesselbarth @ 2013-09-23  7:54 UTC (permalink / raw)
  To: Sebastian Hesselbarth
  Cc: Olof Johansson, Arnd Bergmann, Russell King, STEricsson,
	linux-tegra-u79uwXL29TY76Z2rM5mHXA,
	linux-rpi-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
	linux-samsung-soc-u79uwXL29TY76Z2rM5mHXA,
	kernel-F5mvAk5X5gdBDgjK7y7TUQ,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA

Most DT ARM machs require common clock providers initialized before timers.
Currently, arch/arm machs use .init_time to call of_clk_init right before
clocksource_of_init. This prevents to remove that callback and use the default
one instead.

This patch adds a call to of_clk_init() to the default .init_time callback
for COMMON_CLK enabled machs to allow to remove custom callbacks where applicable.
While at it, also reorder includes alphabetically.

Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
---
Changelog:
v1->v2:
- protect call to of_clk_init which is only available for COMMON_CLK to
  not break !COMMON_CLK machs. (Reported by Olof Johanssen)
RFCv2->v1:
- only call of_clk_init(NULL) when no custom .init_time is set
  (Suggested by Soeren Brinkmann)
RFCv1->RFCv2:
- reorder includes alphabetically

Cc: Olof Johansson <olof-nZhT3qVonbNeoWH0uzbU5w@public.gmane.org>
Cc: Arnd Bergmann <arnd-r2nGTMty4D4@public.gmane.org>
Cc: Russell King <linux-lFZ/pmaqli7XmaaqVzeoHQ@public.gmane.org>
Cc: STEricsson <STEricsson_nomadik_linux-nkJGhpqTU55BDgjK7y7TUQ@public.gmane.org>
Cc: linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Cc: linux-rpi-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org
Cc: linux-samsung-soc-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Cc: kernel-F5mvAk5X5gdBDgjK7y7TUQ@public.gmane.org
Cc: linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org
Cc: linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
---
 arch/arm/kernel/time.c |   29 +++++++++++++++++------------
 1 file changed, 17 insertions(+), 12 deletions(-)

diff --git a/arch/arm/kernel/time.c b/arch/arm/kernel/time.c
index 98aee32..829a96d 100644
--- a/arch/arm/kernel/time.c
+++ b/arch/arm/kernel/time.c
@@ -11,25 +11,26 @@
  *  This file contains the ARM-specific time handling details:
  *  reading the RTC at bootup, etc...
  */
+#include <linux/clk-provider.h>
+#include <linux/clocksource.h>
+#include <linux/errno.h>
 #include <linux/export.h>
-#include <linux/kernel.h>
-#include <linux/interrupt.h>
-#include <linux/time.h>
 #include <linux/init.h>
+#include <linux/interrupt.h>
+#include <linux/irq.h>
+#include <linux/kernel.h>
+#include <linux/profile.h>
 #include <linux/sched.h>
+#include <linux/sched_clock.h>
 #include <linux/smp.h>
+#include <linux/time.h>
 #include <linux/timex.h>
-#include <linux/errno.h>
-#include <linux/profile.h>
 #include <linux/timer.h>
-#include <linux/clocksource.h>
-#include <linux/irq.h>
-#include <linux/sched_clock.h>
 
-#include <asm/thread_info.h>
-#include <asm/stacktrace.h>
 #include <asm/mach/arch.h>
 #include <asm/mach/time.h>
+#include <asm/stacktrace.h>
+#include <asm/thread_info.h>
 
 #if defined(CONFIG_RTC_DRV_CMOS) || defined(CONFIG_RTC_DRV_CMOS_MODULE) || \
     defined(CONFIG_NVRAM) || defined(CONFIG_NVRAM_MODULE)
@@ -116,8 +117,12 @@ int __init register_persistent_clock(clock_access_fn read_boot,
 
 void __init time_init(void)
 {
-	if (machine_desc->init_time)
+	if (machine_desc->init_time) {
 		machine_desc->init_time();
-	else
+	} else {
+#ifdef CONFIG_COMMON_CLK
+		of_clk_init(NULL);
+#endif
 		clocksource_of_init();
+	}
 }
-- 
1.7.10.4

^ permalink raw reply related	[flat|nested] 15+ messages in thread

* Re: [PATCH 00/26] ARM: provide common arch init for DT clocks
       [not found]     ` <523EDF16.10102-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
@ 2013-09-23 17:45       ` Matt Porter
       [not found]         ` <52407E2A.7030001-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
  0 siblings, 1 reply; 15+ messages in thread
From: Matt Porter @ 2013-09-23 17:45 UTC (permalink / raw)
  To: Sebastian Hesselbarth
  Cc: Olof Johansson, Arnd Bergmann, Russell King, Christian Daudt,
	STEricsson, linux-tegra-u79uwXL29TY76Z2rM5mHXA,
	linux-rpi-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
	linux-samsung-soc-u79uwXL29TY76Z2rM5mHXA,
	kernel-F5mvAk5X5gdBDgjK7y7TUQ,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
	Linux Kernel Mailing List, Christian Daudt

On 09/22/2013 08:14 AM, Sebastian Hesselbarth wrote:
> On 09/20/2013 09:16 PM, Matt Porter wrote:
>> On Wed, Sep 18, 2013 at 07:53:33PM +0200, Sebastian Hesselbarth wrote:
>>> This is a patch set based on an RFC [1][2] sent earlier to provide a
>>> common
>>> arch/arm init for DT clock providers. Currently, the call to
>>> of_clk_init(NULL)
>>> to initialize DT clock providers is spread among several mach-dirs.
>>> Since most
>>> machs require DT clocks initialized before timers, no initcall can be
>>> used.
> [...]
>> Could you pick up the following patch for mach-bcm/ into this series?
>>
>> Thanks,
>> Matt
>>
>>  From f65d048b3453447bb3e693cb21701c4d0c6375ed Mon Sep 17 00:00:00 2001
>> From: Matt Porter <matt.porter-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
>> Date: Fri, 20 Sep 2013 13:41:06 -0400
>> Subject: [PATCH] ARM: bcm: Remove custom .time_init hook
>>
>> With arch/arm calling of_clk_init(NULL) and clocksource_of_init()
>> this is no longer needed. The former is useful because we can make
>> use of dummy fixed clocks for drivers until the bcm281xx common
>> clock driver is ready.
>>
>> Signed-off-by: Matt Porter <matt.porter-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
>> Reviewed-by: Markus Mayer <markus.mayer-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
>> Reviewed-by: Christian Daudt <csd-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>
>
> As a v2 is required due to calling of_clk_init() breaks non-DT builds,
> I will include this _if_ Christian actually gives his Acked-By.

Understood. Ccing Christian's new email as it just changed.

Thanks,
Matt

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH 00/26] ARM: provide common arch init for DT clocks
       [not found]         ` <52407E2A.7030001-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
@ 2013-09-23 18:41           ` Christian Daudt
  0 siblings, 0 replies; 15+ messages in thread
From: Christian Daudt @ 2013-09-23 18:41 UTC (permalink / raw)
  To: Matt Porter
  Cc: Sebastian Hesselbarth, Olof Johansson, Arnd Bergmann,
	Russell King, STEricsson, linux-tegra-u79uwXL29TY76Z2rM5mHXA,
	linux-rpi-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
	linux-samsung-soc-u79uwXL29TY76Z2rM5mHXA,
	kernel-F5mvAk5X5gdBDgjK7y7TUQ,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
	Linux Kernel Mailing List, Christian Daudt

On 13-09-23 10:45 AM, Matt Porter wrote:
> On 09/22/2013 08:14 AM, Sebastian Hesselbarth wrote:
>> On 09/20/2013 09:16 PM, Matt Porter wrote:
>>> On Wed, Sep 18, 2013 at 07:53:33PM +0200, Sebastian Hesselbarth wrote:
>>>> This is a patch set based on an RFC [1][2] sent earlier to provide a
>>>> common
>>>> arch/arm init for DT clock providers. Currently, the call to
>>>> of_clk_init(NULL)
>>>> to initialize DT clock providers is spread among several mach-dirs.
>>>> Since most
>>>> machs require DT clocks initialized before timers, no initcall can be
>>>> used.
>> [...]
>>> Could you pick up the following patch for mach-bcm/ into this series?
>>>
>>> Thanks,
>>> Matt
>>>
>>>  From f65d048b3453447bb3e693cb21701c4d0c6375ed Mon Sep 17 00:00:00 2001
>>> From: Matt Porter <matt.porter-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
>>> Date: Fri, 20 Sep 2013 13:41:06 -0400
>>> Subject: [PATCH] ARM: bcm: Remove custom .time_init hook
>>>
>>> With arch/arm calling of_clk_init(NULL) and clocksource_of_init()
>>> this is no longer needed. The former is useful because we can make
>>> use of dummy fixed clocks for drivers until the bcm281xx common
>>> clock driver is ready.
>>>
>>> Signed-off-by: Matt Porter <matt.porter-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
>>> Reviewed-by: Markus Mayer <markus.mayer-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
>>> Reviewed-by: Christian Daudt <csd-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>
>>
>> As a v2 is required due to calling of_clk_init() breaks non-DT builds,
>> I will include this _if_ Christian actually gives his Acked-By.
>
> Understood. Ccing Christian's new email as it just changed.
Old one still works for this week :)
Acked-by: Christian Daudt <csd-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>

  Thanks,
    csd

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH 12/26] ARM: exynos: remove custom .init_time hook
  2013-09-18 17:53 ` [PATCH 12/26] ARM: exynos: remove custom .init_time hook Sebastian Hesselbarth
@ 2013-09-26  6:21   ` Sebastian Hesselbarth
  2013-09-26  8:08     ` Tomasz Figa
  0 siblings, 1 reply; 15+ messages in thread
From: Sebastian Hesselbarth @ 2013-09-26  6:21 UTC (permalink / raw)
  To: Sebastian Hesselbarth
  Cc: Olof Johansson, Arnd Bergmann, Russell King, Kukjin Kim,
	linux-arm-kernel, linux-samsung-soc, linux-kernel

On 09/18/2013 07:53 PM, Sebastian Hesselbarth wrote:
> With arch/arm calling of_clk_init(NULL) from time_init(), we can now
> remove custom .init_time hooks. While at it, also remove some now
> redundant includes.
>
> Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
> ---

Ping,

Kukjin can you please comment on this patch?

Thanks!

> Cc: Olof Johansson <olof@lixom.net>
> Cc: Arnd Bergmann <arnd@arndb.de>
> Cc: Russell King <linux@arm.linux.org.uk>
> Cc: Kukjin Kim <kgene.kim@samsung.com>
> Cc: linux-arm-kernel@lists.infradead.org
> Cc: linux-samsung-soc@vger.kernel.org
> Cc: linux-kernel@vger.kernel.org
> ---
>   arch/arm/mach-exynos/common.c          |    8 --------
>   arch/arm/mach-exynos/common.h          |    1 -
>   arch/arm/mach-exynos/mach-exynos4-dt.c |    2 --
>   arch/arm/mach-exynos/mach-exynos5-dt.c |    2 --
>   4 files changed, 13 deletions(-)
>
> diff --git a/arch/arm/mach-exynos/common.c b/arch/arm/mach-exynos/common.c
> index ba95e5d..a4e7ba8 100644
> --- a/arch/arm/mach-exynos/common.c
> +++ b/arch/arm/mach-exynos/common.c
> @@ -26,8 +26,6 @@
>   #include <linux/export.h>
>   #include <linux/irqdomain.h>
>   #include <linux/of_address.h>
> -#include <linux/clocksource.h>
> -#include <linux/clk-provider.h>
>   #include <linux/irqchip/arm-gic.h>
>   #include <linux/irqchip/chained_irq.h>
>
> @@ -367,12 +365,6 @@ static void __init exynos5_map_io(void)
>   		iotable_init(exynos5250_iodesc, ARRAY_SIZE(exynos5250_iodesc));
>   }
>
> -void __init exynos_init_time(void)
> -{
> -	of_clk_init(NULL);
> -	clocksource_of_init();
> -}
> -
>   struct bus_type exynos_subsys = {
>   	.name		= "exynos-core",
>   	.dev_name	= "exynos-core",
> diff --git a/arch/arm/mach-exynos/common.h b/arch/arm/mach-exynos/common.h
> index 8646a14..f0fa205 100644
> --- a/arch/arm/mach-exynos/common.h
> +++ b/arch/arm/mach-exynos/common.h
> @@ -16,7 +16,6 @@
>   #include <linux/of.h>
>
>   void mct_init(void __iomem *base, int irq_g0, int irq_l0, int irq_l1);
> -void exynos_init_time(void);
>
>   struct map_desc;
>   void exynos_init_io(void);
> diff --git a/arch/arm/mach-exynos/mach-exynos4-dt.c b/arch/arm/mach-exynos/mach-exynos4-dt.c
> index 0099c6c..6858d73 100644
> --- a/arch/arm/mach-exynos/mach-exynos4-dt.c
> +++ b/arch/arm/mach-exynos/mach-exynos4-dt.c
> @@ -16,7 +16,6 @@
>   #include <linux/of_fdt.h>
>   #include <linux/serial_core.h>
>   #include <linux/memblock.h>
> -#include <linux/clocksource.h>
>
>   #include <asm/mach/arch.h>
>   #include <plat/mfc.h>
> @@ -54,7 +53,6 @@ DT_MACHINE_START(EXYNOS4210_DT, "Samsung Exynos4 (Flattened Device Tree)")
>   	.init_early	= exynos_firmware_init,
>   	.init_machine	= exynos4_dt_machine_init,
>   	.init_late	= exynos_init_late,
> -	.init_time	= exynos_init_time,
>   	.dt_compat	= exynos4_dt_compat,
>   	.restart        = exynos4_restart,
>   	.reserve	= exynos4_reserve,
> diff --git a/arch/arm/mach-exynos/mach-exynos5-dt.c b/arch/arm/mach-exynos/mach-exynos5-dt.c
> index f874b77..bac2105 100644
> --- a/arch/arm/mach-exynos/mach-exynos5-dt.c
> +++ b/arch/arm/mach-exynos/mach-exynos5-dt.c
> @@ -13,7 +13,6 @@
>   #include <linux/of_fdt.h>
>   #include <linux/memblock.h>
>   #include <linux/io.h>
> -#include <linux/clocksource.h>
>
>   #include <asm/mach/arch.h>
>   #include <mach/regs-pmu.h>
> @@ -76,7 +75,6 @@ DT_MACHINE_START(EXYNOS5_DT, "SAMSUNG EXYNOS5 (Flattened Device Tree)")
>   	.map_io		= exynos_init_io,
>   	.init_machine	= exynos5_dt_machine_init,
>   	.init_late	= exynos_init_late,
> -	.init_time	= exynos_init_time,
>   	.dt_compat	= exynos5_dt_compat,
>   	.restart        = exynos5_restart,
>   	.reserve	= exynos5_reserve,
>

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH 12/26] ARM: exynos: remove custom .init_time hook
  2013-09-26  6:21   ` Sebastian Hesselbarth
@ 2013-09-26  8:08     ` Tomasz Figa
  0 siblings, 0 replies; 15+ messages in thread
From: Tomasz Figa @ 2013-09-26  8:08 UTC (permalink / raw)
  To: linux-arm-kernel
  Cc: Sebastian Hesselbarth, linux-samsung-soc, Russell King,
	Arnd Bergmann, linux-kernel, Kukjin Kim, Olof Johansson

Hi Sebastian,

On Thursday 26 of September 2013 08:21:27 Sebastian Hesselbarth wrote:
> On 09/18/2013 07:53 PM, Sebastian Hesselbarth wrote:
> > With arch/arm calling of_clk_init(NULL) from time_init(), we can now
> > remove custom .init_time hooks. While at it, also remove some now
> > redundant includes.
> > 
> > Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
> > ---
> 
> Ping,

This patch looks fine to me (as the whole series).

Reviewed-by: Tomasz Figa <t.figa@samsung.com>

I don't see any reason why this series could introduce a regression on
Exynos SoCs, but just in case let me test it on selected Exynos4 and 
Exynos5 boards.

Best regards,
Tomasz

^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2013-09-26  8:08 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-09-18 17:53 [PATCH 00/26] ARM: provide common arch init for DT clocks Sebastian Hesselbarth
2013-09-18 17:53 ` [PATCH 09/26] ARM: call of_clk_init from default time_init handler Sebastian Hesselbarth
     [not found]   ` <1379526839-14798-10-git-send-email-sebastian.hesselbarth-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2013-09-23  7:54     ` [PATCH v2 " Sebastian Hesselbarth
2013-09-18 17:53 ` [PATCH 12/26] ARM: exynos: remove custom .init_time hook Sebastian Hesselbarth
2013-09-26  6:21   ` Sebastian Hesselbarth
2013-09-26  8:08     ` Tomasz Figa
     [not found] ` <1379526839-14798-1-git-send-email-sebastian.hesselbarth-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2013-09-18 19:47   ` [PATCH 00/26] ARM: provide common arch init for DT clocks Jason Cooper
     [not found]     ` <20130918194711.GR19937-u4khhh1J0LxI1Ri9qeTfzeTW4wlIGRCZ@public.gmane.org>
2013-09-18 19:52       ` Sebastian Hesselbarth
2013-09-18 20:45         ` Stephen Warren
2013-09-18 20:48         ` Olof Johansson
2013-09-18 21:04           ` Sebastian Hesselbarth
2013-09-20 19:16 ` Matt Porter
2013-09-22 12:14   ` Sebastian Hesselbarth
     [not found]     ` <523EDF16.10102-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2013-09-23 17:45       ` Matt Porter
     [not found]         ` <52407E2A.7030001-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2013-09-23 18:41           ` Christian Daudt

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox