Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c894e4be authored by Sarada Prasanna Garnayak's avatar Sarada Prasanna Garnayak
Browse files

input: synaptics_i2c_rmi4: Turn off the reset gpio before freeing it.



Set the direction of reset GPIO to input before freeing it. This
eliminates any leakage current which may be there.

CRs-Fixed: 553847
Change-Id: Ib439de058326bf0d14d6e18b0a6198b4f682daf8
Signed-off-by: default avatarSarada Prasanna Garnayak <c_sgarna@codeaurora.org>
parent 76784e6b
Loading
Loading
Loading
Loading
+15 −1
Original line number Diff line number Diff line
@@ -2662,9 +2662,23 @@ static int synaptics_rmi4_gpio_configure(struct synaptics_rmi4_data *rmi4_data,
		if (rmi4_data->board->disable_gpios) {
			if (gpio_is_valid(rmi4_data->board->irq_gpio))
				gpio_free(rmi4_data->board->irq_gpio);
			if (gpio_is_valid(rmi4_data->board->reset_gpio))
			if (gpio_is_valid(rmi4_data->board->reset_gpio)) {
				/*
				 * This is intended to save leakage current
				 * only. Even if the call(gpio_direction_input)
				 * fails, only leakage current will be more but
				 * functionality will not be affected.
				 */
				retval = gpio_direction_input(rmi4_data->
							board->reset_gpio);
				if (retval) {
					dev_err(&rmi4_data->i2c_client->dev,
					"unable to set direction for gpio "
					"[%d]\n", rmi4_data->board->irq_gpio);
				}
				gpio_free(rmi4_data->board->reset_gpio);
			}
		}

		return 0;
	}