[PATCH v2 3/3] iio: light: vcnl4000: move client->dev in probe into a variable

Erikas Bitovtas posted 3 patches 3 weeks, 5 days ago
There is a newer version of this series
[PATCH v2 3/3] iio: light: vcnl4000: move client->dev in probe into a variable
Posted by Erikas Bitovtas 3 weeks, 5 days ago
Move client->dev into a variable of its own and replace all instances of
client->dev being used by it.

Signed-off-by: Erikas Bitovtas <xerikasxx@gmail.com>
---
 drivers/iio/light/vcnl4000.c | 27 ++++++++++++++-------------
 1 file changed, 14 insertions(+), 13 deletions(-)

diff --git a/drivers/iio/light/vcnl4000.c b/drivers/iio/light/vcnl4000.c
index 04bde498aec4..36a3d8075eb3 100644
--- a/drivers/iio/light/vcnl4000.c
+++ b/drivers/iio/light/vcnl4000.c
@@ -1987,9 +1987,10 @@ static int vcnl4000_probe(struct i2c_client *client)
 	const char * const regulator_names[] = { "vdd", "vddio", "vled" };
 	struct vcnl4000_data *data;
 	struct iio_dev *indio_dev;
+	struct device *dev = &client->dev;
 	int ret;
 
-	indio_dev = devm_iio_device_alloc(&client->dev, sizeof(*data));
+	indio_dev = devm_iio_device_alloc(dev, sizeof(*data));
 	if (!indio_dev)
 		return -ENOMEM;
 
@@ -1999,7 +2000,7 @@ static int vcnl4000_probe(struct i2c_client *client)
 	data->id = id->driver_data;
 	data->chip_spec = &vcnl4000_chip_spec_cfg[data->id];
 
-	ret = devm_regulator_bulk_get_enable(&client->dev,
+	ret = devm_regulator_bulk_get_enable(dev,
 				      ARRAY_SIZE(regulator_names),
 				      regulator_names);
 	if (ret < 0)
@@ -2011,10 +2012,10 @@ static int vcnl4000_probe(struct i2c_client *client)
 	if (ret < 0)
 		return ret;
 
-	dev_dbg(&client->dev, "%s Ambient light/proximity sensor, Rev: %02x\n",
+	dev_dbg(dev, "%s Ambient light/proximity sensor, Rev: %02x\n",
 		data->chip_spec->prod, data->rev);
 
-	if (device_property_read_u32(&client->dev, "proximity-near-level",
+	if (device_property_read_u32(dev, "proximity-near-level",
 				     &data->near_level))
 		data->near_level = 0;
 
@@ -2026,26 +2027,26 @@ static int vcnl4000_probe(struct i2c_client *client)
 
 	if (data->chip_spec->trig_buffer_func &&
 	    data->chip_spec->buffer_setup_ops) {
-		ret = devm_iio_triggered_buffer_setup(&client->dev, indio_dev,
+		ret = devm_iio_triggered_buffer_setup(dev, indio_dev,
 						      NULL,
 						      data->chip_spec->trig_buffer_func,
 						      data->chip_spec->buffer_setup_ops);
 		if (ret < 0) {
-			dev_err(&client->dev,
+			dev_err(dev,
 				"unable to setup iio triggered buffer\n");
 			return ret;
 		}
 	}
 
 	if (client->irq && data->chip_spec->irq_thread) {
-		ret = devm_request_threaded_irq(&client->dev, client->irq,
-						NULL, data->chip_spec->irq_thread,
+		ret = devm_request_threaded_irq(dev, client->irq, NULL,
+						data->chip_spec->irq_thread,
 						IRQF_TRIGGER_FALLING |
 						IRQF_ONESHOT,
 						"vcnl4000_irq",
 						indio_dev);
 		if (ret < 0) {
-			dev_err(&client->dev, "irq request failed\n");
+			dev_err(dev, "irq request failed\n");
 			return ret;
 		}
 
@@ -2054,7 +2055,7 @@ static int vcnl4000_probe(struct i2c_client *client)
 			return ret;
 	}
 
-	ret = pm_runtime_set_active(&client->dev);
+	ret = pm_runtime_set_active(dev);
 	if (ret < 0)
 		goto fail_poweroff;
 
@@ -2062,9 +2063,9 @@ static int vcnl4000_probe(struct i2c_client *client)
 	if (ret < 0)
 		goto fail_poweroff;
 
-	pm_runtime_enable(&client->dev);
-	pm_runtime_set_autosuspend_delay(&client->dev, VCNL4000_SLEEP_DELAY_MS);
-	pm_runtime_use_autosuspend(&client->dev);
+	pm_runtime_enable(dev);
+	pm_runtime_set_autosuspend_delay(dev, VCNL4000_SLEEP_DELAY_MS);
+	pm_runtime_use_autosuspend(dev);
 
 	return 0;
 fail_poweroff:

-- 
2.53.0
Re: [PATCH v2 3/3] iio: light: vcnl4000: move client->dev in probe into a variable
Posted by Andy Shevchenko 3 weeks, 5 days ago
On Thu, Mar 12, 2026 at 01:53:14PM +0200, Erikas Bitovtas wrote:
> Move client->dev into a variable of its own and replace all instances of
> client->dev being used by it.

...

> +	struct device *dev = &client->dev;

This should be done in the previous patch to reduce churn...


> -	ret = devm_regulator_bulk_get_enable(&client->dev,
> +	ret = devm_regulator_bulk_get_enable(dev,

...like this one.

>  				      ARRAY_SIZE(regulator_names),
>  				      regulator_names);

...

> +		ret = devm_request_threaded_irq(dev, client->irq, NULL,
> +						data->chip_spec->irq_thread,
>  						IRQF_TRIGGER_FALLING |
>  						IRQF_ONESHOT,
>  						"vcnl4000_irq",
>  						indio_dev);

>  		if (ret < 0) {
> -			dev_err(&client->dev, "irq request failed\n");
> +			dev_err(dev, "irq request failed\n");
>  			return ret;
>  		}

This should be another patch to remove the dup message completely before doing
struct device conversion.

-- 
With Best Regards,
Andy Shevchenko