]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - drivers/regulator/rc5t583-regulator.c
Merge remote-tracking branches 'regulator/topic/s5m8767', 'regulator/topic/st-pwm...
[karo-tx-linux.git] / drivers / regulator / rc5t583-regulator.c
index b58affb33143903d9044a8de2a614a8f20ee0e5f..4c414ae109ae5eb6edc44094e0c608a325a9cb63 100644 (file)
@@ -119,7 +119,6 @@ static int rc5t583_regulator_probe(struct platform_device *pdev)
 {
        struct rc5t583 *rc5t583 = dev_get_drvdata(pdev->dev.parent);
        struct rc5t583_platform_data *pdata = dev_get_platdata(rc5t583->dev);
-       struct regulator_init_data *reg_data;
        struct regulator_config config = { };
        struct rc5t583_regulator *reg = NULL;
        struct rc5t583_regulator *regs;
@@ -135,19 +134,11 @@ static int rc5t583_regulator_probe(struct platform_device *pdev)
 
        regs = devm_kzalloc(&pdev->dev, RC5T583_REGULATOR_MAX *
                        sizeof(struct rc5t583_regulator), GFP_KERNEL);
-       if (!regs) {
-               dev_err(&pdev->dev, "Memory allocation failed exiting..\n");
+       if (!regs)
                return -ENOMEM;
-       }
 
 
        for (id = 0; id < RC5T583_REGULATOR_MAX; ++id) {
-               reg_data = pdata->reg_init_data[id];
-
-               /* No need to register if there is no regulator data */
-               if (!reg_data)
-                       continue;
-
                reg = &regs[id];
                ri = &rc5t583_reg_info[id];
                reg->reg_info = ri;
@@ -169,7 +160,7 @@ static int rc5t583_regulator_probe(struct platform_device *pdev)
 
 skip_ext_pwr_config:
                config.dev = &pdev->dev;
-               config.init_data = reg_data;
+               config.init_data = pdata->reg_init_data[id];
                config.driver_data = reg;
                config.regmap = rc5t583->regmap;