summaryrefslogtreecommitdiff
path: root/driver
diff options
context:
space:
mode:
Diffstat (limited to 'driver')
-rw-r--r--driver/touchpad_elan.c1
-rw-r--r--driver/touchpad_st.c4
2 files changed, 4 insertions, 1 deletions
diff --git a/driver/touchpad_elan.c b/driver/touchpad_elan.c
index 9cc399ae6e..8988a99cf0 100644
--- a/driver/touchpad_elan.c
+++ b/driver/touchpad_elan.c
@@ -237,6 +237,7 @@ static int elan_tp_read_report(void)
height = MIN(4095, height * elan_tp_params.width_y);
pressure = MIN(1023, pressure);
+ report.finger[ri].confidence = 1;
report.finger[ri].tip = 1;
report.finger[ri].inrange = 1;
report.finger[ri].id = i;
diff --git a/driver/touchpad_st.c b/driver/touchpad_st.c
index 340923e587..7384e33af9 100644
--- a/driver/touchpad_st.c
+++ b/driver/touchpad_st.c
@@ -99,6 +99,8 @@ static int st_tp_parse_finger(struct usb_hid_touchpad_report *report,
switch (event->evt_id) {
case ST_TP_EVENT_ID_ENTER_POINTER:
case ST_TP_EVENT_ID_MOTION_POINTER:
+ /* Pressure == 255 is a palm. */
+ report->finger[i].confidence = (event->finger.z < 255);
report->finger[i].tip = 1;
report->finger[i].inrange = 1;
report->finger[i].id = event->finger.touch_id;
@@ -145,7 +147,7 @@ static int st_tp_write_hid_report(void)
return ret;
memset(&report, 0, sizeof(report));
- report.id = 0x1;
+ report.id = REPORT_ID_TOUCHPAD;
num_finger = 0;
for (i = 0; i < ARRAY_SIZE(rx_buf.events); i++) {