Loading drivers/clk/clk.c +16 −76 Original line number Diff line number Diff line Loading @@ -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; Loading Loading @@ -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; Loading Loading @@ -424,15 +395,6 @@ static unsigned long clk_core_get_rate_nolock(struct clk_core *core) 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); Loading @@ -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); Loading Loading @@ -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; Loading Loading @@ -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(); if (ret) return ret; return req.rate; } EXPORT_SYMBOL_GPL(clk_round_rate); Loading Loading @@ -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; Loading include/linux/clk-provider.h +0 −6 Original line number Diff line number Diff line Loading @@ -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); Loading @@ -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; Loading Loading
drivers/clk/clk.c +16 −76 Original line number Diff line number Diff line Loading @@ -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; Loading Loading @@ -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; Loading Loading @@ -424,15 +395,6 @@ static unsigned long clk_core_get_rate_nolock(struct clk_core *core) 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); Loading @@ -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); Loading Loading @@ -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; Loading Loading @@ -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(); if (ret) return ret; return req.rate; } EXPORT_SYMBOL_GPL(clk_round_rate); Loading Loading @@ -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; Loading
include/linux/clk-provider.h +0 −6 Original line number Diff line number Diff line Loading @@ -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); Loading @@ -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; Loading