summaryrefslogtreecommitdiffstats
path: root/include/linux/clk-provider.h
diff options
context:
space:
mode:
authorStephen Boyd2016-02-07 09:20:31 +0100
committerStephen Boyd2016-04-20 01:56:28 +0200
commit49cb392d36397a296dcd51ec57cf83585a89a94a (patch)
tree74bca49dcadb969d45b42b8faa9948d0ea113d6e /include/linux/clk-provider.h
parentclk: fractional-divider: Add hw based registration APIs (diff)
downloadkernel-qcow2-linux-49cb392d36397a296dcd51ec57cf83585a89a94a.tar.gz
kernel-qcow2-linux-49cb392d36397a296dcd51ec57cf83585a89a94a.tar.xz
kernel-qcow2-linux-49cb392d36397a296dcd51ec57cf83585a89a94a.zip
clk: composite: Add hw based registration APIs
Add registration APIs in the clk composite code to return struct clk_hw pointers instead of struct clk pointers. This way we hide the struct clk pointer from providers unless they need to use consumer facing APIs. Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
Diffstat (limited to 'include/linux/clk-provider.h')
-rw-r--r--include/linux/clk-provider.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/include/linux/clk-provider.h b/include/linux/clk-provider.h
index bcbaf6c95d52..456c3ced1ac9 100644
--- a/include/linux/clk-provider.h
+++ b/include/linux/clk-provider.h
@@ -638,6 +638,13 @@ struct clk *clk_register_composite(struct device *dev, const char *name,
struct clk_hw *rate_hw, const struct clk_ops *rate_ops,
struct clk_hw *gate_hw, const struct clk_ops *gate_ops,
unsigned long flags);
+struct clk_hw *clk_hw_register_composite(struct device *dev, const char *name,
+ const char * const *parent_names, int num_parents,
+ struct clk_hw *mux_hw, const struct clk_ops *mux_ops,
+ struct clk_hw *rate_hw, const struct clk_ops *rate_ops,
+ struct clk_hw *gate_hw, const struct clk_ops *gate_ops,
+ unsigned long flags);
+void clk_hw_unregister_composite(struct clk_hw *hw);
/***
* struct clk_gpio_gate - gpio gated clock