[1/6] Input: elantech - Add the pattern for firmware into elantech_device_info structure
diff mbox series

Message ID 000001d5abdb$618632f0$249298d0$@emc.com.tw
State New
Headers show
Series
  • [1/6] Input: elantech - Add the pattern for firmware into elantech_device_info structure
Related show

Commit Message

Dave Wang Dec. 6, 2019, 2:17 a.m. UTC
Add the conditional expression to distinguish different patterns
regarding 0, 1, 2. Different pattern has 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(+)

Patch
diff mbox series

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;