aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorShawn Lin <shawn.lin@rock-chips.com>2016-02-14 22:33:41 -0500
committerHeiko Stuebner <heiko@sntech.de>2016-02-15 17:37:27 -0500
commit022dce0bd03905251de6cdd491a292818eaf3b89 (patch)
treecdafbf19ef651ab6c5f4f38808bc632a72d7cfba
parentddd02e145611d1689e5014e79d7f37dcd323b70b (diff)
clk: rockchip: don't return NULL when registering mmc branch fails
Avoid return NULL if rockchip_clk_register_mmc fails, otherwise rockchip_clk_register_branches print "unknown clock type". The acutal case is that it's a known clock type but we fail to regiser it, which may makes user confuse the reason of failure. Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com> Signed-off-by: Heiko Stuebner <heiko@sntech.de>
-rw-r--r--drivers/clk/rockchip/clk-mmc-phase.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/drivers/clk/rockchip/clk-mmc-phase.c b/drivers/clk/rockchip/clk-mmc-phase.c
index 2685644826a0..e0dc7e83403a 100644
--- a/drivers/clk/rockchip/clk-mmc-phase.c
+++ b/drivers/clk/rockchip/clk-mmc-phase.c
@@ -150,7 +150,7 @@ struct clk *rockchip_clk_register_mmc(const char *name,
150 150
151 mmc_clock = kmalloc(sizeof(*mmc_clock), GFP_KERNEL); 151 mmc_clock = kmalloc(sizeof(*mmc_clock), GFP_KERNEL);
152 if (!mmc_clock) 152 if (!mmc_clock)
153 return NULL; 153 return ERR_PTR(-ENOMEM);
154 154
155 init.name = name; 155 init.name = name;
156 init.num_parents = num_parents; 156 init.num_parents = num_parents;
@@ -172,11 +172,7 @@ struct clk *rockchip_clk_register_mmc(const char *name,
172 172
173 clk = clk_register(NULL, &mmc_clock->hw); 173 clk = clk_register(NULL, &mmc_clock->hw);
174 if (IS_ERR(clk)) 174 if (IS_ERR(clk))
175 goto err_free; 175 kfree(mmc_clock);
176 176
177 return clk; 177 return clk;
178
179err_free:
180 kfree(mmc_clock);
181 return NULL;
182} 178}