Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

clk: qcom: gfm-mux: fix clk mask

For some reason global GFM_MASK ended up with bit 1 instead of bit 0.
Remove the global GFM_MASK and reuse mux_mask field.

Fixes: a2d8f507803e ("clk: qcom: Add support to LPASS AUDIO_CC Glitch Free Mux clocks")
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Link: https://lore.kernel.org/r/20210119113851.18946-1-srinivas.kandagatla@linaro.org
Signed-off-by: Stephen Boyd <sboyd@kernel.org>

authored by

Srinivas Kandagatla and committed by
Stephen Boyd
78ddb79c f28dec1a

+4 -4
+4 -4
drivers/clk/qcom/lpass-gfm-sm8250.c
··· 33 33 void __iomem *gfm_mux; 34 34 }; 35 35 36 - #define GFM_MASK BIT(1) 37 36 #define to_clk_gfm(_hw) container_of(_hw, struct clk_gfm, hw) 38 37 39 38 static u8 clk_gfm_get_parent(struct clk_hw *hw) 40 39 { 41 40 struct clk_gfm *clk = to_clk_gfm(hw); 42 41 43 - return readl(clk->gfm_mux) & GFM_MASK; 42 + return readl(clk->gfm_mux) & clk->mux_mask; 44 43 } 45 44 46 45 static int clk_gfm_set_parent(struct clk_hw *hw, u8 index) ··· 50 51 val = readl(clk->gfm_mux); 51 52 52 53 if (index) 53 - val |= GFM_MASK; 54 + val |= clk->mux_mask; 54 55 else 55 - val &= ~GFM_MASK; 56 + val &= ~clk->mux_mask; 57 + 56 58 57 59 writel(val, clk->gfm_mux); 58 60