regulator: act8865: Remove "too many regulators" error handler
authorMaarten ter Huurne <maarten@treewalker.org>
Thu, 17 Mar 2016 14:05:06 +0000 (15:05 +0100)
committerMark Brown <broonie@kernel.org>
Mon, 21 Mar 2016 17:52:07 +0000 (17:52 +0000)
The check would dereference pdata, which can be NULL in the non-DT
use case.

Nothing will break if pdata->num_regulators is larger than the number
of regulators that the driver defines: pdata->num_regulators is only
read in act8865_get_init_data() to iterate through pdata->regulators.

The error handler might have some value as a sanity check on the
platform data, but the platform data could be broken in many other
ways that are not checked for (unknown IDs, duplicate IDs), so I see
no reason to perform only this specific check.

Signed-off-by: Maarten ter Huurne <maarten@treewalker.org>
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/regulator/act8865-regulator.c

index 89f856f257f7ffe97b25c54c742206ccadf9a1c7..69cdad0f71baf8e645d23c8099012fb8af0bfec5 100644 (file)
@@ -485,12 +485,6 @@ static int act8865_pmic_probe(struct i2c_client *client,
                pdata = &pdata_of;
        }
 
-       if (pdata->num_regulators > num_regulators) {
-               dev_err(dev, "too many regulators: %d\n",
-                       pdata->num_regulators);
-               return -EINVAL;
-       }
-
        act8865 = devm_kzalloc(dev, sizeof(struct act8865), GFP_KERNEL);
        if (!act8865)
                return -ENOMEM;