Thread (10 messages) 10 messages, 3 authors, 2014-11-21

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

From: ELAN 劉嘉駿 <hidden>
Date: 2014-11-21 01:16:56
Also in: lkml

Hi Dmitry:

-----Original Message-----
From: 'Dmitry Torokhov' [mailto:dmitry.torokhov@gmail.com]
Sent: Friday, November 21, 2014 1:52 AM
To: ELAN 劉嘉駿
Cc: 'Oliver Neukum'; linux-kernel@vger.kernel.org; linux-input@vger.kernel.org;
'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:
quoted
Hi Oliver:

-----Original Message-----
From: Oliver Neukum [mailto:oneukum@suse.de]
Sent: Thursday, November 20, 2014 6:32 PM
To: Dmitry Torokhov
Cc: scott; linux-kernel@vger.kernel.org; linux-input@vger.kernel.org;
Vincent Wang; Jeff Chuang; Benson Leung; Benjamin Tissoires; Henrik
Rydberg; David Herrmann
Subject: Re: [PATCH v1] Input: elants_i2c: Add Elan touchscreen
support


quoted
+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.
quoted
Sorry, this is our firmware tricky but it should be sleep longer than 30ms.
Actually 70ms.
quoted
(Dmitry, I need to modify this delay time to 70ms. Sorry for the changed over
and over again;
quoted
	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-input" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help