From: sebastian.hesselbarth@gmail.com (Sebastian Hesselbarth)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 06/26] clk: sunxi: declare OF clock provider
Date: Wed, 18 Sep 2013 19:53:39 +0200 [thread overview]
Message-ID: <1379526839-14798-7-git-send-email-sebastian.hesselbarth@gmail.com> (raw)
In-Reply-To: <1379526839-14798-1-git-send-email-sebastian.hesselbarth@gmail.com>
Common clock framework allows to register clock providers to get called
on of_clk_init() by using CLK_OF_DECLARE. This converts sunxi clock
providers to make use of it and get rid of the mach specific clk init
call. As sunxi has a bunch of independent clk provider nodes, we hook
current clock init to board compatible to make it called once.
Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
---
Cc: Olof Johansson <olof@lixom.net>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Maxime Ripard <maxime.ripard@free-electrons.com>
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Mike Turquette <mturquette@linaro.org>
Cc: linux-arm-kernel at lists.infradead.org
Cc: linux-kernel at vger.kernel.org
---
arch/arm/mach-sunxi/sunxi.c | 4 +---
drivers/clk/sunxi/clk-sunxi.c | 11 ++++++-----
include/linux/clk/sunxi.h | 22 ----------------------
3 files changed, 7 insertions(+), 30 deletions(-)
delete mode 100644 include/linux/clk/sunxi.h
diff --git a/arch/arm/mach-sunxi/sunxi.c b/arch/arm/mach-sunxi/sunxi.c
index e79fb34..e5a6975 100644
--- a/arch/arm/mach-sunxi/sunxi.c
+++ b/arch/arm/mach-sunxi/sunxi.c
@@ -20,8 +20,6 @@
#include <linux/io.h>
#include <linux/reboot.h>
-#include <linux/clk/sunxi.h>
-
#include <asm/mach/arch.h>
#include <asm/mach/map.h>
#include <asm/system_misc.h>
@@ -118,7 +116,7 @@ static void sunxi_setup_restart(void)
static void __init sunxi_timer_init(void)
{
- sunxi_init_clocks();
+ of_clk_init(NULL);
clocksource_of_init();
}
diff --git a/drivers/clk/sunxi/clk-sunxi.c b/drivers/clk/sunxi/clk-sunxi.c
index 34ee69f..9bbd035 100644
--- a/drivers/clk/sunxi/clk-sunxi.c
+++ b/drivers/clk/sunxi/clk-sunxi.c
@@ -16,7 +16,6 @@
#include <linux/clk-provider.h>
#include <linux/clkdev.h>
-#include <linux/clk/sunxi.h>
#include <linux/of.h>
#include <linux/of_address.h>
@@ -617,11 +616,8 @@ static void __init of_sunxi_table_clock_setup(const struct of_device_id *clk_mat
}
}
-void __init sunxi_init_clocks(void)
+static void __init sunxi_init_clocks(struct device_node *np)
{
- /* Register all the simple and basic clocks on DT */
- of_clk_init(NULL);
-
/* Register factor clocks */
of_sunxi_table_clock_setup(clk_factors_match, sunxi_factors_clk_setup);
@@ -634,3 +630,8 @@ void __init sunxi_init_clocks(void)
/* Register gate clocks */
of_sunxi_table_clock_setup(clk_gates_match, sunxi_gates_clk_setup);
}
+CLK_OF_DECLARE(sun4i_a10_clk_init, "allwinner,sun4i-a10", sunxi_init_clocks);
+CLK_OF_DECLARE(sun5i_a10s_clk_init, "allwinner,sun5i-a10s", sunxi_init_clocks);
+CLK_OF_DECLARE(sun5i_a13_clk_init, "allwinner,sun5i-a13", sunxi_init_clocks);
+CLK_OF_DECLARE(sun6i_a31_clk_init, "allwinner,sun6i-a31", sunxi_init_clocks);
+CLK_OF_DECLARE(sun7i_a20_clk_init, "allwinner,sun7i-a20", sunxi_init_clocks);
diff --git a/include/linux/clk/sunxi.h b/include/linux/clk/sunxi.h
deleted file mode 100644
index e074fdd..0000000
--- a/include/linux/clk/sunxi.h
+++ /dev/null
@@ -1,22 +0,0 @@
-/*
- * Copyright 2012 Maxime Ripard
- *
- * Maxime Ripard <maxime.ripard@free-electrons.com>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- */
-
-#ifndef __LINUX_CLK_SUNXI_H_
-#define __LINUX_CLK_SUNXI_H_
-
-void __init sunxi_init_clocks(void);
-
-#endif
--
1.7.10.4
next prev parent reply other threads:[~2013-09-18 17:53 UTC|newest]
Thread overview: 83+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-09-18 17:53 [PATCH 00/26] ARM: provide common arch init for DT clocks Sebastian Hesselbarth
2013-09-18 17:53 ` [PATCH 01/26] ARM: nomadik: move mtu setup to clocksource init Sebastian Hesselbarth
2013-09-20 20:49 ` Linus Walleij
2013-09-20 20:51 ` Linus Walleij
2013-09-20 21:08 ` Sebastian Hesselbarth
2013-09-20 21:11 ` Linus Walleij
2013-09-20 21:13 ` Sebastian Hesselbarth
2013-09-20 21:22 ` Linus Walleij
2013-09-22 12:18 ` Sebastian Hesselbarth
2013-09-20 21:37 ` [PATCH v2 01/26] ARM: nomadik: remove mtu initalization from .init_time Sebastian Hesselbarth
2013-09-18 17:53 ` [PATCH 02/26] clk: nomadik: move src init out of nomadik_clk_init Sebastian Hesselbarth
2013-09-20 20:54 ` Linus Walleij
2013-09-22 16:45 ` [PATCH v2 " Sebastian Hesselbarth
2013-09-18 17:53 ` [PATCH 03/26] clk: nomadik: declare OF clock provider Sebastian Hesselbarth
2013-09-20 20:55 ` Linus Walleij
2013-09-22 16:46 ` [PATCH v2 " Sebastian Hesselbarth
2013-09-18 17:53 ` [PATCH 04/26] clk: prima2: " Sebastian Hesselbarth
2013-09-19 8:45 ` Barry Song
2013-09-19 8:48 ` Sebastian Hesselbarth
2013-09-22 12:12 ` Sebastian Hesselbarth
2013-09-22 10:37 ` Barry Song
2013-09-27 18:21 ` Sebastian Hesselbarth
2013-09-29 4:49 ` Barry Song
2013-09-18 17:53 ` [PATCH 05/26] ARM: socfgpa: prepare for arch-wide .init_time callback Sebastian Hesselbarth
2013-09-26 6:12 ` Sebastian Hesselbarth
2013-09-26 13:06 ` Dinh Nguyen
2013-09-18 17:53 ` Sebastian Hesselbarth [this message]
2013-09-25 20:03 ` [PATCH 06/26] clk: sunxi: declare OF clock provider Maxime Ripard
2013-09-18 17:53 ` [PATCH 07/26] clk: vt8500: parse pmc_base from clock driver Sebastian Hesselbarth
2013-09-19 19:02 ` Tony Prisk
2013-09-19 19:12 ` Sebastian Hesselbarth
2013-09-20 4:51 ` Tony Prisk
2013-09-20 6:23 ` Sebastian Hesselbarth
2013-09-20 18:23 ` Tony Prisk
2013-09-20 6:22 ` [PATCH v2 " Sebastian Hesselbarth
2013-09-18 17:53 ` [PATCH 08/26] ARM: vt8500: prepare for arch-wide .init_time callback Sebastian Hesselbarth
2013-09-18 17:53 ` [PATCH 09/26] ARM: call of_clk_init from default time_init handler Sebastian Hesselbarth
2013-09-23 7:54 ` [PATCH v2 " Sebastian Hesselbarth
2013-09-18 17:53 ` [PATCH 10/26] ARM: bcm2835: remove custom .init_time hook Sebastian Hesselbarth
2013-09-18 19:37 ` Stephen Warren
2013-09-18 17:53 ` [PATCH 11/26] ARM: dove: " Sebastian Hesselbarth
2013-09-21 12:22 ` Andrew Lunn
2013-09-22 12:20 ` Sebastian Hesselbarth
2013-09-23 9:10 ` Andrew Lunn
2013-09-23 13:32 ` Jason Cooper
2013-09-23 17:46 ` Sebastian Hesselbarth
2013-09-18 17:53 ` [PATCH 12/26] ARM: exynos: " Sebastian Hesselbarth
2013-09-26 6:21 ` Sebastian Hesselbarth
2013-09-26 8:08 ` Tomasz Figa
2013-09-18 17:53 ` [PATCH 13/26] ARM: highbank: " Sebastian Hesselbarth
2013-09-18 17:53 ` [PATCH 14/26] ARM: imx: " Sebastian Hesselbarth
2013-09-18 17:53 ` [PATCH 15/26] ARM: kirkwood: " Sebastian Hesselbarth
2013-09-21 20:27 ` Andrew Lunn
2013-09-23 13:32 ` Jason Cooper
2013-09-18 17:53 ` [PATCH 16/26] ARM: mxs: " Sebastian Hesselbarth
2013-09-20 8:57 ` Shawn Guo
2013-09-18 17:53 ` [PATCH 17/26] ARM: nomadik: " Sebastian Hesselbarth
2013-09-20 20:56 ` Linus Walleij
2013-09-18 17:53 ` [PATCH 18/26] ARM: nspire: " Sebastian Hesselbarth
2013-09-18 17:53 ` [PATCH 19/26] ARM: prima2: " Sebastian Hesselbarth
2013-09-18 17:53 ` [PATCH 20/26] ARM: rockchip: " Sebastian Hesselbarth
2013-09-19 8:40 ` Heiko Stübner
2013-09-18 17:53 ` [PATCH 21/26] ARM: socfpga: " Sebastian Hesselbarth
2013-09-26 13:07 ` Dinh Nguyen
2013-09-18 17:53 ` [PATCH 22/26] ARM: sti: " Sebastian Hesselbarth
2013-09-18 17:53 ` [PATCH 23/26] ARM: sunxi: " Sebastian Hesselbarth
2013-09-25 20:07 ` Maxime Ripard
2013-09-26 6:15 ` Sebastian Hesselbarth
2013-09-27 17:02 ` Maxime Ripard
2013-09-18 17:53 ` [PATCH 24/26] ARM: tegra: " Sebastian Hesselbarth
2013-09-18 19:38 ` Stephen Warren
2013-09-18 17:53 ` [PATCH 25/26] ARM: vexpress: " Sebastian Hesselbarth
2013-09-19 13:34 ` Pawel Moll
2013-09-18 17:53 ` [PATCH 26/26] ARM: vt8500: " Sebastian Hesselbarth
2013-09-18 19:47 ` [PATCH 00/26] ARM: provide common arch init for DT clocks Jason Cooper
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
2013-09-23 17:45 ` Matt Porter
2013-09-23 18:41 ` Christian Daudt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1379526839-14798-7-git-send-email-sebastian.hesselbarth@gmail.com \
--to=sebastian.hesselbarth@gmail.com \
--cc=linux-arm-kernel@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).