aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/clk/qcom/clk-alpha-pll.h
diff options
context:
space:
mode:
authorAbhishek Sahu <absahu@codeaurora.org>2017-09-28 23:20:45 +0530
committerStephen Boyd <sboyd@codeaurora.org>2017-12-13 16:54:08 -0800
commit472796defebbc5381d6c462adcd0a9a6fc9494e4 (patch)
treefa724a8735d5321f0f9f97cc65ad98eecc63104d /drivers/clk/qcom/clk-alpha-pll.h
parentclk: qcom: support for alpha mode configuration (diff)
downloadlinux-dev-472796defebbc5381d6c462adcd0a9a6fc9494e4.tar.xz
linux-dev-472796defebbc5381d6c462adcd0a9a6fc9494e4.zip
clk: qcom: support for dynamic updating the PLL
Some of the Alpha PLLs support dynamic update in which the frequency can be changed dynamically without turning off the PLL. This dynamic update requires the following sequence: 1. Write the desired values to L_VAL and ALPHA_VAL registers 2. Toggle pll_latch_input from low to high 3. Wait for pll_ack_latch to transition from low to high The new L and alpha values have been latched. It may take some time for the PLL to fully settle with these new values. 4. Pull pll_latch_input low Signed-off-by: Rajendra Nayak <rnayak@codeaurora.org> Signed-off-by: Taniya Das <tdas@codeaurora.org> Signed-off-by: Abhishek Sahu <absahu@codeaurora.org> Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
Diffstat (limited to 'drivers/clk/qcom/clk-alpha-pll.h')
-rw-r--r--drivers/clk/qcom/clk-alpha-pll.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/clk/qcom/clk-alpha-pll.h b/drivers/clk/qcom/clk-alpha-pll.h
index c9c1f2f911b4..82fef8f1c9af 100644
--- a/drivers/clk/qcom/clk-alpha-pll.h
+++ b/drivers/clk/qcom/clk-alpha-pll.h
@@ -60,6 +60,7 @@ struct clk_alpha_pll {
size_t num_vco;
#define SUPPORTS_OFFLINE_REQ BIT(0)
#define SUPPORTS_FSM_MODE BIT(2)
+#define SUPPORTS_DYNAMIC_UPDATE BIT(3)
u8 flags;
struct clk_regmap clkr;