From 90e6e3c11fe883d0234f4110cdbfdc00e2d60c18 Mon Sep 17 00:00:00 2001 From: Peng Fan Date: Fri, 24 Mar 2017 16:24:11 +0800 Subject: [PATCH] MLK-14479 clk: imx: scu mux: fix gpr mux settings sc_misc_set/get_control use mutex lock/unlock internally, so using spin lock/unlock to protect sc_misc_set/get_control is wrong. So drop the spin lock. Signed-off-by: Peng Fan --- drivers/clk/imx/clk-mux-scu.c | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/drivers/clk/imx/clk-mux-scu.c b/drivers/clk/imx/clk-mux-scu.c index 968db33f59fd..1fc13b06b39d 100644 --- a/drivers/clk/imx/clk-mux-scu.c +++ b/drivers/clk/imx/clk-mux-scu.c @@ -50,7 +50,6 @@ struct clk_mux_scu { struct clk_mux_gpr_scu { struct clk_hw hw; - spinlock_t *lock; sc_rsrc_t rsrc_id; sc_ctrl_t gpr_id; }; @@ -266,37 +265,27 @@ void clk_unregister_mux_scu(struct clk *clk) static u8 clk_mux_gpr_scu_get_parent(struct clk_hw *hw) { struct clk_mux_gpr_scu *gpr_mux = to_clk_mux_gpr_scu(hw); - unsigned long flags = 0; u32 val = 0; if (!ccm_ipc_handle) return 0; - spin_lock_irqsave(gpr_mux->lock, flags); - sc_misc_get_control(ccm_ipc_handle, gpr_mux->rsrc_id, gpr_mux->gpr_id, &val); - spin_unlock_irqrestore(gpr_mux->lock, flags); - return (u8)val; } static int clk_mux_gpr_scu_set_parent(struct clk_hw *hw, u8 index) { struct clk_mux_gpr_scu *gpr_mux = to_clk_mux_gpr_scu(hw); - unsigned long flags = 0; if (!ccm_ipc_handle) return -1; - spin_lock_irqsave(gpr_mux->lock, flags); - sc_misc_set_control(ccm_ipc_handle, gpr_mux->rsrc_id, gpr_mux->gpr_id, index); - spin_unlock_irqrestore(gpr_mux->lock, flags); - return 0; } @@ -329,7 +318,6 @@ struct clk *clk_register_mux_gpr_scu(struct device *dev, const char *name, init.num_parents = num_parents; init.flags = 0; - gpr_scu_mux->lock = &imx_ccm_lock; gpr_scu_mux->hw.init = &init; gpr_scu_mux->rsrc_id = rsrc_id; gpr_scu_mux->gpr_id = gpr_id; -- 2.17.1