OSDN Git Service

clk: s2mps11: remove redundant static variables declaration
authorAndi Shyti <andi.shyti@samsung.com>
Wed, 20 Jan 2016 10:14:23 +0000 (19:14 +0900)
committerStephen Boyd <sboyd@codeaurora.org>
Fri, 29 Jan 2016 20:47:02 +0000 (12:47 -0800)
The clk_table and clk_data are declared static. The clk_table
contains the three clock data structures belonging to the s2mps11
driver. In the probe function it gets stored into clk_data.

Remove clk_table and refer directly to clk_data.

clk_data, itself, is also declared static. Declare locally it
and allocate it inside the probe function, as it is not used
anywhere else.

Signed-off-by: Andi Shyti <andi.shyti@samsung.com>
Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
drivers/clk/clk-s2mps11.c

index 3ff2162..fac0e20 100644 (file)
@@ -30,9 +30,6 @@
 
 #define s2mps11_name(a) (a->hw.init->name)
 
-static struct clk **clk_table;
-static struct clk_onecell_data clk_data;
-
 enum {
        S2MPS11_CLK_AP = 0,
        S2MPS11_CLK_CP,
@@ -145,6 +142,7 @@ static int s2mps11_clk_probe(struct platform_device *pdev)
 {
        struct sec_pmic_dev *iodev = dev_get_drvdata(pdev->dev.parent);
        struct s2mps11_clk *s2mps11_clks, *s2mps11_clk;
+       struct clk_onecell_data *clk_data;
        unsigned int s2mps11_reg;
        int i, ret = 0;
        enum sec_device_type hwid = platform_get_device_id(pdev)->driver_data;
@@ -156,9 +154,13 @@ static int s2mps11_clk_probe(struct platform_device *pdev)
 
        s2mps11_clk = s2mps11_clks;
 
-       clk_table = devm_kcalloc(&pdev->dev, S2MPS11_CLKS_NUM,
+       clk_data = devm_kzalloc(&pdev->dev, sizeof(*clk_data), GFP_KERNEL);
+       if (!clk_data)
+               return -ENOMEM;
+
+       clk_data->clks = devm_kcalloc(&pdev->dev, S2MPS11_CLKS_NUM,
                                sizeof(struct clk *), GFP_KERNEL);
-       if (!clk_table)
+       if (!clk_data->clks)
                return -ENOMEM;
 
        switch (hwid) {
@@ -207,13 +209,12 @@ static int s2mps11_clk_probe(struct platform_device *pdev)
                        ret = -ENOMEM;
                        goto err_reg;
                }
-               clk_table[i] = s2mps11_clks[i].clk;
+               clk_data->clks[i] = s2mps11_clks[i].clk;
        }
 
-       clk_data.clks = clk_table;
-       clk_data.clk_num = S2MPS11_CLKS_NUM;
+       clk_data->clk_num = S2MPS11_CLKS_NUM;
        of_clk_add_provider(s2mps11_clks->clk_np, of_clk_src_onecell_get,
-                       &clk_data);
+                       clk_data);
 
        platform_set_drvdata(pdev, s2mps11_clks);