diff mbox series

Revert "thermal/drivers/mediatek: Use devm_of_iomap to avoid resource leak in mtk_thermal_probe"

Message ID 20230525111417.3350271-1-ricardo.canuelo@collabora.com (mailing list archive)
State New, archived
Headers show
Series Revert "thermal/drivers/mediatek: Use devm_of_iomap to avoid resource leak in mtk_thermal_probe" | expand

Commit Message

Ricardo Cañuelo May 25, 2023, 11:14 a.m. UTC
This reverts commit f05c7b7d9ea9477fcc388476c6f4ade8c66d2d26.

That change was causing a regression in the generic-adc-thermal-probed
bootrr test as reported in the kernelci-results list [1].
A proper rework will take longer, so revert it for now.

[1] https://groups.io/g/kernelci-results/message/42660

Signed-off-by: Ricardo Cañuelo <ricardo.canuelo@collabora.com>
Suggested-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
---
 drivers/thermal/mediatek/auxadc_thermal.c | 14 ++------------
 1 file changed, 2 insertions(+), 12 deletions(-)

Comments

AngeloGioacchino Del Regno May 25, 2023, 11:17 a.m. UTC | #1
Il 25/05/23 13:14, Ricardo Cañuelo ha scritto:
> This reverts commit f05c7b7d9ea9477fcc388476c6f4ade8c66d2d26.
> 
> That change was causing a regression in the generic-adc-thermal-probed
> bootrr test as reported in the kernelci-results list [1].
> A proper rework will take longer, so revert it for now.
> 
> [1] https://groups.io/g/kernelci-results/message/42660
> 
> Signed-off-by: Ricardo Cañuelo <ricardo.canuelo@collabora.com>
> Suggested-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
> ---

Adding context: the rework would require us to "probably" change this
iomap to getting regmap handle(s) and working with that, which is why
that wouldn't be trivial.

My apologies about initially misunderstanding the fact that
devm_of_iomap() behaves in a different way compared to of_iomap().

Ricardo, huge thanks for sending this revert.

Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>


>   drivers/thermal/mediatek/auxadc_thermal.c | 14 ++------------
>   1 file changed, 2 insertions(+), 12 deletions(-)
> 
> diff --git a/drivers/thermal/mediatek/auxadc_thermal.c b/drivers/thermal/mediatek/auxadc_thermal.c
> index 0b5528804bbd..f59d36de20a0 100644
> --- a/drivers/thermal/mediatek/auxadc_thermal.c
> +++ b/drivers/thermal/mediatek/auxadc_thermal.c
> @@ -1222,12 +1222,7 @@ static int mtk_thermal_probe(struct platform_device *pdev)
>   		return -ENODEV;
>   	}
>   
> -	auxadc_base = devm_of_iomap(&pdev->dev, auxadc, 0, NULL);
> -	if (IS_ERR(auxadc_base)) {
> -		of_node_put(auxadc);
> -		return PTR_ERR(auxadc_base);
> -	}
> -
> +	auxadc_base = of_iomap(auxadc, 0);
>   	auxadc_phys_base = of_get_phys_base(auxadc);
>   
>   	of_node_put(auxadc);
> @@ -1243,12 +1238,7 @@ static int mtk_thermal_probe(struct platform_device *pdev)
>   		return -ENODEV;
>   	}
>   
> -	apmixed_base = devm_of_iomap(&pdev->dev, apmixedsys, 0, NULL);
> -	if (IS_ERR(apmixed_base)) {
> -		of_node_put(apmixedsys);
> -		return PTR_ERR(apmixed_base);
> -	}
> -
> +	apmixed_base = of_iomap(apmixedsys, 0);
>   	apmixed_phys_base = of_get_phys_base(apmixedsys);
>   
>   	of_node_put(apmixedsys);
AngeloGioacchino Del Regno May 25, 2023, 11:18 a.m. UTC | #2
Il 25/05/23 13:17, AngeloGioacchino Del Regno ha scritto:
> Il 25/05/23 13:14, Ricardo Cañuelo ha scritto:
>> This reverts commit f05c7b7d9ea9477fcc388476c6f4ade8c66d2d26.
>>
>> That change was causing a regression in the generic-adc-thermal-probed
>> bootrr test as reported in the kernelci-results list [1].
>> A proper rework will take longer, so revert it for now.
>>
>> [1] https://groups.io/g/kernelci-results/message/42660
>>
>> Signed-off-by: Ricardo Cañuelo <ricardo.canuelo@collabora.com>
>> Suggested-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
>> ---
> 
> Adding context: the rework would require us to "probably" change this
> iomap to getting regmap handle(s) and working with that, which is why
> that wouldn't be trivial.
> 
> My apologies about initially misunderstanding the fact that
> devm_of_iomap() behaves in a different way compared to of_iomap().
> 
> Ricardo, huge thanks for sending this revert.
> 
> Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
> 
> 

Sorry for the double mail, you're missing the Fixes tag, as this should also
be scheduled for backporting; you can use the commit that you're reverting
as your Fixes tag.

>>   drivers/thermal/mediatek/auxadc_thermal.c | 14 ++------------
>>   1 file changed, 2 insertions(+), 12 deletions(-)
>>
>> diff --git a/drivers/thermal/mediatek/auxadc_thermal.c 
>> b/drivers/thermal/mediatek/auxadc_thermal.c
>> index 0b5528804bbd..f59d36de20a0 100644
>> --- a/drivers/thermal/mediatek/auxadc_thermal.c
>> +++ b/drivers/thermal/mediatek/auxadc_thermal.c
>> @@ -1222,12 +1222,7 @@ static int mtk_thermal_probe(struct platform_device *pdev)
>>           return -ENODEV;
>>       }
>> -    auxadc_base = devm_of_iomap(&pdev->dev, auxadc, 0, NULL);
>> -    if (IS_ERR(auxadc_base)) {
>> -        of_node_put(auxadc);
>> -        return PTR_ERR(auxadc_base);
>> -    }
>> -
>> +    auxadc_base = of_iomap(auxadc, 0);
>>       auxadc_phys_base = of_get_phys_base(auxadc);
>>       of_node_put(auxadc);
>> @@ -1243,12 +1238,7 @@ static int mtk_thermal_probe(struct platform_device *pdev)
>>           return -ENODEV;
>>       }
>> -    apmixed_base = devm_of_iomap(&pdev->dev, apmixedsys, 0, NULL);
>> -    if (IS_ERR(apmixed_base)) {
>> -        of_node_put(apmixedsys);
>> -        return PTR_ERR(apmixed_base);
>> -    }
>> -
>> +    apmixed_base = of_iomap(apmixedsys, 0);
>>       apmixed_phys_base = of_get_phys_base(apmixedsys);
>>       of_node_put(apmixedsys);
> 
>
diff mbox series

Patch

diff --git a/drivers/thermal/mediatek/auxadc_thermal.c b/drivers/thermal/mediatek/auxadc_thermal.c
index 0b5528804bbd..f59d36de20a0 100644
--- a/drivers/thermal/mediatek/auxadc_thermal.c
+++ b/drivers/thermal/mediatek/auxadc_thermal.c
@@ -1222,12 +1222,7 @@  static int mtk_thermal_probe(struct platform_device *pdev)
 		return -ENODEV;
 	}
 
-	auxadc_base = devm_of_iomap(&pdev->dev, auxadc, 0, NULL);
-	if (IS_ERR(auxadc_base)) {
-		of_node_put(auxadc);
-		return PTR_ERR(auxadc_base);
-	}
-
+	auxadc_base = of_iomap(auxadc, 0);
 	auxadc_phys_base = of_get_phys_base(auxadc);
 
 	of_node_put(auxadc);
@@ -1243,12 +1238,7 @@  static int mtk_thermal_probe(struct platform_device *pdev)
 		return -ENODEV;
 	}
 
-	apmixed_base = devm_of_iomap(&pdev->dev, apmixedsys, 0, NULL);
-	if (IS_ERR(apmixed_base)) {
-		of_node_put(apmixedsys);
-		return PTR_ERR(apmixed_base);
-	}
-
+	apmixed_base = of_iomap(apmixedsys, 0);
 	apmixed_phys_base = of_get_phys_base(apmixedsys);
 
 	of_node_put(apmixedsys);