From: Anson Huang Date: Wed, 19 Jun 2019 05:52:45 +0000 (+0800) Subject: clk: imx: Add API for clk unregister when driver probe fail X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=fd6ef2857b7484ab947beb2f2a1bbb3662553298;p=linux.git clk: imx: Add API for clk unregister when driver probe fail For i.MX clock drivers probe fail case, clks should be unregistered in the return path, this patch adds a common API for i.MX clock drivers to unregister clocks when fail. Signed-off-by: Anson Huang Signed-off-by: Shawn Guo --- diff --git a/drivers/clk/imx/clk.c b/drivers/clk/imx/clk.c index f628071f6605e..cfc05e43c3430 100644 --- a/drivers/clk/imx/clk.c +++ b/drivers/clk/imx/clk.c @@ -14,6 +14,14 @@ DEFINE_SPINLOCK(imx_ccm_lock); +void imx_unregister_clocks(struct clk *clks[], unsigned int count) +{ + unsigned int i; + + for (i = 0; i < count; i++) + clk_unregister(clks[i]); +} + void __init imx_mmdc_mask_handshake(void __iomem *ccm_base, unsigned int chn) { diff --git a/drivers/clk/imx/clk.h b/drivers/clk/imx/clk.h index 19d7b8b0a00ef..bb4ec1b33fafe 100644 --- a/drivers/clk/imx/clk.h +++ b/drivers/clk/imx/clk.h @@ -12,6 +12,7 @@ void imx_check_clk_hws(struct clk_hw *clks[], unsigned int count); void imx_register_uart_clocks(struct clk ** const clks[]); void imx_register_uart_clocks_hws(struct clk_hw ** const hws[]); void imx_mmdc_mask_handshake(void __iomem *ccm_base, unsigned int chn); +void imx_unregister_clocks(struct clk *clks[], unsigned int count); extern void imx_cscmr1_fixup(u32 *val);