diff options
author | Doug Anderson <dianders@chromium.org> | 2014-05-01 14:50:16 -0400 |
---|---|---|
committer | Mark Brown <broonie@linaro.org> | 2014-05-02 12:33:30 -0400 |
commit | c122c5b68273cf0153d1dc510889728cf71e8ce3 (patch) | |
tree | 03fe6e24730378ef3f48b7e4552a4eb1739d11ad | |
parent | ed11f1ead54bf0398a4303b51125622113c9c9e1 (diff) |
regulator: tps65090: Fix tps65090 crash on Tegra Dalmore
The patch (60e91b5 regulator: tps65090: Allow setting the overcurrent
wait time) introduced a crash on Tegra Dalmore. On Dalmore the device
tree doesn't have an entry for all of the FETs so it leaves tps_pdata
NULL in some cases. Add a check for NULL like the rest of the code
does.
Reported-by: Olof Johansson <olof@lixom.net>
Signed-off-by: Doug Anderson <dianders@chromium.org>
Tested-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
-rw-r--r-- | drivers/regulator/tps65090-regulator.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/regulator/tps65090-regulator.c b/drivers/regulator/tps65090-regulator.c index 2057e2e311de..2064b3fd45f7 100644 --- a/drivers/regulator/tps65090-regulator.c +++ b/drivers/regulator/tps65090-regulator.c | |||
@@ -431,8 +431,11 @@ static int tps65090_regulator_probe(struct platform_device *pdev) | |||
431 | ri = &pmic[num]; | 431 | ri = &pmic[num]; |
432 | ri->dev = &pdev->dev; | 432 | ri->dev = &pdev->dev; |
433 | ri->desc = &tps65090_regulator_desc[num]; | 433 | ri->desc = &tps65090_regulator_desc[num]; |
434 | ri->overcurrent_wait_valid = tps_pdata->overcurrent_wait_valid; | 434 | if (tps_pdata) { |
435 | ri->overcurrent_wait = tps_pdata->overcurrent_wait; | 435 | ri->overcurrent_wait_valid = |
436 | tps_pdata->overcurrent_wait_valid; | ||
437 | ri->overcurrent_wait = tps_pdata->overcurrent_wait; | ||
438 | } | ||
436 | 439 | ||
437 | /* | 440 | /* |
438 | * TPS5090 DCDC support the control from external digital input. | 441 | * TPS5090 DCDC support the control from external digital input. |