clk: nxp: clk-lpc18xx-ccu: Unmap region obtained by of_iomap
authorArvind Yadav <arvind.yadav.cs@gmail.com>
Tue, 20 Sep 2016 10:39:47 +0000 (16:09 +0530)
committerStephen Boyd <sboyd@codeaurora.org>
Wed, 2 Nov 2016 00:32:25 +0000 (17:32 -0700)
Free memory mapping, if lpc18xx_ccu_init() is not successful.

Signed-off-by: Arvind Yadav <arvind.yadav.cs@gmail.com>
Acked-by: Joachim Eastwood <manabian@gmail.com>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
drivers/clk/nxp/clk-lpc18xx-ccu.c

index f7136b94fd0ea51f8b877e6403f076a9463263da..27781b49eb8218f8c960d6999176467a545b4ae9 100644 (file)
@@ -277,12 +277,15 @@ static void __init lpc18xx_ccu_init(struct device_node *np)
        }
 
        clk_data = kzalloc(sizeof(*clk_data), GFP_KERNEL);
-       if (!clk_data)
+       if (!clk_data) {
+               iounmap(reg_base);
                return;
+       }
 
        clk_data->num = of_property_count_strings(np, "clock-names");
        clk_data->name = kcalloc(clk_data->num, sizeof(char *), GFP_KERNEL);
        if (!clk_data->name) {
+               iounmap(reg_base);
                kfree(clk_data);
                return;
        }