Message ID | 1ed8351c2cb4911fcda21b97f7a7b089e955c301.1666357434.git.mazziesaccount@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Delegated to: | Neil Armstrong |
Headers | show |
Series | Use devm helpers for regulator get and enable | expand |
On 10/21/22 16:18, Matti Vaittinen wrote: > Simplify using devm_regulator_bulk_get_enable() > > Signed-off-by: Matti Vaittinen <mazziesaccount@gmail.com> > Reviewed-by: Robert Foss <robert.foss@linaro.org> Robert, I did slightly modify the return from probe when using the dev_err_probe(). I still decided to keep your RBT - please let me know if you disagree. Eg, this: > - if (ret < 0) { > - dev_err_probe(dev, ret, "Failed to enable supplies"); > - return ret; > - } was converted to: > if (ret < 0) > + return dev_err_probe(dev, ret, "Failed to enable supplies"); Yours -- Matti
On Fri, 21 Oct 2022 at 15:24, Matti Vaittinen <mazziesaccount@gmail.com> wrote: > > On 10/21/22 16:18, Matti Vaittinen wrote: > > Simplify using devm_regulator_bulk_get_enable() > > > > Signed-off-by: Matti Vaittinen <mazziesaccount@gmail.com> > > Reviewed-by: Robert Foss <robert.foss@linaro.org> > > Robert, I did slightly modify the return from probe when using the > dev_err_probe(). I still decided to keep your RBT - please let me know > if you disagree. Not a problem. In fact, feel free to upgrade it to an acked-by, to simplify merging this series. Acked-by: Robert Foss <robert.foss@linaro.org> > > Eg, this: > > - if (ret < 0) { > > - dev_err_probe(dev, ret, "Failed to enable supplies"); > > - return ret; > > - } > > was converted to: > > if (ret < 0) > > + return dev_err_probe(dev, ret, "Failed to enable supplies"); > > Yours > -- Matti > > -- > Matti Vaittinen > Linux kernel developer at ROHM Semiconductors > Oulu Finland > > ~~ When things go utterly wrong vim users can always type :help! ~~ >
diff --git a/drivers/gpu/drm/bridge/sii902x.c b/drivers/gpu/drm/bridge/sii902x.c index 878fb7d3732b..f6e8b401069b 100644 --- a/drivers/gpu/drm/bridge/sii902x.c +++ b/drivers/gpu/drm/bridge/sii902x.c @@ -171,7 +171,6 @@ struct sii902x { struct drm_connector connector; struct gpio_desc *reset_gpio; struct i2c_mux_core *i2cmux; - struct regulator_bulk_data supplies[2]; bool sink_is_hdmi; /* * Mutex protects audio and video functions from interfering @@ -1072,6 +1071,7 @@ static int sii902x_probe(struct i2c_client *client, struct device *dev = &client->dev; struct device_node *endpoint; struct sii902x *sii902x; + static const char * const supplies[] = {"iovcc", "cvcc12"}; int ret; ret = i2c_check_functionality(client->adapter, @@ -1122,27 +1122,11 @@ static int sii902x_probe(struct i2c_client *client, mutex_init(&sii902x->mutex); - sii902x->supplies[0].supply = "iovcc"; - sii902x->supplies[1].supply = "cvcc12"; - ret = devm_regulator_bulk_get(dev, ARRAY_SIZE(sii902x->supplies), - sii902x->supplies); + ret = devm_regulator_bulk_get_enable(dev, ARRAY_SIZE(supplies), supplies); if (ret < 0) - return ret; - - ret = regulator_bulk_enable(ARRAY_SIZE(sii902x->supplies), - sii902x->supplies); - if (ret < 0) { - dev_err_probe(dev, ret, "Failed to enable supplies"); - return ret; - } + return dev_err_probe(dev, ret, "Failed to enable supplies"); - ret = sii902x_init(sii902x); - if (ret < 0) { - regulator_bulk_disable(ARRAY_SIZE(sii902x->supplies), - sii902x->supplies); - } - - return ret; + return sii902x_init(sii902x); } static void sii902x_remove(struct i2c_client *client) @@ -1152,8 +1136,6 @@ static void sii902x_remove(struct i2c_client *client) i2c_mux_del_adapters(sii902x->i2cmux); drm_bridge_remove(&sii902x->bridge); - regulator_bulk_disable(ARRAY_SIZE(sii902x->supplies), - sii902x->supplies); } static const struct of_device_id sii902x_dt_ids[] = {