<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-toradex.git/drivers/input/mouse/elan_i2c_smbus.c, branch v4.14</title>
<subtitle>Linux kernel for Apalis and Colibri modules</subtitle>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/'/>
<entry>
<title>Input: elan_i2c - support touchpads with two physical buttons</title>
<updated>2017-08-19T00:07:02+00:00</updated>
<author>
<name>KT Liao</name>
<email>kt.liao@emc.com.tw</email>
</author>
<published>2017-08-18T23:49:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=991368818df4a50f50d2ce673b308f946ed635a6'/>
<id>991368818df4a50f50d2ce673b308f946ed635a6</id>
<content type='text'>
Elan touchpads on Asus ROG G752xx series laptops have 2 physical buttons.
Luckily we can query the touchpad to see if it is a clickpad variant and
adjust the behavior accordingly.

Signed-off-by: KT Liao &lt;kt.liao@emc.com.tw&gt;
Tested-by: Maxime Bellengé &lt;maxime.bellenge@gmail.com&gt;
Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Elan touchpads on Asus ROG G752xx series laptops have 2 physical buttons.
Luckily we can query the touchpad to see if it is a clickpad variant and
adjust the behavior accordingly.

Signed-off-by: KT Liao &lt;kt.liao@emc.com.tw&gt;
Tested-by: Maxime Bellengé &lt;maxime.bellenge@gmail.com&gt;
Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>Input: elan_i2c - add support for fetching chip type on newer hardware</title>
<updated>2017-05-12T00:44:23+00:00</updated>
<author>
<name>KT Liao</name>
<email>ktalex.liao@gmail.com</email>
</author>
<published>2016-11-28T04:59:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=a2eaf299d134cfe780c68c771f88d81516c1e70d'/>
<id>a2eaf299d134cfe780c68c771f88d81516c1e70d</id>
<content type='text'>
Newer Elantech hardware requires different way of fetching chip type and
version data.

Signed-off-by: KT Liao &lt;kt.liao@emc.com.tw&gt;
Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Newer Elantech hardware requires different way of fetching chip type and
version data.

Signed-off-by: KT Liao &lt;kt.liao@emc.com.tw&gt;
Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Input: elan_i2c - fix return tests of i2c_smbus_read_block_data()</title>
<updated>2016-10-03T23:41:00+00:00</updated>
<author>
<name>Benjamin Tissoires</name>
<email>benjamin.tissoires@redhat.com</email>
</author>
<published>2016-09-30T23:42:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=265d426d7470d53e900379960eef5b4482125089'/>
<id>265d426d7470d53e900379960eef5b4482125089</id>
<content type='text'>
i2c_smbus_read_block_data() returns negative errno else the number of
data bytes in the slave's response.

Checking for error not null means the function always fails if the device
answers properly.

So given that we read 3 bytes and access those, better check that we
actually read those 3 bytes.

Signed-off-by: Benjamin Tissoires &lt;benjamin.tissoires@redhat.com&gt;
Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
i2c_smbus_read_block_data() returns negative errno else the number of
data bytes in the slave's response.

Checking for error not null means the function always fails if the device
answers properly.

So given that we read 3 bytes and access those, better check that we
actually read those 3 bytes.

Signed-off-by: Benjamin Tissoires &lt;benjamin.tissoires@redhat.com&gt;
Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>Input: elan_i2c - expand maximum product_id form 0xFF to 0xFFFF</title>
<updated>2015-09-21T16:32:40+00:00</updated>
<author>
<name>Duson Lin</name>
<email>dusonlin@emc.com.tw</email>
</author>
<published>2015-09-21T16:26:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=ed75a14eb554995c522a3b861d4c86a7eddb2ad7'/>
<id>ed75a14eb554995c522a3b861d4c86a7eddb2ad7</id>
<content type='text'>
In order to support more projects in the future, we expand the
maximum product_id value form 0xFF to 0xFFFF.

Signed-off by: Duson Lin &lt;dusonlin@emc.com.tw&gt;
Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
In order to support more projects in the future, we expand the
maximum product_id value form 0xFF to 0xFFFF.

Signed-off by: Duson Lin &lt;dusonlin@emc.com.tw&gt;
Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>Input: elan_i2c - add support for multi IC type and iap format</title>
<updated>2015-06-09T00:12:24+00:00</updated>
<author>
<name>Duson Lin</name>
<email>dusonlin@emc.com.tw</email>
</author>
<published>2015-06-08T23:39:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=12018ac3d679d6a3c6c738ac805797fe4dd43912'/>
<id>12018ac3d679d6a3c6c738ac805797fe4dd43912</id>
<content type='text'>
In order to support multiple IC types for i2c/smbus protocol, add get ic
type command and use this data when checking firmware page count and
signature address.

Signed-off-by: Duson Lin &lt;dusonlin@emc.com.tw&gt;
Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
In order to support multiple IC types for i2c/smbus protocol, add get ic
type command and use this data when checking firmware page count and
signature address.

Signed-off-by: Duson Lin &lt;dusonlin@emc.com.tw&gt;
Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Input: elan_i2c - fix calculating number of x and y traces.</title>
<updated>2015-04-20T17:30:09+00:00</updated>
<author>
<name>Duson Lin</name>
<email>dusonlin@emc.com.tw</email>
</author>
<published>2015-04-20T17:19:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=9f423801c9e849df56b37833df895685c9d8a940'/>
<id>9f423801c9e849df56b37833df895685c9d8a940</id>
<content type='text'>
According to Elan's firmware engineers we should not be subtracting 1 form
the raw number of x and y traces so that the pitch size is correct. For
example, if the touchpad x resolution is 2800 and x trace number is 20,
the pitch size of x should be 2800/20 = 140, not 2800/19 = 147.36.

Signed-off-by: Duson Lin &lt;dusonlin@emc.com.tw&gt;
Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
According to Elan's firmware engineers we should not be subtracting 1 form
the raw number of x and y traces so that the pitch size is correct. For
example, if the touchpad x resolution is 2800 and x trace number is 20,
the pitch size of x should be 2800/20 = 140, not 2800/19 = 147.36.

Signed-off-by: Duson Lin &lt;dusonlin@emc.com.tw&gt;
Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Input: elan_i2c - adjust for newer firmware pressure reporting</title>
<updated>2015-04-14T17:21:42+00:00</updated>
<author>
<name>duson</name>
<email>dusonlin@emc.com.tw</email>
</author>
<published>2015-04-12T23:01:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=b9bced0eecd77067f4659b90d5ab2fb32485c3e2'/>
<id>b9bced0eecd77067f4659b90d5ab2fb32485c3e2</id>
<content type='text'>
Get pressure format flag from firmware to check if we need to normalize
pressure data before reporting it.

Signed-off-by: Duson Lin &lt;dusonlin@emc.com.tw&gt;
Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Get pressure format flag from firmware to check if we need to normalize
pressure data before reporting it.

Signed-off-by: Duson Lin &lt;dusonlin@emc.com.tw&gt;
Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Input: elan_i2c - fix wrong %p extension</title>
<updated>2015-02-06T23:32:18+00:00</updated>
<author>
<name>Rasmus Villemoes</name>
<email>linux@rasmusvillemoes.dk</email>
</author>
<published>2015-02-06T16:39:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=98a4a59ee31a12105a2b84f5b8b515ac2cb208ef'/>
<id>98a4a59ee31a12105a2b84f5b8b515ac2cb208ef</id>
<content type='text'>
There's no %px extension. From the context I think the intention was to
dump the five bytes which were not as expected, and for that one should use
%ph.

Signed-off-by: Rasmus Villemoes &lt;linux@rasmusvillemoes.dk&gt;
Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
There's no %px extension. From the context I think the intention was to
dump the five bytes which were not as expected, and for that one should use
%ph.

Signed-off-by: Rasmus Villemoes &lt;linux@rasmusvillemoes.dk&gt;
Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Input: elan_i2c - verify firmware signature applying it</title>
<updated>2015-01-23T17:44:21+00:00</updated>
<author>
<name>Duson Lin</name>
<email>dusonlin@emc.com.tw</email>
</author>
<published>2015-01-23T17:35:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=bb03bf3f8427a38112819061fc8688999ba02f67'/>
<id>bb03bf3f8427a38112819061fc8688999ba02f67</id>
<content type='text'>
To allow for different firmware sizes let's replace the original size check
with with checking the signature in the firmware data.

Signed-off-by: Duson Lin &lt;dusonlin@emc.com.tw&gt;
Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
To allow for different firmware sizes let's replace the original size check
with with checking the signature in the firmware data.

Signed-off-by: Duson Lin &lt;dusonlin@emc.com.tw&gt;
Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Input: add driver for Elan I2C/SMbus touchpad</title>
<updated>2014-10-24T20:54:24+00:00</updated>
<author>
<name>Duson Lin</name>
<email>dusonlin@emc.com.tw</email>
</author>
<published>2014-10-03T20:24:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=6696777c6506fa52b2a0282121195843ed855be6'/>
<id>6696777c6506fa52b2a0282121195843ed855be6</id>
<content type='text'>
This driver supports Elan I2C/SMbus touchpads found in some laptops and
also in many Chromebooks.

Signed-off-by: Duson Lin &lt;dusonlin@emc.com.tw&gt;
Reviewed-by: Benson Leung &lt;bleung@chromium.org&gt;
Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This driver supports Elan I2C/SMbus touchpads found in some laptops and
also in many Chromebooks.

Signed-off-by: Duson Lin &lt;dusonlin@emc.com.tw&gt;
Reviewed-by: Benson Leung &lt;bleung@chromium.org&gt;
Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
