From b29e74c8c1fa98fc87ba0004f6c4a5c80d6eeeda Mon Sep 17 00:00:00 2001 From: Konstantin Makariev Date: Wed, 10 Jan 2018 16:29:06 -0600 Subject: [PATCH] input: synaptics_mmi: avoid put for regulators Regulators requested with devm_regulator_get, regulator_put is done automatically as part of resources release procedure. Change-Id: I8940ca3adf5a3953b58d313edd95cc8a264bd37a Signed-off-by: Konstantin Makariev Reviewed-on: https://gerrit.mot.com/1116100 SLTApproved: Slta Waiver SME-Granted: SME Approvals Granted Tested-by: Jira Key Reviewed-by: Konstantin Makariev Submit-Approved: Jira Key --- .../synaptics_mmi/synaptics_dsx_i2c.c | 17 ++++------------- 1 file changed, 4 insertions(+), 13 deletions(-) diff --git a/drivers/input/touchscreen/synaptics_mmi/synaptics_dsx_i2c.c b/drivers/input/touchscreen/synaptics_mmi/synaptics_dsx_i2c.c index 5a7be6e677a0..1fbf639ac1c9 100644 --- a/drivers/input/touchscreen/synaptics_mmi/synaptics_dsx_i2c.c +++ b/drivers/input/touchscreen/synaptics_mmi/synaptics_dsx_i2c.c @@ -7237,7 +7237,6 @@ static int synaptics_rmi4_probe(struct i2c_client *client, if (!IS_ERR(rmi4_data->vdd_quirk)) { retval = regulator_enable(rmi4_data->vdd_quirk); if (retval) { - regulator_put(rmi4_data->vdd_quirk); dev_err(&client->dev, "Failed to enable vdd-quirk\n"); goto err_vdd_quirk; } @@ -7395,16 +7394,12 @@ err_sysfs: #endif err_query_device: - if (!IS_ERR(rmi4_data->vdd_quirk)) { + if (!IS_ERR(rmi4_data->vdd_quirk)) regulator_disable(rmi4_data->vdd_quirk); - regulator_put(rmi4_data->vdd_quirk); - } err_vdd_quirk: - if (platform_data->regulator_en) { + if (platform_data->regulator_en) regulator_disable(rmi4_data->regulator); - regulator_put(rmi4_data->regulator); - } err_touch_vdd: synaptics_rmi4_cleanup(rmi4_data); @@ -7466,15 +7461,11 @@ static int synaptics_rmi4_remove(struct i2c_client *client) else input_free_device(rmi4_data->input_dev); - if (!IS_ERR(rmi4_data->vdd_quirk)) { + if (!IS_ERR(rmi4_data->vdd_quirk)) regulator_disable(rmi4_data->vdd_quirk); - regulator_put(rmi4_data->vdd_quirk); - } - if (rmi4_data->board->regulator_en) { + if (rmi4_data->board->regulator_en) regulator_disable(rmi4_data->regulator); - regulator_put(rmi4_data->regulator); - } #if defined(CONFIG_MMI_PANEL_NOTIFICATIONS) mmi_panel_unregister_notifier(&rmi4_data->panel_nb);