summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorTomasz Stanislawski <t.stanislaws@samsung.com>2013-10-15 17:59:11 +0200
committerChanho Park <chanho61.park@samsung.com>2014-11-18 11:46:58 +0900
commitc0d5b06f667c02e1c5784daf40cb858c73bdb9fa (patch)
treec587d1a8d41d5bc6adf6cfa77763ebeb50c46e53 /include
parent0121bbac75ef2cfd421a9bde11d7b497a67e80f9 (diff)
downloadlinux-3.10-c0d5b06f667c02e1c5784daf40cb858c73bdb9fa.tar.gz
linux-3.10-c0d5b06f667c02e1c5784daf40cb858c73bdb9fa.tar.bz2
linux-3.10-c0d5b06f667c02e1c5784daf40cb858c73bdb9fa.zip
clk: propagate parent change up one level
This patch adds support for propagation of setup of clock's parent one level up. This feature is helpful when a driver changes topology of its clocks using clk_set_parent(). The problem occurs when on one platform/SoC driver's clock is located at MUX output but on the other platform/SoC there is a gated proxy clock between the MUX and driver's clock. In such a case, driver's code has to be modified to use one clock for enabling and the other clock for setup of a parent. The code updates are avoided by propagating setup of a parent up one level. Additionally, this patch adds CLK_SET_PARENT_PARENT (sorry for naming) flag to inform clk-core that clk_set_parent() should be propagated. Signed-off-by: Tomasz Stanislawski <t.stanislaws@samsung.com> Change-Id: I206d23fb86cc09bce943ef9971a710876e3a7744
Diffstat (limited to 'include')
-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 11860985fec..061052fa76e 100644
--- a/include/linux/clk-provider.h
+++ b/include/linux/clk-provider.h
@@ -27,6 +27,7 @@
#define CLK_IS_ROOT BIT(4) /* root clk, has no parent */
#define CLK_IS_BASIC BIT(5) /* Basic clk, can't do a to_clk_foo() */
#define CLK_GET_RATE_NOCACHE BIT(6) /* do not use the cached clk rate */
+#define CLK_SET_PARENT_PARENT BIT(7) /* propagate parent change up one level */
struct clk_hw;