aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/clk-provider.h
diff options
context:
space:
mode:
authorJerome Brunet <jbrunet@baylibre.com>2017-12-01 22:51:56 +0100
committerMichael Turquette <mturquette@baylibre.com>2017-12-19 16:17:49 -0800
commite55a839a7a1c561b7d2fbd9cc50b7d40dd2b3361 (patch)
tree44beaa04e9e9b6972241f9013f5824579a54a88e /include/linux/clk-provider.h
parentclk: use round rate to bail out early in set_rate (diff)
downloadlinux-dev-e55a839a7a1c561b7d2fbd9cc50b7d40dd2b3361.tar.xz
linux-dev-e55a839a7a1c561b7d2fbd9cc50b7d40dd2b3361.zip
clk: add clock protection mechanism to clk core
The patch adds clk_core_protect and clk_core_unprotect to the internal CCF API. These functions allow to set a new constraint along the clock tree to prevent any change, even indirect, which may result in rate change or glitch. Tested-by: Maxime Ripard <maxime.ripard@free-electrons.com> Acked-by: Michael Turquette <mturquette@baylibre.com> Signed-off-by: Jerome Brunet <jbrunet@baylibre.com> Signed-off-by: Michael Turquette <mturquette@baylibre.com> Link: lkml.kernel.org/r/20171201215200.23523-7-jbrunet@baylibre.com
Diffstat (limited to 'include/linux/clk-provider.h')
-rw-r--r--include/linux/clk-provider.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/clk-provider.h b/include/linux/clk-provider.h
index 7c925e6211f1..73ac87f34df9 100644
--- a/include/linux/clk-provider.h
+++ b/include/linux/clk-provider.h
@@ -744,6 +744,7 @@ unsigned long clk_hw_get_rate(const struct clk_hw *hw);
unsigned long __clk_get_flags(struct clk *clk);
unsigned long clk_hw_get_flags(const struct clk_hw *hw);
bool clk_hw_is_prepared(const struct clk_hw *hw);
+bool clk_hw_rate_is_protected(const struct clk_hw *hw);
bool clk_hw_is_enabled(const struct clk_hw *hw);
bool __clk_is_enabled(struct clk *clk);
struct clk *__clk_lookup(const char *name);