RE: [PATCH] Input: elants_i2c - return real value of elants_i2c_initialize()
From: Johnny.Chuang
Date: Wed Sep 04 2019 - 05:51:40 EST
Hi Dmitry,
Got it, let it dropped.
Many thanks,
Johnny
-----Original Message-----
From: 'Dmitry Torokhov' [mailto:dmitry.torokhov@xxxxxxxxx]
Sent: Tuesday, September 03, 2019 11:55 PM
To: Johnny.Chuang
Cc: linux-kernel@xxxxxxxxxxxxxxx; linux-input@xxxxxxxxxxxxxxx; 'STRD2-èæå'; 'STRD2-éåæçç'; 'æåç'; 'jeff'
Subject: Re: [PATCH] Input: elants_i2c - return real value of elants_i2c_initialize()
On Tue, Sep 03, 2019 at 10:33:33AM +0800, Johnny.Chuang wrote:
> Hi Dmitry,
>
> Thanks for your explanation.
> If I want to abandon this patch, what's step I need to do?
Absolutely nothing ;) Consider it dropped.
>
> Many thanks,
> Johnny
> -----Original Message-----
> From: 'Dmitry Torokhov' [mailto:dmitry.torokhov@xxxxxxxxx]
> Sent: Friday, August 30, 2019 2:30 AM
> To: Johnny.Chuang
> Cc: linux-kernel@xxxxxxxxxxxxxxx; linux-input@xxxxxxxxxxxxxxx; STRD2-èæå;
> STRD2-éåæçç; 'æåç'; 'jeff'
> Subject: Re: [PATCH] Input: elants_i2c - return real value of
> elants_i2c_initialize()
>
> Hi Johnny,
>
> On Wed, Aug 28, 2019 at 10:33:46AM +0800, Johnny.Chuang wrote:
> > The return value of elants_i2c_initialize() was always 0.
> > It maybe register input device when initialize fail.
>
> We do not want to return error here, because it will abort probe, and then
> we will not be able to initiate firmware flash flow so we can attempt to
> recover the device.
>
> If you want to try you can change the ts->iap_mode before trying to register
> input device, but then you need to be very careful about registering and
> unregistering it later, after flashing or re-flashing firmware.
>
> >
> > Signed-off-by: Johnny Chuang <johnny.chuang@xxxxxxxxxx>
> > ---
> > drivers/input/touchscreen/elants_i2c.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/input/touchscreen/elants_i2c.c
> > b/drivers/input/touchscreen/elants_i2c.c
> > index d4ad24e..9c9816f 100644
> > --- a/drivers/input/touchscreen/elants_i2c.c
> > +++ b/drivers/input/touchscreen/elants_i2c.c
> > @@ -571,7 +571,7 @@ static int elants_i2c_initialize(struct elants_data
> *ts)
> > if (error)
> > ts->iap_mode = ELAN_IAP_RECOVERY;
> >
> > - return 0;
> > + return error;
> > }
> >
> > /*
> > --
> > 2.7.4
> >
>
> Thanks.
>
> --
> Dmitry
>
--
Dmitry