Bug 83954

Summary: Touch does not work in secondary display after calibration in multihead setup
Product: Wayland Reporter: Anu Reddy <anasuyax.r.nannuri>
Component: westonAssignee: Wayland bug list <wayland-bugs>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: medium    
Version: unspecified   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:

Description Anu Reddy 2014-09-16 23:19:57 UTC
In multi display setup, when calibrating secondary display with touch device, touch doesn’t not work. If I disconnect primary display, that makes secondary display as new primary display and touch works just fine.

Steps to reproduce:
1. Identify primary display as display1, and secondary display as display2. Here secondary display is a touch device.
2. Launch weston
3. Execute weston-calibrator on display2 and capture calibration values
4. Exit weston
5. Create a udev rule in /etc/udev/rules.d/weston.rules with calibration values:
Example:
ENV{ID_VENDOR_ID}=="2149",ENV{ID_MODEL_ID}=="2122",ENV{WL_CALIBRATION}="0.994876 -0.013934 12.975220 -0.004180 1.008462 -3.079773"

(I tried udev rule with LIBINPUT_CALIBRATION_MATRIX, touch does not work. Weston still using WL_CALIBRATION, I created udev rule with WL_CALIBRATION)

6. Unplug and replug touch device
7. Restart weston. 
8. Execute weston-simple-touch on display2. Observe touch does not work.
9. Disconnect display1. Observe touch works on display2.

Software Stack:
wayland (HEAD) remotes/origin/HEAD-0-gedf4e7a 
drm (HEAD) heads/master-16-gd686160 
mesa (HEAD) remotes/origin/10.2-0-ge475222 
libva (HEAD) libva-1.3.1-0-g053f70f 
intel-driver (HEAD) 1.3.1-0-ga720bc8 
cairo (HEAD) remotes/origin/1.12-0-g4b65497 
libinput (HEAD) remotes/origin/HEAD-0-g224f1d8 
weston (HEAD) remotes/origin/HEAD-0-gf1d2cc0
Comment 1 Daniel Stone 2018-06-04 09:24:04 UTC
Fixed with the new touch calibrator.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.