From: Erikas Bitovtas Date: Tue, 14 Apr 2026 12:37:21 +0000 (+0300) Subject: iio: light: vcnl4000: make pm_runtime_enable() device-managed X-Git-Tag: v7.2-rc1~67^2~5^2~213 X-Git-Url: http://git.ipfire.org/gitweb/index.cgi?a=commitdiff_plain;h=de1839edfe36642328ed7b3fd49b948a4aca03c8;p=thirdparty%2Fkernel%2Flinux.git iio: light: vcnl4000: make pm_runtime_enable() device-managed Replace pm_runtime_set_active() and pm_runtime_enable() with their device-managed counterpart to remove them from vcnl4000_remove(). Reviewed-by: Andy Shevchenko Signed-off-by: Erikas Bitovtas Signed-off-by: Jonathan Cameron --- diff --git a/drivers/iio/light/vcnl4000.c b/drivers/iio/light/vcnl4000.c index 1e636e6f51da3..3d0287799ba51 100644 --- a/drivers/iio/light/vcnl4000.c +++ b/drivers/iio/light/vcnl4000.c @@ -2055,23 +2055,18 @@ static int vcnl4000_probe(struct i2c_client *client) return ret; } - ret = pm_runtime_set_active(dev); - if (ret < 0) + ret = devm_pm_runtime_set_active_enabled(dev); + if (ret) return ret; ret = iio_device_register(indio_dev); if (ret < 0) - goto fail_register; + return ret; - pm_runtime_enable(dev); pm_runtime_set_autosuspend_delay(dev, VCNL4000_SLEEP_DELAY_MS); pm_runtime_use_autosuspend(dev); return 0; - -fail_register: - pm_runtime_set_suspended(dev); - return ret; } static const struct of_device_id vcnl_4000_of_match[] = { @@ -2091,10 +2086,7 @@ static void vcnl4000_remove(struct i2c_client *client) { struct iio_dev *indio_dev = i2c_get_clientdata(client); - pm_runtime_dont_use_autosuspend(&client->dev); - pm_runtime_disable(&client->dev); iio_device_unregister(indio_dev); - pm_runtime_set_suspended(&client->dev); } static int vcnl4000_runtime_suspend(struct device *dev)