]> git.baikalelectronics.ru Git - kernel.git/commitdiff
iio: light: cm32181: Clean up the probe function a bit
authorHans de Goede <hdegoede@redhat.com>
Tue, 28 Apr 2020 17:29:17 +0000 (19:29 +0200)
committerJonathan Cameron <Jonathan.Cameron@huawei.com>
Sun, 10 May 2020 09:41:30 +0000 (10:41 +0100)
3 small cleanups to cm32181_probe():

1. Do not log an error when we fail to allocate memory (as a general
rule drivers do not log errors for this as the kernel will already
have complained loudly that it could not alloc the mem).

2. Remove the i2c_set_clientdata() call, we never use i2c_get_clientdata()
or dev_get_drvdata() anywhere.

3. Add a dev helper variable and use it in various places instead of
&client->dev.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
drivers/iio/light/cm32181.c

index a09c73f2780541db2a31b0b0d63911c58116226f..a02ec59f2a94e96bce501ee5ded13dc58a87a6d0 100644 (file)
@@ -327,41 +327,35 @@ static const struct iio_info cm32181_info = {
 
 static int cm32181_probe(struct i2c_client *client)
 {
+       struct device *dev = &client->dev;
        struct cm32181_chip *cm32181;
        struct iio_dev *indio_dev;
        int ret;
 
-       indio_dev = devm_iio_device_alloc(&client->dev, sizeof(*cm32181));
-       if (!indio_dev) {
-               dev_err(&client->dev, "devm_iio_device_alloc failed\n");
+       indio_dev = devm_iio_device_alloc(dev, sizeof(*cm32181));
+       if (!indio_dev)
                return -ENOMEM;
-       }
 
        cm32181 = iio_priv(indio_dev);
-       i2c_set_clientdata(client, indio_dev);
        cm32181->client = client;
 
        mutex_init(&cm32181->lock);
-       indio_dev->dev.parent = &client->dev;
+       indio_dev->dev.parent = dev;
        indio_dev->channels = cm32181_channels;
        indio_dev->num_channels = ARRAY_SIZE(cm32181_channels);
        indio_dev->info = &cm32181_info;
-       indio_dev->name = dev_name(&client->dev);
+       indio_dev->name = dev_name(dev);
        indio_dev->modes = INDIO_DIRECT_MODE;
 
        ret = cm32181_reg_init(cm32181);
        if (ret) {
-               dev_err(&client->dev,
-                       "%s: register init failed\n",
-                       __func__);
+               dev_err(dev, "%s: register init failed\n", __func__);
                return ret;
        }
 
-       ret = devm_iio_device_register(&client->dev, indio_dev);
+       ret = devm_iio_device_register(dev, indio_dev);
        if (ret) {
-               dev_err(&client->dev,
-                       "%s: regist device failed\n",
-                       __func__);
+               dev_err(dev, "%s: regist device failed\n", __func__);
                return ret;
        }