OSDN Git Service

regulator: tps65910: Allow missing init_data for diagnostics
authorAxel Lin <axel.lin@ingics.com>
Tue, 18 Feb 2014 13:11:48 +0000 (21:11 +0800)
committerMark Brown <broonie@linaro.org>
Sat, 16 Aug 2014 21:53:19 +0000 (16:53 -0500)
The regulator core supports this to allow the configuration to be inspected
at runtime even if no software management is enabled.

Signed-off-by: Axel Lin <axel.lin@ingics.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
drivers/regulator/tps65910-regulator.c

index fa7db88..2064507 100644 (file)
@@ -1047,7 +1047,7 @@ static struct tps65910_board *tps65910_parse_dt_reg_data(
        *tps65910_reg_matches = matches;
 
        for (idx = 0; idx < count; idx++) {
-               if (!matches[idx].init_data || !matches[idx].of_node)
+               if (!matches[idx].of_node)
                        continue;
 
                pmic_plat_data->tps65910_pmic_init_data[idx] =
@@ -1077,7 +1077,6 @@ static int tps65910_probe(struct platform_device *pdev)
        struct tps65910 *tps65910 = dev_get_drvdata(pdev->dev.parent);
        struct regulator_config config = { };
        struct tps_info *info;
-       struct regulator_init_data *reg_data;
        struct regulator_dev *rdev;
        struct tps65910_reg *pmic;
        struct tps65910_board *pmic_plat_data;
@@ -1140,14 +1139,6 @@ static int tps65910_probe(struct platform_device *pdev)
 
        for (i = 0; i < pmic->num_regulators && i < TPS65910_NUM_REGS;
                        i++, info++) {
-
-               reg_data = pmic_plat_data->tps65910_pmic_init_data[i];
-
-               /* Regulator API handles empty constraints but not NULL
-                * constraints */
-               if (!reg_data)
-                       continue;
-
                /* Register the regulators */
                pmic->info[i] = info;
 
@@ -1199,7 +1190,7 @@ static int tps65910_probe(struct platform_device *pdev)
                pmic->desc[i].enable_mask = TPS65910_SUPPLY_STATE_ENABLED;
 
                config.dev = tps65910->dev;
-               config.init_data = reg_data;
+               config.init_data = pmic_plat_data->tps65910_pmic_init_data[i];
                config.driver_data = pmic;
                config.regmap = tps65910->regmap;