thermal: rcar_gen3_thermal: check that TSC exists before memory allocation

Move the check for a TSC resource before allocating memory for a new
TSC. If no TSC is found there is little point in allocating memory for
it.

Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Signed-off-by: Eduardo Valentin <edubezval@gmail.com>
This commit is contained in:
Niklas Söderlund 2017-03-29 20:43:52 +02:00 committed by Eduardo Valentin
parent 100cfbcf25
commit d51546c0db

View File

@ -276,16 +276,16 @@ static int rcar_gen3_thermal_probe(struct platform_device *pdev)
for (i = 0; i < TSC_MAX_NUM; i++) { for (i = 0; i < TSC_MAX_NUM; i++) {
struct rcar_gen3_thermal_tsc *tsc; struct rcar_gen3_thermal_tsc *tsc;
res = platform_get_resource(pdev, IORESOURCE_MEM, i);
if (!res)
break;
tsc = devm_kzalloc(dev, sizeof(*tsc), GFP_KERNEL); tsc = devm_kzalloc(dev, sizeof(*tsc), GFP_KERNEL);
if (!tsc) { if (!tsc) {
ret = -ENOMEM; ret = -ENOMEM;
goto error_unregister; goto error_unregister;
} }
res = platform_get_resource(pdev, IORESOURCE_MEM, i);
if (!res)
break;
tsc->base = devm_ioremap_resource(dev, res); tsc->base = devm_ioremap_resource(dev, res);
if (IS_ERR(tsc->base)) { if (IS_ERR(tsc->base)) {
ret = PTR_ERR(tsc->base); ret = PTR_ERR(tsc->base);