From d3b05a38a9da9eab23afc0be05de0b3626b939db Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Sat, 13 May 2023 16:52:11 +0900 Subject: [PATCH] 4.19-stable patches added patches: hid-wacom-set-a-default-resolution-for-older-tablets.patch --- ...default-resolution-for-older-tablets.patch | 48 +++++++++++++++++++ queue-4.19/series | 1 + 2 files changed, 49 insertions(+) create mode 100644 queue-4.19/hid-wacom-set-a-default-resolution-for-older-tablets.patch diff --git a/queue-4.19/hid-wacom-set-a-default-resolution-for-older-tablets.patch b/queue-4.19/hid-wacom-set-a-default-resolution-for-older-tablets.patch new file mode 100644 index 00000000000..8be7a9798ab --- /dev/null +++ b/queue-4.19/hid-wacom-set-a-default-resolution-for-older-tablets.patch @@ -0,0 +1,48 @@ +From 08a46b4190d345544d04ce4fe2e1844b772b8535 Mon Sep 17 00:00:00 2001 +From: Ping Cheng +Date: Sun, 9 Apr 2023 09:42:29 -0700 +Subject: HID: wacom: Set a default resolution for older tablets + +From: Ping Cheng + +commit 08a46b4190d345544d04ce4fe2e1844b772b8535 upstream. + +Some older tablets may not report physical maximum for X/Y +coordinates. Set a default to prevent undefined resolution. + +Signed-off-by: Ping Cheng +Link: https://lore.kernel.org/r/20230409164229.29777-1-ping.cheng@wacom.com +Signed-off-by: Benjamin Tissoires +Signed-off-by: Greg Kroah-Hartman +--- + drivers/hid/wacom_wac.c | 12 ++++++++++-- + 1 file changed, 10 insertions(+), 2 deletions(-) + +--- a/drivers/hid/wacom_wac.c ++++ b/drivers/hid/wacom_wac.c +@@ -1791,6 +1791,7 @@ static void wacom_map_usage(struct input + int fmax = field->logical_maximum; + unsigned int equivalent_usage = wacom_equivalent_usage(usage->hid); + int resolution_code = code; ++ int resolution = hidinput_calc_abs_res(field, resolution_code); + + if (equivalent_usage == HID_DG_TWIST) { + resolution_code = ABS_RZ; +@@ -1813,8 +1814,15 @@ static void wacom_map_usage(struct input + switch (type) { + case EV_ABS: + input_set_abs_params(input, code, fmin, fmax, fuzz, 0); +- input_abs_set_res(input, code, +- hidinput_calc_abs_res(field, resolution_code)); ++ ++ /* older tablet may miss physical usage */ ++ if ((code == ABS_X || code == ABS_Y) && !resolution) { ++ resolution = WACOM_INTUOS_RES; ++ hid_warn(input, ++ "Wacom usage (%d) missing resolution \n", ++ code); ++ } ++ input_abs_set_res(input, code, resolution); + break; + case EV_KEY: + input_set_capability(input, EV_KEY, code); diff --git a/queue-4.19/series b/queue-4.19/series index 67b22788e38..eeadb92da12 100644 --- a/queue-4.19/series +++ b/queue-4.19/series @@ -175,3 +175,4 @@ sh-nmi_debug-fix-return-value-of-__setup-handler.patch arm-dts-exynos-fix-wm8960-clock-name-in-itop-elite.patch arm-dts-s5pv210-correct-mipi-csis-clock-name.patch drm-panel-otm8009a-set-backlight-parent-to-panel-device.patch +hid-wacom-set-a-default-resolution-for-older-tablets.patch -- 2.47.3