Re: [PATCH] input: touchscreen: add delay time to device power on

From: Crag Wang
Date: Wed Jul 10 2019 - 04:58:56 EST


Adding more

On Wed, Jul 10, 2019 at 10:59 AM <crag0715@xxxxxxxxx> wrote:
>
> From: "Crag.Wang" <crag.wang@xxxxxxxx>
>
> Delay time for MELFAS MIP4 controller is required at power on stage
> regardless the existence of GPIO consumer lookup from devicetree or
> ACPI device table.
>
> There is an issue if GPIO ce is undefined in the ACPI results no delay
> time for deive power on, the controller ended up in an abnormal state.
>
> TEST=echo i2c-MLFS0000:00 > /sys/bus/i2c/drivers/mip4_ts/unbind
> verify the touch function is off
>
> echo i2c-MLFS0000:00 > /sys/bus/i2c/drivers/mip4_ts/bind
> verify the touch function is on
>
> Signed-off-by: Crag.Wang <crag.wang@xxxxxxxx>
> ---
> drivers/input/touchscreen/melfas_mip4.c | 7 +++----
> 1 file changed, 3 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/input/touchscreen/melfas_mip4.c b/drivers/input/touchscreen/melfas_mip4.c
> index 430a2bc5f7ca..8e803658fb43 100644
> --- a/drivers/input/touchscreen/melfas_mip4.c
> +++ b/drivers/input/touchscreen/melfas_mip4.c
> @@ -374,12 +374,11 @@ static int mip4_query_device(struct mip4_ts *ts)
>
> static int mip4_power_on(struct mip4_ts *ts)
> {
> - if (ts->gpio_ce) {
> + if (ts->gpio_ce)
> gpiod_set_value_cansleep(ts->gpio_ce, 1);
>
> - /* Booting delay : 200~300ms */
> - usleep_range(200 * 1000, 300 * 1000);
> - }
> + /* Booting delay : 200~300ms */
> + usleep_range(200 * 1000, 300 * 1000);
>
> return 0;
> }
> --
> 2.20.1
>