mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-26 06:04:14 +08:00
Input: tm2-touchkey - add vddio regulator
The Samsung touchkey controllers are often used with external pull-up for the interrupt line and the I2C lines, so we might need to enable a regulator to bring the lines into usable state. Otherwise, this might cause spurious interrupts and reading from I2C will fail. Implement support for a "vddio-supply" that is enabled by the tm2-touchkey driver so that the regulator gets enabled when needed. Signed-off-by: Stephan Gerhold <stephan@gerhold.net> Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Link: https://lore.kernel.org/r/20201203131242.44397-3-stephan@gerhold.net Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
This commit is contained in:
parent
3e730ec11d
commit
7002932325
@ -48,7 +48,7 @@ struct tm2_touchkey_data {
|
||||
struct input_dev *input_dev;
|
||||
struct led_classdev led_dev;
|
||||
struct regulator *vdd;
|
||||
struct regulator_bulk_data regulators[2];
|
||||
struct regulator_bulk_data regulators[3];
|
||||
const struct touchkey_variant *variant;
|
||||
u32 keycodes[4];
|
||||
int num_keycodes;
|
||||
@ -204,6 +204,7 @@ static int tm2_touchkey_probe(struct i2c_client *client,
|
||||
|
||||
touchkey->regulators[0].supply = "vcc";
|
||||
touchkey->regulators[1].supply = "vdd";
|
||||
touchkey->regulators[2].supply = "vddio";
|
||||
error = devm_regulator_bulk_get(&client->dev,
|
||||
ARRAY_SIZE(touchkey->regulators),
|
||||
touchkey->regulators);
|
||||
|
Loading…
Reference in New Issue
Block a user