Commit 8f2ef261 authored by Dmitry Torokhov's avatar Dmitry Torokhov

Input: zforce_ts - switch to using devm_regulator_get_enable()

The driver does not actively manage regulator state past probe() time,
so we can use devm_regulator_get_enable() to simplify the code.

Tested-by: Andreas Kemnade <andreas@kemnade.info> # Tolino Shine2HD
Link: https://lore.kernel.org/r/20240824055047.1706392-16-dmitry.torokhov@gmail.comSigned-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
parent 16ff0224
......@@ -107,8 +107,6 @@ struct zforce_ts {
struct touchscreen_properties prop;
char phys[32];
struct regulator *reg_vdd;
struct gpio_desc *gpio_int;
struct gpio_desc *gpio_rst;
......@@ -675,11 +673,7 @@ static void zforce_reset(void *data)
struct zforce_ts *ts = data;
zforce_reset_assert(ts);
udelay(10);
if (!IS_ERR(ts->reg_vdd))
regulator_disable(ts->reg_vdd);
}
static void zforce_ts_parse_legacy_properties(struct zforce_ts *ts)
......@@ -742,16 +736,11 @@ static int zforce_probe(struct i2c_client *client)
"failed to request reset GPIO\n");
}
ts->reg_vdd = devm_regulator_get(&client->dev, "vdd");
error = PTR_ERR_OR_ZERO(ts->gpio_rst);
error = devm_regulator_get_enable(&client->dev, "vdd");
if (error)
return dev_err_probe(&client->dev, error,
"failed to request vdd supply\n");
error = regulator_enable(ts->reg_vdd);
if (error)
return error;
/*
* According to datasheet add 100us grace time after regular
* regulator enable delay.
......
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