summaryrefslogtreecommitdiff
path: root/drivers/clk
diff options
context:
space:
mode:
authorStephen Boyd <sboyd@codeaurora.org>2016-02-10 20:44:33 (GMT)
committerStephen Boyd <sboyd@codeaurora.org>2016-02-10 20:44:33 (GMT)
commit58bb621536d1f64db619744c85dcbb94705eda85 (patch)
treeae59b5384fce7b4cf1b5fb3e8f569f55c838a964 /drivers/clk
parent4db9a9ba602b38bd1fd80c4b3851dd15740a4fad (diff)
parentdf9cd56421635433ee42798fdf09138367039732 (diff)
downloadlinux-58bb621536d1f64db619744c85dcbb94705eda85.tar.xz
Merge branch 'clk-fixes' into clk-next
* clk-fixes: clk: versatile: mask VCO bits before writing
Diffstat (limited to 'drivers/clk')
-rw-r--r--drivers/clk/versatile/clk-icst.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/clk/versatile/clk-icst.c b/drivers/clk/versatile/clk-icst.c
index e62f8cb..3bca438 100644
--- a/drivers/clk/versatile/clk-icst.c
+++ b/drivers/clk/versatile/clk-icst.c
@@ -78,6 +78,9 @@ static int vco_set(struct clk_icst *icst, struct icst_vco vco)
ret = regmap_read(icst->map, icst->vcoreg_off, &val);
if (ret)
return ret;
+
+ /* Mask the 18 bits used by the VCO */
+ val &= ~0x7ffff;
val |= vco.v | (vco.r << 9) | (vco.s << 16);
/* This magic unlocks the VCO so it can be controlled */