Message ID | 20200428172923.567806-5-hdegoede@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [v3,01/11] iio: light: cm32181: Switch to new style i2c-driver probe function | expand |
On Tue, 28 Apr 2020 19:29:17 +0200 Hans de Goede <hdegoede@redhat.com> wrote: > 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> looks fine to me. J > --- > Changes in v3: > - This is a new patch in v3 of this patch-set > --- > drivers/iio/light/cm32181.c | 22 ++++++++-------------- > 1 file changed, 8 insertions(+), 14 deletions(-) > > diff --git a/drivers/iio/light/cm32181.c b/drivers/iio/light/cm32181.c > index 065bc7a11f84..8fe49610fc26 100644 > --- a/drivers/iio/light/cm32181.c > +++ b/drivers/iio/light/cm32181.c > @@ -326,41 +326,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; > } >
diff --git a/drivers/iio/light/cm32181.c b/drivers/iio/light/cm32181.c index 065bc7a11f84..8fe49610fc26 100644 --- a/drivers/iio/light/cm32181.c +++ b/drivers/iio/light/cm32181.c @@ -326,41 +326,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; }
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> --- Changes in v3: - This is a new patch in v3 of this patch-set --- drivers/iio/light/cm32181.c | 22 ++++++++-------------- 1 file changed, 8 insertions(+), 14 deletions(-)