Skip to content

Commit

Permalink
thermal/drivers/exynos: Handle devm_regulator_get_optional return val…
Browse files Browse the repository at this point in the history
…ue correctly

Currently, if regulator is required in the SoC, but
devm_regulator_get_optional fails for whatever reason, the execution
will proceed without propagating the error. Meanwhile there is no
reason to output the error in case of -ENODEV.

Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Mateusz Majewski <m.majewski2@samsung.com>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Link: https://lore.kernel.org/r/20231201095625.301884-5-m.majewski2@samsung.com
  • Loading branch information
Mateusz Majewski authored and Daniel Lezcano committed Jan 2, 2024
1 parent 20009a8 commit 52ef6f5
Showing 1 changed file with 10 additions and 2 deletions.
12 changes: 10 additions & 2 deletions drivers/thermal/samsung/exynos_tmu.c
Original file line number Diff line number Diff line change
Expand Up @@ -1002,9 +1002,17 @@ static int exynos_tmu_probe(struct platform_device *pdev)
return ret;
}
} else {
if (PTR_ERR(data->regulator) == -EPROBE_DEFER)
ret = PTR_ERR(data->regulator);
switch (ret) {
case -ENODEV:
break;
case -EPROBE_DEFER:
return -EPROBE_DEFER;
dev_info(&pdev->dev, "Regulator node (vtmu) not found\n");
default:
dev_err(&pdev->dev, "Failed to get regulator: %d\n",
ret);
return ret;
}
}

ret = exynos_map_dt_data(pdev);
Expand Down

0 comments on commit 52ef6f5

Please sign in to comment.