clk: ti: fix double free in of_ti_divider_clk_setup()
[platform/kernel/linux-starfive.git] / drivers / clk / ti / divider.c
index 768a1f3..5d5bb12 100644 (file)
@@ -309,7 +309,6 @@ static struct clk *_register_divider(struct device_node *node,
                                     u32 flags,
                                     struct clk_omap_divider *div)
 {
-       struct clk *clk;
        struct clk_init_data init;
        const char *parent_name;
        const char *name;
@@ -326,12 +325,7 @@ static struct clk *_register_divider(struct device_node *node,
        div->hw.init = &init;
 
        /* register the clock */
-       clk = of_ti_clk_register(node, &div->hw, name);
-
-       if (IS_ERR(clk))
-               kfree(div);
-
-       return clk;
+       return of_ti_clk_register(node, &div->hw, name);
 }
 
 int ti_clk_parse_divider_data(int *div_table, int num_dividers, int max_div,