iio: light: lm3533-als: Use devm_iio_device_alloc
[platform/adaptation/renesas_rcar/renesas_kernel.git] / drivers / iio / light / lm3533-als.c
index 5fa31a4..c1aadc6 100644 (file)
@@ -847,7 +847,7 @@ static int lm3533_als_probe(struct platform_device *pdev)
                return -EINVAL;
        }
 
-       indio_dev = iio_device_alloc(sizeof(*als));
+       indio_dev = devm_iio_device_alloc(&pdev->dev, sizeof(*als));
        if (!indio_dev)
                return -ENOMEM;
 
@@ -870,7 +870,7 @@ static int lm3533_als_probe(struct platform_device *pdev)
        if (als->irq) {
                ret = lm3533_als_setup_irq(als, indio_dev);
                if (ret)
-                       goto err_free_dev;
+                       return ret;
        }
 
        ret = lm3533_als_setup(als, pdata);
@@ -894,8 +894,6 @@ err_disable:
 err_free_irq:
        if (als->irq)
                free_irq(als->irq, indio_dev);
-err_free_dev:
-       iio_device_free(indio_dev);
 
        return ret;
 }
@@ -910,7 +908,6 @@ static int lm3533_als_remove(struct platform_device *pdev)
        lm3533_als_disable(als);
        if (als->irq)
                free_irq(als->irq, indio_dev);
-       iio_device_free(indio_dev);
 
        return 0;
 }