From: t-kristo@ti.com (Tero Kristo)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 13/24] ARM: OMAP2+: clock: add support for specific CM ops to ti_clk_ll_ops
Date: Fri, 6 Mar 2015 14:28:48 +0200 [thread overview]
Message-ID: <1425644939-3232-14-git-send-email-t-kristo@ti.com> (raw)
In-Reply-To: <1425644939-3232-1-git-send-email-t-kristo@ti.com>
Clock driver requires access to some CM API functions once the code
is being moved under the clock driver from the platform directory.
Gate type clock requires access to cm_wait_module_ready and
cm_split_idlest_reg functions, which are both used for waiting until
the module being clocked has been successfully activated. These CM
APIs are now exported through the ti_clk_ll_ops struct.
Signed-off-by: Tero Kristo <t-kristo@ti.com>
---
arch/arm/mach-omap2/prm_common.c | 2 ++
include/linux/clk/ti.h | 6 ++++++
2 files changed, 8 insertions(+)
diff --git a/arch/arm/mach-omap2/prm_common.c b/arch/arm/mach-omap2/prm_common.c
index 6fcb932..b9ad113 100644
--- a/arch/arm/mach-omap2/prm_common.c
+++ b/arch/arm/mach-omap2/prm_common.c
@@ -626,6 +626,8 @@ static struct ti_clk_ll_ops omap_clk_ll_ops = {
.clk_writel = prm_clk_writel,
.clkdm_clk_enable = clkdm_clk_enable,
.clkdm_clk_disable = clkdm_clk_disable,
+ .cm_wait_module_ready = omap_cm_wait_module_ready,
+ .cm_split_idlest_reg = cm_split_idlest_reg,
};
int __init of_prcm_init(void)
diff --git a/include/linux/clk/ti.h b/include/linux/clk/ti.h
index 4778783..339cc38 100644
--- a/include/linux/clk/ti.h
+++ b/include/linux/clk/ti.h
@@ -243,6 +243,8 @@ struct clk_omap_reg {
* @clk_writel: pointer to register write function
* @clkdm_clk_enable: pointer to clockdomain enable function
* @clkdm_clk_disable: pointer to clockdomain disable function
+ * @cm_wait_module_ready: pointer to CM module wait ready function
+ * @cm_split_idlest_reg: pointer to CM module function to split idlest reg
*
* Low-level ops are generally used by the basic clock types (clk-gate,
* clk-mux, clk-divider etc.) to provide support for various low-level
@@ -256,6 +258,10 @@ struct ti_clk_ll_ops {
int (*clkdm_clk_enable)(struct clockdomain *clkdm, struct clk *clk);
int (*clkdm_clk_disable)(struct clockdomain *clkdm,
struct clk *clk);
+ int (*cm_wait_module_ready)(u8 part, s16 prcm_mod, u16 idlest_reg,
+ u8 idlest_shift);
+ int (*cm_split_idlest_reg)(void __iomem *idlest_reg, s16 *prcm_inst,
+ u8 *idlest_reg_id);
};
extern struct ti_clk_ll_ops *ti_clk_ll_ops;
--
1.7.9.5
next prev parent reply other threads:[~2015-03-06 12:28 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-03-06 12:28 [PATCH 00/24] ARM: OMAP2+: move clock implementations under clock driver Tero Kristo
2015-03-06 12:28 ` [PATCH 01/24] ARM: OMAP2+: clock: export driver API to setup/get clock features Tero Kristo
2015-03-06 12:28 ` [PATCH 02/24] clk: ti: move generic OMAP DPLL implementation under drivers/clk Tero Kristo
2015-03-06 12:28 ` [PATCH 03/24] clk: ti: move OMAP4+ " Tero Kristo
2015-03-06 12:28 ` [PATCH 04/24] clk: ti: move interface clock " Tero Kristo
2015-03-06 12:28 ` [PATCH 05/24] ARM: OMAP3: dpll3-m2: get rid of obsolete omap2_clksel_round_rate_div call Tero Kristo
2015-03-06 12:28 ` [PATCH 06/24] ARM: OMAP2+: clk: remove obsolete clksel support code Tero Kristo
2015-03-06 12:28 ` [PATCH 07/24] ARM: OMAP2+: clock: remove clock_common_data.c file Tero Kristo
2015-03-06 12:28 ` [PATCH 08/24] ARM: OMAP36xx: remove clock36xx.c/.h files Tero Kristo
2015-03-06 12:28 ` [PATCH 09/24] clk: ti: autoidle: move generic autoidle handling code to clock driver Tero Kristo
2015-03-06 12:28 ` [PATCH 10/24] clk: ti: move omap2_clk_enable_init_clocks under " Tero Kristo
2015-03-06 12:28 ` [PATCH 11/24] ARM: OMAP2+: clock: remove support for legacy mpurate command line param Tero Kristo
2015-03-06 15:32 ` Tony Lindgren
2015-03-06 16:10 ` Tero Kristo
2015-03-06 16:25 ` Tony Lindgren
2015-03-09 9:08 ` Tero Kristo
2015-03-09 15:24 ` Tony Lindgren
2015-03-06 12:28 ` [PATCH 12/24] ARM: OMAP2+: clock: add support for clkdm ops to the low level clk ops Tero Kristo
2015-03-06 12:28 ` Tero Kristo [this message]
2015-03-06 12:28 ` [PATCH 14/24] clk: ti: dpll: move omap3 DPLL functionality to clock driver Tero Kristo
2015-03-06 12:28 ` [PATCH 15/24] ARM: OMAP3: clock: remove clock3xxx.c file Tero Kristo
2015-03-06 12:28 ` [PATCH 16/24] ARM: OMAP2+: clock: remove clkdm_control static boolean from code Tero Kristo
2015-03-06 12:28 ` [PATCH 17/24] clk: ti: dflt: move support for default gate clock to clock driver Tero Kristo
2015-03-06 12:28 ` [PATCH 18/24] clk: ti: omap2430: move clock support code under " Tero Kristo
2015-03-06 12:28 ` [PATCH 19/24] clk: ti: clkdm: move clkdm gate clock support code to " Tero Kristo
2015-03-06 12:28 ` [PATCH 20/24] clk: ti: omap34xx: move omap34xx clock type " Tero Kristo
2015-03-06 12:28 ` [PATCH 21/24] ARM: OMAP4: clock: remove clock44xx.h header Tero Kristo
2015-03-06 12:28 ` [PATCH 22/24] clk: ti: am3517: move remaining am3517 clock support code to clock driver Tero Kristo
2015-03-06 12:28 ` [PATCH 23/24] clk: ti: move some public definitions to private header Tero Kristo
2015-03-06 12:28 ` [PATCH 24/24] ARM: OMAP2+: clock: remove dead definitions from the clock header file Tero Kristo
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=1425644939-3232-14-git-send-email-t-kristo@ti.com \
--to=t-kristo@ti.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).