From 081ba80206d6b53d45ee31bc6c90871e8cfbc117 Mon Sep 17 00:00:00 2001 From: Rajendra Nayak Date: Mon, 21 Nov 2016 12:07:11 +0530 Subject: clk: qcom: Add rcg ops to return floor value closest to the requested rate The default behaviour with clk_rcg2_ops is for the clk_round_rate()/clk_set_rate() to return/set a ceil clock rate closest to the requested rate by looking up the corresponding frequency table. However, we do have some instances (mainly sdcc on various platforms) of clients expecting a clk_set_rate() to set a floor value instead. Add a new clk_rcg2_floor_ops to handle this for such specific rcg instances Signed-off-by: Rajendra Nayak Signed-off-by: Ritesh Harjani Signed-off-by: Stephen Boyd --- drivers/clk/qcom/common.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'drivers/clk/qcom/common.h') diff --git a/drivers/clk/qcom/common.h b/drivers/clk/qcom/common.h index 9fb5b8e89071..23c1927669ba 100644 --- a/drivers/clk/qcom/common.h +++ b/drivers/clk/qcom/common.h @@ -41,6 +41,8 @@ struct qcom_cc_desc { extern const struct freq_tbl *qcom_find_freq(const struct freq_tbl *f, unsigned long rate); +extern const struct freq_tbl *qcom_find_freq_floor(const struct freq_tbl *f, + unsigned long rate); extern void qcom_pll_set_fsm_mode(struct regmap *m, u32 reg, u8 bias_count, u8 lock_count); extern int qcom_find_src_index(struct clk_hw *hw, const struct parent_map *map, -- cgit v1.2.3