lkml.org 
[lkml]   [2016]   [Mar]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 11/13] thermal: convert exynos to use devm_thermal_zone_of_sensor_register
    Hi Eduardo,

    > This changes the driver to use the devm_ version
    > of thermal_zone_of_sensor_register and cleans
    > up the local points and unregister calls.
    >
    > Cc: Lukasz Majewski <l.majewski@samsung.com>
    > Cc: Zhang Rui <rui.zhang@intel.com>
    > Cc: Kukjin Kim <kgene@kernel.org>
    > Cc: Krzysztof Kozlowski <k.kozlowski@samsung.com>
    > Cc: linux-pm@vger.kernel.org
    > Cc: linux-samsung-soc@vger.kernel.org
    > Cc: linux-arm-kernel@lists.infradead.org
    > Cc: linux-kernel@vger.kernel.org
    > Signed-off-by: Eduardo Valentin <edubezval@gmail.com>
    > ---
    > drivers/thermal/samsung/exynos_tmu.c | 12 ++++--------
    > 1 file changed, 4 insertions(+), 8 deletions(-)
    >
    > diff --git a/drivers/thermal/samsung/exynos_tmu.c
    > b/drivers/thermal/samsung/exynos_tmu.c index fa61eff..256039e 100644
    > --- a/drivers/thermal/samsung/exynos_tmu.c
    > +++ b/drivers/thermal/samsung/exynos_tmu.c
    > @@ -1363,8 +1363,8 @@ static int exynos_tmu_probe(struct
    > platform_device *pdev)
    > * data->tzd must be registered before calling
    > exynos_tmu_initialize(),
    > * requesting irq and calling exynos_tmu_control().
    > */
    > - data->tzd = thermal_zone_of_sensor_register(&pdev->dev, 0,
    > data,
    > -
    > &exynos_sensor_ops);
    > + data->tzd = devm_thermal_zone_of_sensor_register(&pdev->dev,
    > 0, data,
    > +
    > &exynos_sensor_ops); if (IS_ERR(data->tzd)) {
    > ret = PTR_ERR(data->tzd);
    > dev_err(&pdev->dev, "Failed to register sensor:
    > %d\n", ret); @@ -1374,21 +1374,19 @@ static int
    > exynos_tmu_probe(struct platform_device *pdev) ret =
    > exynos_tmu_initialize(pdev); if (ret) {
    > dev_err(&pdev->dev, "Failed to initialize TMU\n");
    > - goto err_thermal;
    > + goto err_sclk;
    > }
    >
    > ret = devm_request_irq(&pdev->dev, data->irq, exynos_tmu_irq,
    > IRQF_TRIGGER_RISING | IRQF_SHARED,
    > dev_name(&pdev->dev), data); if (ret) {
    > dev_err(&pdev->dev, "Failed to request irq: %d\n",
    > data->irq);
    > - goto err_thermal;
    > + goto err_sclk;
    > }
    >
    > exynos_tmu_control(pdev, true);
    > return 0;
    >
    > -err_thermal:
    > - thermal_zone_of_sensor_unregister(&pdev->dev, data->tzd);
    > err_sclk:
    > clk_disable_unprepare(data->sclk);
    > err_clk:
    > @@ -1406,9 +1404,7 @@ err_sensor:
    > static int exynos_tmu_remove(struct platform_device *pdev)
    > {
    > struct exynos_tmu_data *data = platform_get_drvdata(pdev);
    > - struct thermal_zone_device *tzd = data->tzd;
    >
    > - thermal_zone_of_sensor_unregister(&pdev->dev, tzd);
    > exynos_tmu_control(pdev, false);
    >
    > clk_disable_unprepare(data->sclk);

    Reviewed-by: Lukasz Majewski <l.majewski@samsung.com>

    --
    Best regards,

    Lukasz Majewski

    Samsung R&D Institute Poland (SRPOL) | Linux Platform Group

    \
     
     \ /
      Last update: 2016-03-10 11:01    [W:4.241 / U:0.132 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site