RE: [PATCH v1] Input: elants_i2c: Add Elan touchscreen support

From: ELAN ååé
Date: Thu Nov 20 2014 - 20:17:00 EST


Hi Dmitry:


> -----Original Message-----
> From: 'Dmitry Torokhov' [mailto:dmitry.torokhov@xxxxxxxxx]
> Sent: Friday, November 21, 2014 1:52 AM
> To: ELAN ååé
> Cc: 'Oliver Neukum'; linux-kernel@xxxxxxxxxxxxxxx; linux-input@xxxxxxxxxxxxxxx;
> 'Vincent Wang'; 'Jeff Chuang'; 'Benson Leung'; 'Benjamin Tissoires'; 'Henrik
> Rydberg'; 'David Herrmann'
> Subject: Re: [PATCH v1] Input: elants_i2c: Add Elan touchscreen support
>
> On Thu, Nov 20, 2014 at 08:25:15PM +0800, ELAN ååé wrote:
> >
> > Hi Oliver:
> >
> > -----Original Message-----
> > From: Oliver Neukum [mailto:oneukum@xxxxxxx]
> > Sent: Thursday, November 20, 2014 6:32 PM
> > To: Dmitry Torokhov
> > Cc: scott; linux-kernel@xxxxxxxxxxxxxxx; linux-input@xxxxxxxxxxxxxxx;
> > Vincent Wang; Jeff Chuang; Benson Leung; Benjamin Tissoires; Henrik
> > Rydberg; David Herrmann
> > Subject: Re: [PATCH v1] Input: elants_i2c: Add Elan touchscreen
> > support
> >
> >
> >
> > > +static int elants_i2c_sw_reset(struct i2c_client *client) {
> > > + const u8 soft_rst_cmd[] = { 0x77, 0x77, 0x77, 0x77 };
> > > + int error;
> > > +
> > > + error = elants_i2c_send(client, soft_rst_cmd,
> > > + sizeof(soft_rst_cmd));
> > > + if (error) {
> > > + dev_err(&client->dev, "software reset failed: %d\n",
> > > error);
> > > + return error;
> > > + }
> > > +
> > > + /*
> > > + * We should wait at least 10 msec (but no more than 40)
> > > before
> > > + * sending fastboot or IAP command to the device.
> > > + */
> > > + msleep(30);
> >
> > If timing is critical in both ways, you should take our guarantee if sufficient
> sleep. I suggest you sleep 11msecs.
> >
> > Sorry, this is our firmware tricky but it should be sleep longer than 30ms.
> Actually 70ms.
> > (Dmitry, I need to modify this delay time to 70ms. Sorry for the changed over
> and over again;
> > because we consider big sensor solution which need to use more ICs
> > and need more longer delay)
> >
>
> Wait, before you said that upper bound is critical, otherwise the device will
> ignore the next command and will not enter IAP mode. So what will happen if
> we increase the wait to 70 msecs and use the driver with smaller sensors?
>

I think the timeout(40ms) was wrong information. (We do have that, but we will no longer use it on Chrome projects)
As we encountered some problem on Chrome project of big sensor solution, and we already have resolved by modify bootcode timeout value.

Precisely speaking, the 40ms bootcode is special solution for specific project, and general solution is the 100ms bootcode.
So we have replaced 40ms bootcode with 100ms bootcode. Thatâs what our firmware engineer told me.


Thanks.
--
Scott

> Thanks.
>
> --
> Dmitry

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/