[PATCH 00/26] ARM: provide common arch init for DT clocks
Sebastian Hesselbarth
sebastian.hesselbarth at gmail.com
Wed Sep 18 14:04:48 PDT 2013
On 09/18/2013 10:48 PM, Olof Johansson wrote:
> On Wed, Sep 18, 2013 at 12:52 PM, Sebastian Hesselbarth
> <sebastian.hesselbarth at 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
More information about the linux-rpi-kernel
mailing list