Commit b885d0fa authored by Hans de Goede's avatar Hans de Goede Committed by Jonathan Cameron

iio: light: cm32181: Clean up the probe function a bit

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: default avatarHans de Goede <hdegoede@redhat.com>
Signed-off-by: default avatarJonathan Cameron <Jonathan.Cameron@huawei.com>
parent 02cdab2a
...@@ -327,41 +327,35 @@ static const struct iio_info cm32181_info = { ...@@ -327,41 +327,35 @@ static const struct iio_info cm32181_info = {
static int cm32181_probe(struct i2c_client *client) static int cm32181_probe(struct i2c_client *client)
{ {
struct device *dev = &client->dev;
struct cm32181_chip *cm32181; struct cm32181_chip *cm32181;
struct iio_dev *indio_dev; struct iio_dev *indio_dev;
int ret; int ret;
indio_dev = devm_iio_device_alloc(&client->dev, sizeof(*cm32181)); indio_dev = devm_iio_device_alloc(dev, sizeof(*cm32181));
if (!indio_dev) { if (!indio_dev)
dev_err(&client->dev, "devm_iio_device_alloc failed\n");
return -ENOMEM; return -ENOMEM;
}
cm32181 = iio_priv(indio_dev); cm32181 = iio_priv(indio_dev);
i2c_set_clientdata(client, indio_dev);
cm32181->client = client; cm32181->client = client;
mutex_init(&cm32181->lock); mutex_init(&cm32181->lock);
indio_dev->dev.parent = &client->dev; indio_dev->dev.parent = dev;
indio_dev->channels = cm32181_channels; indio_dev->channels = cm32181_channels;
indio_dev->num_channels = ARRAY_SIZE(cm32181_channels); indio_dev->num_channels = ARRAY_SIZE(cm32181_channels);
indio_dev->info = &cm32181_info; indio_dev->info = &cm32181_info;
indio_dev->name = dev_name(&client->dev); indio_dev->name = dev_name(dev);
indio_dev->modes = INDIO_DIRECT_MODE; indio_dev->modes = INDIO_DIRECT_MODE;
ret = cm32181_reg_init(cm32181); ret = cm32181_reg_init(cm32181);
if (ret) { if (ret) {
dev_err(&client->dev, dev_err(dev, "%s: register init failed\n", __func__);
"%s: register init failed\n",
__func__);
return ret; return ret;
} }
ret = devm_iio_device_register(&client->dev, indio_dev); ret = devm_iio_device_register(dev, indio_dev);
if (ret) { if (ret) {
dev_err(&client->dev, dev_err(dev, "%s: regist device failed\n", __func__);
"%s: regist device failed\n",
__func__);
return ret; return ret;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment