A NULL init_data once incremented will lead to oops, fix it.

Fixes: f979c08f7624 ("regulator: tps6507x: Convert to regulator core's 
simplified DT parsing code")
Reported-by: Sekhar Nori <[email protected]>
Signed-off-by: Axel Lin <[email protected]>
---
Hi Sekhar,
Please check if this patch works, thanks.
Axel
 drivers/regulator/tps6507x-regulator.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/regulator/tps6507x-regulator.c 
b/drivers/regulator/tps6507x-regulator.c
index a1b7fab91dd4..d2a8f69b2665 100644
--- a/drivers/regulator/tps6507x-regulator.c
+++ b/drivers/regulator/tps6507x-regulator.c
@@ -403,12 +403,12 @@ static int tps6507x_pmic_probe(struct platform_device 
*pdev)
        /* common for all regulators */
        tps->mfd = tps6507x_dev;
 
-       for (i = 0; i < TPS6507X_NUM_REGULATOR; i++, info++, init_data++) {
+       for (i = 0; i < TPS6507X_NUM_REGULATOR; i++, info++) {
                /* Register the regulators */
                tps->info[i] = info;
-               if (init_data && init_data->driver_data) {
+               if (init_data && init_data[i].driver_data) {
                        struct tps6507x_reg_platform_data *data =
-                                       init_data->driver_data;
+                                       init_data[i].driver_data;
                        info->defdcdc_default = data->defdcdc_default;
                }
 
-- 
2.20.1

Reply via email to