diff mbox series

Input: elantech - Add pattern for firmware into elantech_device_info structure

Message ID 20191209022828.30143-1-dave.wang@emc.com.tw (mailing list archive)
State New, archived
Headers show
Series Input: elantech - Add pattern for firmware into elantech_device_info structure | expand

Commit Message

Dave.Wang Dec. 9, 2019, 2:28 a.m. UTC
From: "Dave.Wang" <dave.wang@emc.com.tw>

Add the conditional expression to distinguish different patterns
regarding 0, 1, 2. Different patterns have its own location
for device information.

Signed-off-by: Dave Wang <dave.wang@emc.com.tw>
---
 drivers/input/mouse/elantech.c | 11 +++++++++++
 drivers/input/mouse/elantech.h |  1 +
 2 files changed, 12 insertions(+)
diff mbox series

Patch

diff --git a/drivers/input/mouse/elantech.c b/drivers/input/mouse/elantech.c
index 2d8434b7b623..1f0d914acd78 100644
--- a/drivers/input/mouse/elantech.c
+++ b/drivers/input/mouse/elantech.c
@@ -1557,6 +1557,17 @@  static int elantech_set_properties(struct elantech_device_info *info)
 		}
 	}
 
+	/* Get information pattern for hw_version 4 */
+	if (ver == 15) {
+		if ((info->fw_version & 0x0000ff) == 0x01)
+			info->pattern = 0x01;
+		else if ((info->fw_version & 0x0000ff) == 0x02)
+			info->pattern = 0x02;
+		else
+			info->pattern = 0x00;
+	} else
+		info->pattern = 0x00;
+
 	/* decide which send_cmd we're gonna use early */
 	info->send_cmd = info->hw_version >= 3 ? elantech_send_cmd :
 						 synaptics_send_cmd;
diff --git a/drivers/input/mouse/elantech.h b/drivers/input/mouse/elantech.h
index e0a3e59d4f1b..0aae6a9de8f0 100644
--- a/drivers/input/mouse/elantech.h
+++ b/drivers/input/mouse/elantech.h
@@ -140,6 +140,7 @@  struct elantech_device_info {
 	unsigned char samples[3];
 	unsigned char debug;
 	unsigned char hw_version;
+	unsigned char pattern;
 	unsigned int fw_version;
 	unsigned int x_min;
 	unsigned int y_min;