From fc4a05d4b0eb1a0110ef11201bf563cd4b53fbce Mon Sep 17 00:00:00 2001 From: Stephen Boyd Date: Thu, 25 Jun 2015 17:24:15 -0700 Subject: [PATCH] clk: Remove unused provider APIs Remove these APIs now that we've converted all users to the replacement struct clk_hw based versions. Signed-off-by: Stephen Boyd --- drivers/clk/clk.c | 92 +++++++----------------------------- include/linux/clk-provider.h | 6 --- 2 files changed, 16 insertions(+), 82 deletions(-) diff --git a/drivers/clk/clk.c b/drivers/clk/clk.c index a30fd30f4948..128ad748b682 100644 --- a/drivers/clk/clk.c +++ b/drivers/clk/clk.c @@ -290,28 +290,12 @@ struct clk_hw *__clk_get_hw(struct clk *clk) } EXPORT_SYMBOL_GPL(__clk_get_hw); -u8 __clk_get_num_parents(struct clk *clk) -{ - return !clk ? 0 : clk->core->num_parents; -} -EXPORT_SYMBOL_GPL(__clk_get_num_parents); - unsigned int clk_hw_get_num_parents(struct clk_hw *hw) { return hw->core->num_parents; } EXPORT_SYMBOL_GPL(clk_hw_get_num_parents); -struct clk *__clk_get_parent(struct clk *clk) -{ - if (!clk) - return NULL; - - /* TODO: Create a per-user clk and change callers to call clk_put */ - return !clk->core->parent ? NULL : clk->core->parent->hw->clk; -} -EXPORT_SYMBOL_GPL(__clk_get_parent); - struct clk_hw *clk_hw_get_parent(struct clk_hw *hw) { return hw->core->parent ? hw->core->parent->hw : NULL; @@ -375,19 +359,6 @@ static struct clk_core *clk_core_get_parent_by_index(struct clk_core *core, return core->parents[index]; } -struct clk *clk_get_parent_by_index(struct clk *clk, u8 index) -{ - struct clk_core *parent; - - if (!clk) - return NULL; - - parent = clk_core_get_parent_by_index(clk->core, index); - - return !parent ? NULL : parent->hw->clk; -} -EXPORT_SYMBOL_GPL(clk_get_parent_by_index); - struct clk_hw *clk_hw_get_parent_by_index(struct clk_hw *hw, unsigned int index) { struct clk_core *parent; @@ -424,15 +395,6 @@ out: return ret; } -unsigned long __clk_get_rate(struct clk *clk) -{ - if (!clk) - return 0; - - return clk_core_get_rate_nolock(clk->core); -} -EXPORT_SYMBOL_GPL(__clk_get_rate); - unsigned long clk_hw_get_rate(struct clk_hw *hw) { return clk_core_get_rate_nolock(hw->core); @@ -459,14 +421,6 @@ unsigned long clk_hw_get_flags(struct clk_hw *hw) } EXPORT_SYMBOL_GPL(clk_hw_get_flags); -bool __clk_is_prepared(struct clk *clk) -{ - if (!clk) - return false; - - return clk_core_is_prepared(clk->core); -} - bool clk_hw_is_prepared(struct clk_hw *hw) { return clk_core_is_prepared(hw->core); @@ -880,32 +834,6 @@ int __clk_determine_rate(struct clk_hw *hw, struct clk_rate_request *req) } EXPORT_SYMBOL_GPL(__clk_determine_rate); -/** - * __clk_round_rate - round the given rate for a clk - * @clk: round the rate of this clock - * @rate: the rate which is to be rounded - * - * Useful for clk_ops such as .set_rate - */ -unsigned long __clk_round_rate(struct clk *clk, unsigned long rate) -{ - struct clk_rate_request req; - int ret; - - if (!clk) - return 0; - - clk_core_get_boundaries(clk->core, &req.min_rate, &req.max_rate); - req.rate = rate; - - ret = clk_core_round_rate_nolock(clk->core, &req); - if (ret) - return 0; - - return req.rate; -} -EXPORT_SYMBOL_GPL(__clk_round_rate); - unsigned long clk_hw_round_rate(struct clk_hw *hw, unsigned long rate) { int ret; @@ -933,16 +861,24 @@ EXPORT_SYMBOL_GPL(clk_hw_round_rate); */ long clk_round_rate(struct clk *clk, unsigned long rate) { - unsigned long ret; + struct clk_rate_request req; + int ret; if (!clk) return 0; clk_prepare_lock(); - ret = __clk_round_rate(clk, rate); + + clk_core_get_boundaries(clk->core, &req.min_rate, &req.max_rate); + req.rate = rate; + + ret = clk_core_round_rate_nolock(clk->core, &req); clk_prepare_unlock(); - return ret; + if (ret) + return ret; + + return req.rate; } EXPORT_SYMBOL_GPL(clk_round_rate); @@ -1711,8 +1647,12 @@ struct clk *clk_get_parent(struct clk *clk) { struct clk *parent; + if (!clk) + return NULL; + clk_prepare_lock(); - parent = __clk_get_parent(clk); + /* TODO: Create a per-user clk and change callers to call clk_put */ + parent = !clk->core->parent ? NULL : clk->core->parent->hw->clk; clk_prepare_unlock(); return parent; diff --git a/include/linux/clk-provider.h b/include/linux/clk-provider.h index be88dae0c3eb..0d3128fbc14e 100644 --- a/include/linux/clk-provider.h +++ b/include/linux/clk-provider.h @@ -609,19 +609,14 @@ void devm_clk_unregister(struct device *dev, struct clk *clk); const char *__clk_get_name(struct clk *clk); const char *clk_hw_get_name(struct clk_hw *hw); struct clk_hw *__clk_get_hw(struct clk *clk); -u8 __clk_get_num_parents(struct clk *clk); unsigned int clk_hw_get_num_parents(struct clk_hw *hw); -struct clk *__clk_get_parent(struct clk *clk); struct clk_hw *clk_hw_get_parent(struct clk_hw *hw); -struct clk *clk_get_parent_by_index(struct clk *clk, u8 index); struct clk_hw *clk_hw_get_parent_by_index(struct clk_hw *hw, unsigned int index); unsigned int __clk_get_enable_count(struct clk *clk); -unsigned long __clk_get_rate(struct clk *clk); unsigned long clk_hw_get_rate(struct clk_hw *hw); unsigned long __clk_get_flags(struct clk *clk); unsigned long clk_hw_get_flags(struct clk_hw *hw); -bool __clk_is_prepared(struct clk *clk); bool clk_hw_is_prepared(struct clk_hw *hw); bool __clk_is_enabled(struct clk *clk); struct clk *__clk_lookup(const char *name); @@ -643,7 +638,6 @@ static inline void __clk_hw_set_clk(struct clk_hw *dst, struct clk_hw *src) /* * FIXME clock api without lock protection */ -unsigned long __clk_round_rate(struct clk *clk, unsigned long rate); unsigned long clk_hw_round_rate(struct clk_hw *hw, unsigned long rate); struct of_device_id; -- 2.20.1