Backport Synaptics HID touchpad driver for 14.04

Bug #1305522 reported by Yang Kun (YK)
212
This bug affects 44 people
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Fix Released
Medium
AceLan Kao
Trusty
Fix Released
Medium
AceLan Kao

Bug Description

Synaptics just upstreamed a new set of HID touchpad driver:

http://git.kernel.org/cgit/linux/kernel/git/jikos/hid.git/commit/?h=for-3.16/rmi4&id=9fb6bf02e3ad04c20edb8e46536ce3eeda32c736

It's better we can have it in 14.04 .

Changed in linux (Ubuntu):
importance: Undecided → Medium
assignee: nobody → AceLan Kao (acelankao)
Revision history for this message
Brad Figg (brad-figg) wrote : Missing required logs.

This bug is missing log files that will aid in diagnosing the problem. From a terminal window please run:

apport-collect 1305522

and then change the status of the bug to 'Confirmed'.

If, due to the nature of the issue you have encountered, you are unable to run this command, please add a comment stating that fact and change the bug status to 'Confirmed'.

This change has been made by an automated script, maintained by the Ubuntu Kernel Team.

Changed in linux (Ubuntu):
status: New → Incomplete
AceLan Kao (acelankao)
Changed in linux (Ubuntu):
status: Incomplete → In Progress
tags: added: hw-specific trusty
Revision history for this message
AceLan Kao (acelankao) wrote :

From Synaptics engineer, we not only need
   9fb6bf0 HID: rmi: introduce RMI driver for Synaptics touchpads
but also need
   9b5a9ae HID: i2c-hid: implement ll_driver transport-layer callbacks

The second commit depends on other hid commits that have been introduced in 3.14 kernel.
Need more time to clean up the dependency, and cherry pick those commits

Revision history for this message
Alexis Morin (carignan-boy) wrote :

AceLan, I'm using a Dell XPS 13 Haswell i7 with Ubuntu 14.04x64.
From your previous comment, do I understand that if I wait for the kernel to be updated to 3.14 (currently on 3.13.0-24-generic), this problem will be resolved?

Revision history for this message
AceLan Kao (acelankao) wrote :

Alexis,
What I'm doing is to cherry-pick those patches from vanilla kernel 3.14 to ubuntu kernel 3.13.
So, you probably will get an update kernel that will enable the touchpad correctly.
I just sorted out the essential patch set, but I'm not sure if ubuntu kernel team will accept them for SRU.
Anyway, I'll update the info here.

Revision history for this message
AceLan Kao (acelankao) wrote :

If anyone of you would like to give the new kernel a try, here is the kernel.
http://people.canonical.com/~acelan/bugs/lp1305522/

Revision history for this message
AceLan Kao (acelankao) wrote :

For the sake of SRU, I need someone report if there is any regression after installing the test kernel on #5.
Thanks.

Revision history for this message
Kent Baxley (kentb) wrote :

Tested on XPS 13 Haswell and confirmed that the following worked and / or continue to work:

Synaptics touchpad now recognizes multi-touch gestures in i2c mode

Major components like wifi, audio, bluetooth did not seem to regress in their functionality.

Ran 30 suspend/resumes using fwts and did not see any failures along the way.

I will try and find some other laptops with different touchpad hardware to see if AceLan's kernels cause any new problems.

Revision history for this message
John Hupp (john.hupp) wrote :

Is this backport likely to help with this Synaptics double-tap bug: http://bugs.launchpad.net/ubuntu/+source/xserver-xorg-input-synaptics/+bug/1286372 ?

(By the way, the bug seems less severe in the final release of 14.04, at least in the file manager, but I found it impossible today to double-tap my way through mtpaint's dialog for setting the documentation path.)

Revision history for this message
Kent Baxley (kentb) wrote :

Tested on XPS 15 Haswell with a non-i2c Synaptics touchpad. No loss in functionality of the touchpad with the test kernel and wifi, audio, usb ports, bluetooth all continued to function.

Also ran 30 suspend/ resumes in a row with fwts and didn't see any problems.

Revision history for this message
Kent Baxley (kentb) wrote :

@John Hupp,

No. This is adding support for i2c-based Synaptics touchpads, which are relatively new devices.

The XPS 15 with the non-i2c touchpad has had no problems double tapping anything so far, even before this patched kernel was applied.

Revision history for this message
Kent Baxley (kentb) wrote :

Tested an Inspiron 3421, which also has a non-i2c synaptics touchpad. I tested the same components as earlier along with suspend and resume. So far so good.

Revision history for this message
AceLan Kao (acelankao) wrote :

Tested on below machines
1. Dell E5440 with a PS/2 Synaptics touchpad
2. Dell Inspiron 3137 with a PS/2 Synaptics touchpad
3. Dell Inspiron 5547 with i2c Synaptics touchpad
wifi and usb port work, and after S3 30 times, no obvious regression could be observed.

Revision history for this message
Tim Gardner (timg-tpi) wrote :

The 2 remaining patches to be merged are in linux-next, so I'm marking this released since they'll be there for 3.16

Changed in linux (Ubuntu Trusty):
status: In Progress → Fix Committed
Changed in linux (Ubuntu):
status: In Progress → Fix Released
Revision history for this message
Wren Turkal (wt-penguintechs-org) wrote :

Is this fix expected to break my touchscreen?

Revision history for this message
AceLan Kao (acelankao) wrote :

Warren, did you try the kernel posted on comment #5?
Does that kernel break your touchscreen?
Please report your result back, so that we can do something.
Thanks.

Revision history for this message
mrmagos (mrmagos) wrote :

Warren, it shouldn't break your touchscreen, but please test and report if it does. For the record, I tested this kernel on a Dell XPS 12-9Q33. Touchpad and touchscreen are both recognized and work great.

Revision history for this message
AceLan Kao (acelankao) wrote :

mrmagos, Warren is discussing with me on bug 1265885
Please leave comment on bug 1265885 if you have any idea, thanks.

Revision history for this message
Brad Figg (brad-figg) wrote :

This bug is awaiting verification that the kernel in -proposed solves the problem. Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification-needed-trusty' to 'verification-done-trusty'.

If verification is not done by 5 working days from today, this fix will be dropped from the source code, and this bug will be closed.

See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you!

tags: added: verification-needed-trusty
Revision history for this message
Marc Nieper-Wißkirchen (marc-nieper-wisskirchen) wrote :

I tried the proposed fix on my Dell XPS 13 (Sputnik 3) system. With the proposed kernel 3.13.0-26, the touchpad works in fact without blacklisting i2c_hid.

However, the touchscreen ceases to work with the proposed kernel (it does work with the regular 3.13.0-24 kernel). Thus this patch should not be released in its current state.

Revision history for this message
Joseph Salisbury (jsalisbury) wrote :

@Marc would you be willing to help with a kernel bisect to identify what caused the touchscreen regression? It would require testing of a few test kernel.

If you can test some kernels, I'll build the first one, and post a link to it here.

tags: added: performing-bisect
Revision history for this message
Joseph Salisbury (jsalisbury) wrote :

@Marc, if you are willing to bisect, we first need to see if this regression was introduced by and upstream commit. We need to identify the earliest kernel where the issue started happening as well as the latest kernel that did not have this issue.

Can you test the following kernels and report back? We are looking for the first kernel version that exhibits this bug:

v3.13.9: http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.13.9-trusty/
v3.13.10: http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.13.10-trusty/
v3.13.11: http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.13.11-trusty/

You don't have to test every kernel, just up until the kernel that first has this bug.

Thanks in advance!

Revision history for this message
Joseph Salisbury (jsalisbury) wrote :

@Kent, can you see if you have touchscreen issues with the latest -proposed kernel?

Revision history for this message
Marc Nieper-Wißkirchen (marc-nieper-wisskirchen) wrote :

@Joseph: I am going to test the three kernels you have built.

Revision history for this message
Joseph Salisbury (jsalisbury) wrote :

@Marc, after testing the kernels in comment #21, can you also test the kernel located at:

http://kernel.ubuntu.com/~jsalisbury/lp1305522/

That kernel has commits ef40e26e and 42f6923 reverted. I'd just like to see if they are causing your issue.

Revision history for this message
Marc Nieper-Wißkirchen (marc-nieper-wisskirchen) wrote :

Okay, I tested the kernels in comment #21. With all three of them, I still have touchscreen functionality. I blacklisted i2c_hid at boot time. After modprobe'ing the i2c_hid module, the touchscreen still works, but scrolling with the touchpad does not work anymore (thus, it is the same behaviour as the standard kernel exhibits).

I am now testing the kernels in comment #24.

Marc

Revision history for this message
Marc Nieper-Wißkirchen (marc-nieper-wisskirchen) wrote :

@Joseph: The kernel from #24 makes my touchscreen work but not two-finger scrolling on the touchpad with i2c_hid loaded.

Revision history for this message
Joseph Salisbury (jsalisbury) wrote :

Thanks for testing, Marc. I'm going to build one more test kernel with just commit ef40e26e reverted.

Revision history for this message
Joseph Salisbury (jsalisbury) wrote :

I built a test kernel with commit ef40e26e reverted. The kernel is located at:

http://kernel.ubuntu.com/~jsalisbury/lp1305522/

Can you see if this kernel has issues with the touchscreen?

Revision history for this message
Kent Baxley (kentb) wrote :

@ Joseph and AceLan,

I can also confirm that the touchscreen stops working, but, I think I can see why. The -proposed kernel loads a different driver for the touchscreen than what is in the 'stock' kernel.

With the stock kernel, syslog reports the following:

hid-multitouch 0003:06CB:0AF8.001: input,hiddev0,hidraw0: USB HID v1.11 Mouse [SYNAPTICS Synaptics Large Touch Screen] on usb-0000:00:14.0-3/input0

Also, with the stock kernel, you will see the "SYNAPTICS LARGE TOUCHSCREEN" in the list if you run 'xinput'

With proposed:

hid-rmi 0003:06CB:0AF8.001: input,hiddev0,hidraw0: USB HID v1.11 Mouse [SYNAPTICS Synaptics Large Touch Screen] on usb-0000:00:14.0-3/input0

And the touchscreen no longer shows up in 'xinput'.

...note that with the -proposed kernel we are using a new driver, hid-rmi, instead of hid-multitouch.

Some hid rmi commits were required to make the touchpad work properly, and this is (I think) what got into the proposed kernel:

9fb6bf0 HID: rmi: introduce RMI driver for Synaptics touchpads
b89f991 HID: rmi: do not stop the device at the end of probe

I'm guessing that hid-rmi also wants to now control the touchscreen, which isn't correct. hid-multitouch should (from what I can tell) still be taking care of the touchscreen.

There are two bugs of interest from Fedora that I think will help sort this out:

https://bugzilla.redhat.com/show_bug.cgi?id=1089583

..in that bug, there is a patch in comment 8 that might be helpful.

There is also another bug opened here that takes care of some additional cleanup on the touchpad that we might need to look into:

https://bugzilla.redhat.com/show_bug.cgi?id=1090161

Revision history for this message
Brad Figg (brad-figg) wrote :

The 3 commits that go into this fix are being reverted. Feel free to resubmit them and any other required patches to address this issue. Please thoroughly test.

Revision history for this message
mrmagos (mrmagos) wrote :

Testing on a Dell XPS 12-9q33. Tested both kernels in #24 and #28, and touchscreen worked as expected for both. However, I no longer have two-finger scrolling or tap-to-click with the touchpad with the kernel in #24; expected since a change was reverted. For kernel in #28, mouse button events using the touchpad caused a kernel panic.

AceLan Kao (acelankao)
Changed in linux (Ubuntu):
status: Fix Released → In Progress
Changed in linux (Ubuntu Trusty):
status: Fix Committed → In Progress
Revision history for this message
AceLan Kao (acelankao) wrote :

Hi,

I built a new kernel and it's expected to fix the following issues
1. Support Synaptics i2c touchpad
2. Synaptics touchscreen stop working results from the i2c touchpad driver
3. On Dell XPS 13 with i2c touchpad driver, the button press event might be missing.

Please give it a try and report back, thanks.

http://people.canonical.com/~acelan/bugs/lp1305522/20140515/

Revision history for this message
Marc Nieper-Wißkirchen (marc-nieper-wisskirchen) wrote :

@AceLan Kao: I tested your newly built kernel:

mnieper@macaulay:~$ uname -r
3.13.0-27-generic
mnieper@macaulay:~$ lsmod | grep i2c_hid
i2c_hid 18860 0
hid 106148 4 i2c_hid,hid_multitouch,hid_rmi,usbhid

The touchscreen works as does the touchpad! In addition, the touchpad recognizes multi-touch events (e.g. four fingers for showing the unity search, etc.), which it didn't with the -24 kernel.

Revision history for this message
mrmagos (mrmagos) wrote :

@Acelan, I tested your kernel and touchpad and touchscreen work for me as well. Cycled through S3 with no issues.

Revision history for this message
Kent Baxley (kentb) wrote :

Tested here with our lab sample. Touchscreen is working again and the touchpad is working even better than it did with the previous test kernels.

Revision history for this message
Kent Baxley (kentb) wrote :

Also tested acelan's kernels with an XPS15 (model 9530) which has the same touchscreen but a non i2c synaptics touchpad. The touchscreen and touchpad both work fine and I don't see an regression in behavior. This machine survived 30 S3's.

The Inspiron 14 (3421) with just a non-i2c synaptics touchpad was tested as well. No big regressions found on that one either. Touchpad continues to function and suspend/resume don't seem to be affected.

Revision history for this message
Wren Turkal (wt-penguintechs-org) wrote : Re: [Bug 1305522] Re: Backport Synaptics HID touchpad driver for 14.04

Just rebooted into this kernel. Seems to be working so far.

wt

On Thu, May 15, 2014 at 12:12 PM, Kent Baxley <email address hidden>wrote:

> Also tested acelan's kernels with an XPS15 (model 9530) which has the
> same touchscreen but a non i2c synaptics touchpad. The touchscreen and
> touchpad both work fine and I don't see an regression in behavior. This
> machine survived 30 S3's.
>
> The Inspiron 14 (3421) with just a non-i2c synaptics touchpad was tested
> as well. No big regressions found on that one either. Touchpad
> continues to function and suspend/resume don't seem to be affected.
>
> --
> You received this bug notification because you are subscribed to a
> duplicate bug report (1265885).
> https://bugs.launchpad.net/bugs/1305522
>
> Title:
> Backport Synaptics HID touchpad driver for 14.04
>
> Status in “linux” package in Ubuntu:
> In Progress
> Status in “linux” source package in Trusty:
> In Progress
>
> Bug description:
> Synaptics just upstreamed a new set of HID touchpad driver:
>
>
> http://git.kernel.org/cgit/linux/kernel/git/jikos/hid.git/commit/?h=for-3.16/rmi4&id=9fb6bf02e3ad04c20edb8e46536ce3eeda32c736
>
> It's better we can have it in 14.04 .
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1305522/+subscriptions
>

Revision history for this message
Wren Turkal (wt-penguintechs-org) wrote :

So, it seems like the kernel problem is solved. Now, where do I file a bug about crappy behavior of the touchscreen in Xorg (and Unity as a result)? I don't want to clutter this bug with that info.

Revision history for this message
Andy Anderson (andyanderso) wrote :

Just installed and have been testing this kernal. My only issue is that the touchpad is not disabled when I flip my screen so I get erratic pointer behavior due to the back of the screen activating the touchpad. I have a Dell XPS 12 9Q33 and am running 14.04.

If I manually disable the touchpad before flipping the screen or am using the touchpad and the touchscreen in clamshell mode both perform flawlessly. I am pretty new to debugging things like this so please let me know how I can be helpful.

Revision history for this message
AceLan Kao (acelankao) wrote :

Warren, if your touchscreen issue results from the fixes of the touchpad, you can post the issue here.
If not, then you have to file a new bug and report the problem there.
https://bugs.launchpad.net/ubuntu/+source/linux/+filebug

Andy, the flippable screen is specific to the machine, so I'm afraid that there is no generic solution for it.
Searching on webs to see if there is any workaround for it, or you can file a new bug on launchpad to collect others' opinions.

Changed in linux (Ubuntu Trusty):
status: In Progress → Fix Released
AceLan Kao (acelankao)
Changed in linux (Ubuntu Trusty):
status: Fix Released → In Progress
34 comments hidden view all 113 comments
Revision history for this message
David Leung (dhkl) wrote :

Hi Kent,

The bug gets triggered when I move the cursor with one finger (index) and click with another (thumb). It is an old habit I carried over from using the MacBooks.

If I move and click on the touchpad with only one finger, the cursor doesn't jump from one point to another some distance away.

-----

Hi AceLan,

Thank you so much for looking into the touchpad issues we are having. I'm trying to figure out why the particular usage pattern I described above would cause the cursor jump. Is there any utility I can use to log the mouse events (type, movement, and click) to better understand what's going on?

Revision history for this message
Matthew Angeles (matt-angeles) wrote :

WIth Acelan testing keneral 3.13.0-28-generic I have 3 devices showing in my device section of xfce4 mouse and touchpad.

DLL060A:00 06CB:2734
SYNAPTICS Synaptic Laege Touch Screen
SynPS/2 Synaptics Touchapd

Is this normal? Disabling the SynPS/2 Synaptics Touchapd has no effect. I'm kind thrown off my this.

Revision history for this message
Kent Baxley (kentb) wrote :

Hi David, I still can't reproduce any jumpy mouse behavior on my touchpad, even with your steps.

Revision history for this message
Hans Fredrik Furholt (hansffu) wrote :

After running for a while and a couple of suspends it seems like battery life is worse with this kernel. When idle (and not touching the touchpad) powertop reports a quite high wakeup rate.

Usage Events/s Category Description
2,2 ms/s 133,0 Process [irq/39-DLL060A:]

Top also report a fairly high cpu-usage (imo):

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
405 root -51 0 0 0 0 S 0,7 0,0 0:46.16 irq/39-DLL060A:

Revision history for this message
Ethan Y (ethanayonker) wrote :

I updated to Trusty yesterday. The provided 3.13.0-22 kernel has the same issue as we had in Saucy. The touchpad doesn't support 2 finger scrolling, etc. I downloaded the Trusty kernel source and tried to reapply the rmi4 patch as I had done in Saucy. The resulting kernel worked in the sense that both touchscreen and touchpad worked properly including 2 finger scrolling, but I am unable to get my XPS12 to sleep properly with my kernel. Now it wakes back up immediately. I tried the acelan kernel but it does not support 2 finger scrolling.

Would like to get back to a point where my touchpad works properly and still goes to sleep with Trusty.

Revision history for this message
AceLan Kao (acelankao) wrote :

Hans,
I tried to observe the [DLL063E] kernel thread on my laptop with powertop, and can't reproduce the same value.
I keep moving my finger on touchpad as fast as possible for a whole powertop refresh cycle and got the max values I can observe.
Usage Events/s Category Description
587 us/s 0.6 Process [irq/39-DLLL063E:]

The events counter on your laptop is too high, that's the problem.
Could you do the following commands and attach the following log?
1. dmesg > dmesg.log
2. the ftrace log
   sudo su
   cd /sys/kernel/debug/tracing
   echo function > current_tracer
   echo :mod:hid_rmi > set_ftrace_filter # please don't touch the touchpad after enter this command
   cp trace /tmp/trace.no_touch
   # a single tap on touchpad
   cp trace /tmp/trace.tap
3. attach dmesg.log, /tmp/trace.no_touch, and /tmp/trace.tap
Thanks.

Revision history for this message
arash bahramnia (arash-bahramnia) wrote :

@David, Kent and AceLan,

I notice the jumpiness every once in a while where the cursor jumps to the bottom of the screen. However, it barely ever happens and I can't replicate it on demand.

Revision history for this message
CSRedRat (csredrat) wrote :

When this fixed in 14.04 Trusty Tahr for 14.04.1 (24 July)?

Revision history for this message
Hans Fredrik Furholt (hansffu) wrote :

@AceLan
I'm sorry this takes a while. It usually happens after a few days after a reboot and I've been having some suspent issues forcing me to reboot quite often. I'll post back as soon as it happens again.

Revision history for this message
Toto (dart56) wrote :

My touchpad was not working when I instaled 14.04 so I decided to use an external mouse until it is resolved. I got an update then it started working until 2 days ago I got a new update that killed it again

Revision history for this message
gildasvend (gildasvend) wrote :

I have an XPS13 Hasswell (running Ubuntu Gnome 14.04) and I installed the kernel proposed in #44. Nothing broken, touchscreen and touchpad working and PS/2 not showing in xinput BUT touchpad does not get locked when typing, which is getting incredibly annoying. Anyone else having the same problem?

I checked in dconf (under org > gnome > settings daemon > peripherals > touchpad) and the disable-when-typing option in checked. I also tried adding more idle time with syndaemon but then the two finger scrolling stopped working. I don't know if this is a problem of the driver or a completely different matter, so please forgive me if this is not the right place to tell. (To be honest, I think I had the same problem when I had i2c_hid blacklisted; but I thought this driver would correct those things)

Tim Gardner (timg-tpi)
Changed in linux (Ubuntu Trusty):
status: In Progress → Fix Committed
Changed in linux (Ubuntu):
status: In Progress → Fix Released
Chris Drye (e-chris-u)
Changed in linux (Ubuntu Trusty):
status: Fix Committed → Fix Released
Revision history for this message
caleb h. (clebio) wrote :

Hi, I've been attempting to build this into the 3.14.8 kernel, since bug 1283938 is preventing me from using suspend on even 3.16 (https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1283938). However, when I run `make` I get the error below. Please know that I'm comfortable with git, patches, and compiling from source, but know little about the linux kernel itself. Is there some other patch or dependency that would get this to work against 3.14.8?

The error:
```
  CC [M] drivers/hid/hid-rmi.o
drivers/hid/hid-rmi.c: In function ‘rmi_set_mode’:
drivers/hid/hid-rmi.c:168:2: error: implicit declaration of function ‘hid_hw_raw_request’ [-Werror=implicit-function-declaration]
  ret = hid_hw_raw_request(hdev, RMI_SET_RMI_MODE_REPORT_ID, txbuf,
  ^
drivers/hid/hid-rmi.c: In function ‘rmi_write_report’:
drivers/hid/hid-rmi.c:183:2: error: implicit declaration of function ‘hid_hw_output_report’ [-Werror=implicit-function-declaration]
  ret = hid_hw_output_report(hdev, (void *)report, len);
  ^
cc1: some warnings being treated as errors
make[2]: *** [drivers/hid/hid-rmi.o] Error 1
make[1]: *** [drivers/hid] Error 2
make: *** [drivers] Error 2
```

Revision history for this message
Saurabh Rawat (eklavya) wrote :

Hi,

I have an HP h009tux2 laptop. It has synaptic hid touchpad. The touchscreen is working as a mouse (no multitouch). The touchpad doesn't have two finger scroll or any scrolling for that matter, it doesn't even show up in touchpad section in control center.

There has been no change in all these updates.

Please help I am confined to windows 8 only as of now.

xinput:
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Synaptics Touch Pad V 103u5 id=11 [slave pointer (2)]
⎜ ↳ ELAN Touchscreen id=12 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
    ↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
    ↳ Power Button id=6 [slave keyboard (3)]
    ↳ Video Bus id=7 [slave keyboard (3)]
    ↳ Power Button id=8 [slave keyboard (3)]
    ↳ HP TrueVision Full HD id=9 [slave keyboard (3)]
    ↳ HP TrueVision Full HD Rear id=10 [slave keyboard (3)]
    ↳ AT Translated Set 2 keyboard id=13 [slave keyboard (3)]
    ↳ HP Wireless hotkeys id=14 [slave keyboard (3)]
    ↳ HP WMI hotkeys id=15 [slave keyboard (3)]

lsmod | grep hid ->
hid_generic 12548 0
hid_multitouch 17407 0
hid_sensor_als 13123 0
hid_sensor_gyro_3d 13209 0
hid_sensor_accel_3d 13221 0
hid_sensor_magn_3d 13209 0
hid_sensor_trigger 12916 4 hid_sensor_gyro_3d,hid_sensor_accel_3d,hid_sensor_als,hid_sensor_magn_3d
industrialio_triggered_buffer 12882 4 hid_sensor_gyro_3d,hid_sensor_accel_3d,hid_sensor_als,hid_sensor_magn_3d
industrialio 54069 7 hid_sensor_trigger,hid_sensor_gyro_3d,industrialio_triggered_buffer,hid_sensor_accel_3d,hid_sensor_als,kfifo_buf,hid_sensor_magn_3d
hid_sensor_iio_common 13755 4 hid_sensor_gyro_3d,hid_sensor_accel_3d,hid_sensor_als,hid_sensor_magn_3d
hid_sensor_hub 19536 6 hid_sensor_trigger,hid_sensor_gyro_3d,hid_sensor_accel_3d,hid_sensor_als,hid_sensor_magn_3d,hid_sensor_iio_common
usbhid 52570 0
hid 106148 4 hid_multitouch,hid_generic,hid_sensor_hub,usbhid
mac_hid 13205 0

lsusb:
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 009: ID 04f3:0193 Elan Microelectronics Corp.
Bus 001 Device 008: ID 06cb:2239 Synaptics, Inc.
Bus 001 Device 007: ID 1bcf:2c5a Sunplus Innovation Technology Inc.
Bus 001 Device 003: ID 05e3:0608 Genesys Logic, Inc. USB-2.0 4-Port HUB
Bus 001 Device 006: ID 8087:07dc Intel Corp.
Bus 001 Device 005: ID 0483:91d1 STMicroelectronics
Bus 001 Device 004: ID 1bcf:2c59 Sunplus Innovation Technology Inc.
Bus 001 Device 002: ID 05e3:0608 Genesys Logic, Inc. USB-2.0 4-Port HUB
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Revision history for this message
Kent Baxley (kentb) wrote :

@Sarubh,

Please file a separate bug for your issue as your touchpad does not appear to be the same as what's being worked on here. Alternatively, you can add your comments to this bug, which I think covers your touchpad device:

https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1307015

Revision history for this message
Saurabh Rawat (eklavya) wrote :

Hi Kent,

Sorry, I ddin't know the touchpad was different. I will add a comment to the post you specified.

Regards,

Saurabh Rawat

Revision history for this message
Tim Kuijsten (kuijsten) wrote :

@gildasvend #85

Have you been able to fix the disable when typing issue? If not, have you seen these instructions?
http://askubuntu.com/questions/462135/touchpad-issue-jumping-cursor-while-typing-ubuntu-14-04-syndaemon-dont-help

I've tried 12.04 on a MB Air a couple of years ago, but switched back after only a couple of days since I couldn't fix the trackpad and it kept jumping around when working on the terminal. Made me completely crazy.

I would really like to switch from OS X to Ubuntu, but only if the trackpad comes somewhat close to the OS X experience. Reading about all these trackpad issues on the "supposed to be Ubuntu friendly" XPS13 leaves me still a bit unconvinced that it would be all ok by now..

-Tim

Revision history for this message
Nate Eldredge (nate-thatsmathematics) wrote :

For what it's worth, under 13.10 and earlier versions, I found the
trackpad experience could be greatly improved by tweaking parameters via
the synclient command. Particularly useful were MaxSpeed and
{Horiz,Vert}Hysteresis.

On Wed, 9 Jul 2014, Tim Kuijsten wrote:

> @gildasvend #85
>
> Have you been able to fix the disable when typing issue? If not, have you seen these instructions?
> http://askubuntu.com/questions/462135/touchpad-issue-jumping-cursor-while-typing-ubuntu-14-04-syndaemon-dont-help
>
> I've tried 12.04 on a MB Air a couple of years ago, but switched back
> after only a couple of days since I couldn't fix the trackpad and it
> kept jumping around when working on the terminal. Made me completely
> crazy.
>
> I would really like to switch from OS X to Ubuntu, but only if the
> trackpad comes somewhat close to the OS X experience. Reading about all
> these trackpad issues on the "supposed to be Ubuntu friendly" XPS13
> leaves me still a bit unconvinced that it would be all ok by now..
>
> -Tim
>
> --
> You received this bug notification because you are subscribed to a
> duplicate bug report (1265885).
> https://bugs.launchpad.net/bugs/1305522
>
> Title:
> Backport Synaptics HID touchpad driver for 14.04
>
> Status in “linux” package in Ubuntu:
> Fix Released
> Status in “linux” source package in Trusty:
> Fix Released
>
> Bug description:
> Synaptics just upstreamed a new set of HID touchpad driver:
>
> http://git.kernel.org/cgit/linux/kernel/git/jikos/hid.git/commit/?h=for-3.16/rmi4&id=9fb6bf02e3ad04c20edb8e46536ce3eeda32c736
>
> It's better we can have it in 14.04 .
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1305522/+subscriptions
>
>

--
Nate Eldredge
<email address hidden>

Revision history for this message
Luis Henriques (henrix) wrote :

This bug is awaiting verification that the kernel in -proposed solves the problem. Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification-needed-trusty' to 'verification-done-trusty'.

If verification is not done by 5 working days from today, this fix will be dropped from the source code, and this bug will be closed.

See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you!

Revision history for this message
Andy Anderson (andyanderso) wrote :

Using the 3.13.0-32-generic kernel in the -proposed repo works well for me. I am on a Dell XPS 12-9Q33. I get a full featured recognized touch pad and working touchscreen. Thanks to everyone for all the work put into this bug fix.

Revision history for this message
Andy Anderson (andyanderso) wrote :

To follow up on my last comment, here are details from my machine where touchpad and touchscreen are both fully functional:

:~$ xinput
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ ATML1000:00 03EB:842F id=10 [slave pointer (2)]
⎜ ↳ DLL05E3:01 06CB:2734 id=11 [slave pointer (2)]
⎜ ↳ PS/2 Synaptics TouchPad id=14 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
    ↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
    ↳ Power Button id=6 [slave keyboard (3)]
    ↳ Video Bus id=7 [slave keyboard (3)]
    ↳ Power Button id=8 [slave keyboard (3)]
    ↳ Integrated Webcam id=9 [slave keyboard (3)]
    ↳ AT Translated Set 2 keyboard id=12 [slave keyboard (3)]
    ↳ Dell WMI hotkeys

$ dmesg | grep psmouse
[ 2.209923] psmouse serio1: synaptics: Unable to query device.
[ 7.566269] psmouse serio1: Failed to enable mouse on isa0060/serio1

$ lsmod | grep psmouse
psmouse 106678 0

Revision history for this message
Luis Henriques (henrix) wrote :

Thanks for testing Andy! As per comment #93 (and #94), I'm tagging this bug as verified.

tags: added: verification-done-trusty
removed: verification-needed-trusty
Revision history for this message
Gabriele (questaemia) wrote :

I'm not using Ubuntu nor the kernel here posted, but Debian sid with kernel 3.16-rc*

I have the same problem reported in comment #78.
powertop reports a high number of events/s for DLL060A:00 and also INT33C3:00.

Doing what was suggested in #80, I got the following:

 irq/39-DLL060A:-315 [002] .... 643.869064: rmi_f30_input_event <-rmi_raw_event
 irq/39-DLL060A:-315 [002] .... 643.879318: rmi_raw_event <-hid_input_report
 irq/39-DLL060A:-315 [002] .... 643.879323: rmi_f11_input_event <-rmi_raw_event
 irq/39-DLL060A:-315 [002] .... 643.879327: rmi_f30_input_event <-rmi_raw_event
 irq/39-DLL060A:-315 [002] .... 643.889271: rmi_raw_event <-hid_input_report
 irq/39-DLL060A:-315 [002] .... 643.889275: rmi_f11_input_event <-rmi_raw_event
 irq/39-DLL060A:-315 [002] .... 643.889277: rmi_f30_input_event <-rmi_raw_event
 irq/39-DLL060A:-315 [002] .... 643.899350: rmi_raw_event <-hid_input_report
 irq/39-DLL060A:-315 [002] .... 643.899353: rmi_f11_input_event <-rmi_raw_event
 irq/39-DLL060A:-315 [002] .... 643.899356: rmi_f30_input_event <-rmi_raw_event

This is just a small part of what I get, the above lines are continuosly generated at a constant rate even without touching the touchpad.

Right after a reboot those lines appears only when touching the touchpad, but after some use, they are constantly generated.

After some tests I found that this happens once ABS_MT_TOUCH_MAJOR reaches 12. I'm not sure of this, but I tried a few times already and this is the only relation I could find.

Can anyone confirm this? Use 'evtest' to see the value of ABS_MT_TOUCH_MAJOR.

I would also like to add that I think that the events are sent at a higher rate when compared to the old driver. I think this is causing a higher power consumpion when using the touchpad.

Revision history for this message
Kent Baxley (kentb) wrote :

@Gabriele and anyone else that sees power consumption problems,

Please open a separate bug on the power consumption. This issue is to inclue driver support for the touchpad, which Synaptics continues to work on / refine upstream.

Revision history for this message
Tim Kuijsten (kuijsten) wrote :

@Andy or anyone: can you maybe comment about false palm recognition and the "disable keyboard while typing" feature when holding both hands at the keyboard (and doing terminal work for example). Does this patch make any improvements in that area? Older kernels really suck at this and frustrated a smooth workflow for me.

Revision history for this message
Kent Baxley (kentb) wrote :

The patch does not improve this.

On Fri, Jul 25, 2014 at 10:45 AM, Tim Kuijsten
<email address hidden> wrote:
> @Andy or anyone: can you maybe comment about false palm recognition and
> the "disable keyboard while typing" feature when holding both hands at
> the keyboard (and doing terminal work for example). Does this patch make
> any improvements in that area? Older kernels really suck at this and
> frustrated a smooth workflow for me.
>
> --
> You received this bug notification because you are subscribed to the bug
> report.
> https://bugs.launchpad.net/bugs/1305522
>
> Title:
> Backport Synaptics HID touchpad driver for 14.04
>
> Status in “linux” package in Ubuntu:
> Fix Released
> Status in “linux” source package in Trusty:
> Fix Released
>
> Bug description:
> Synaptics just upstreamed a new set of HID touchpad driver:
>
> http://git.kernel.org/cgit/linux/kernel/git/jikos/hid.git/commit/?h=for-3.16/rmi4&id=9fb6bf02e3ad04c20edb8e46536ce3eeda32c736
>
> It's better we can have it in 14.04 .
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1305522/+subscriptions

--
Kent Baxley
Field Engineer, Canonical
<email address hidden>

Revision history for this message
Joe Linux (j-linux) wrote :

Hello to All,

I have the same issue with my Synaptics touchap not working at all on a new and fresh install of Ubuntu 14.04-1 64-bit, dual boot with Windows 8.1, on my new Hybrid UltraBook - the HP Spectre 13 x2 (Intel Haswell).

I have almost fixed the wifi stuff which was not working at all, and no wired Ethernet alternative on my PC, due to seems to be a misleading issue between acer-wmi and hp-wmi!

I tried to issue an apport-collect 1305522 report as mentioned in the first post but I'm getting the following error window (in french):
Vous n'avez pas rapporté ce problème ou n'y êtes pas abonné, ou le rapport est un doublon ou déjà fermé.
Veuillez créer un nouveau rapport en utilisant « apport-bug ».

So I'm requested to create a new report using apport-bug. But how to use this stuff?

Thank you.
Joe

Revision history for this message
Joe Linux (j-linux) wrote :

Hello,

I have forgotten to say that an external USB mouse is working well when the touchscreen both docked and undocked has some missing capabilities as the scrolling.

Now, I'm getting the following in a terminal on my HP Spectre 13 x2 with Ubuntu 14.04-1 64-bit and Kernel 3.13.0-32-generic:

joe@PC-Joe-S13x2:~$ xinput --list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ HID 04d9:0499 id=9 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
    ↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
    ↳ Power Button id=6 [slave keyboard (3)]
    ↳ Video Bus id=7 [slave keyboard (3)]
    ↳ HP TrueVision Full HD id=8 [slave keyboard (3)]
    ↳ AT Translated Set 2 keyboard id=10 [slave keyboard (3)]
    ↳ HP Wireless hotkeys id=11 [slave keyboard (3)]
    ↳ HP WMI hotkeys id=12 [slave keyboard (3)]
Looks like the Synaptics touchpad is: HID 04d9:0499 id=9 [slave pointer (2)]

joe@PC-Joe-S13x2:~$ dmesg | grep psmouse
joe@PC-Joe-S13x2:~$ lsmod | grep psmouse
Both give no output.

joe@PC-Joe-S13x2:~$ xinput --list-props 9
Device 'HID 04d9:0499':
 Device Enabled (135): 1
 Coordinate Transformation Matrix (137): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
 Device Accel Profile (268): 0
 Device Accel Constant Deceleration (269): 1.000000
 Device Accel Adaptive Deceleration (270): 1.000000
 Device Accel Velocity Scaling (271): 10.000000
 Device Product ID (255): 1241, 1177
 Device Node (256): "/dev/input/event5"
 Evdev Axis Inversion (272): 0, 0
 Evdev Axes Swap (274): 0
 Axis Labels (275): "Rel X" (145), "Rel Y" (146), "Rel Vert Wheel" (569)
 Button Labels (276): "Button Left" (138), "Button Middle" (139), "Button Right" (140), "Button Wheel Up" (141), "Button Wheel Down" (142), "Button Horiz Wheel Left" (143), "Button Horiz Wheel Right" (144)
 Evdev Middle Button Emulation (277): 0
 Evdev Middle Button Timeout (278): 50
 Evdev Third Button Emulation (279): 0
 Evdev Third Button Emulation Timeout (280): 1000
 Evdev Third Button Emulation Button (281): 3
 Evdev Third Button Emulation Threshold (282): 20
 Evdev Wheel Emulation (283): 0
 Evdev Wheel Emulation Axes (284): 0, 0, 4, 5
 Evdev Wheel Emulation Inertia (285): 10
 Evdev Wheel Emulation Timeout (286): 200
 Evdev Wheel Emulation Button (287): 4
 Evdev Drag Lock Buttons (288): 0
But I can't interpret these data.

joe@PC-Joe-S13x2:~$ evtest /dev/input/eventX
evtest: No such file or directory

joe@PC-Joe-S13x2:~$ xev
Outer window is 0x4600001, inner window is 0x4600002
is working but only with the external USB mouse.

Thanks.
Joe

Revision history for this message
Marf (marcuswiederhold) wrote :

Hello,

I confirm Joe's findings. I own an HP Pavilion 11 x2 . Before I upgraded to Ubuntu 14.04 Snapshot 1 my clickpad was recognized as evDev based mouse device. But after an kernel update last week or so my clickpad stoped working completly. My ELAN Touchscreen is still recognized as evDev based device and is still working with mono-touch like before.

Thanks,
Marfi

Revision history for this message
Javier Vela (jvdiago) wrote :

Hi,

I have a DELL XPS 12 convertible. After applying the last kernel updates from proposed, with the last kernel the problem with the synaptic module persists. The touchscreen works perfectly but the synaptics touchpad gestures do not work. With the Acelan's custom kernel everything is working but if I try the upstream kernel , it stops working. If I blacklist the i2c_hid module, the synaptics tocuhpad works perfectly, but in the moment I load it again, the gestures stops working. In fact, if I don't blacklist the i2c_hid module, the synaptic dirver does not load, seeing this:

# synclient -l
Couldn't find synaptics properties. No synaptics driver loaded?

I've checked errors in xorg or dmesg, but nothing found, plus without the i2c_hid moudle is working. I've also purged and reinstalled the xorg synaptics package, but problem persists. AT the beginning I was working with the bentiss patch, but is not working with the last kernel sources, and the Acelan's custom kernel would got outdated at some point.

Xinput:
:~$ xinput
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ ATML1000:00 03EB:842F id=10 [slave pointer (2)]
⎜ ↳ DLL05E3:01 06CB:2734 id=11 [slave pointer (2)]
⎜ ↳ PS/2 Synaptics TouchPad id=14 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
    ↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
    ↳ Power Button id=6 [slave keyboard (3)]
    ↳ Video Bus id=7 [slave keyboard (3)]
    ↳ Power Button id=8 [slave keyboard (3)]
    ↳ Integrated Webcam id=9 [slave keyboard (3)]
    ↳ AT Translated Set 2 keyboard id=12 [slave keyboard (3)]
    ↳ Dell WMI hotkeys

Revision history for this message
Piotr Popieluch (piotr1212) wrote :

Araash, David, Kent and AceLan,

Please see https://bugzilla.redhat.com/show_bug.cgi?id=1123584 for the jumpy cursor issues.

Revision history for this message
Gabriele (questaemia) wrote :

@Javier Vela
Did you try 3.17-rc1? If so, take a look at this: https://bugzilla.kernel.org/show_bug.cgi?id=82601

@piotr
If the jumps happen when you use two fingers, maybe this (http://lists.freedesktop.org/archives/xorg-devel/2014-June/042790.html) could help. If this is the case, then it's not a kernel bug.
That patch could also help if the bug you are experiencing is the same as the one you linked which seems to be a kernel bug.

Note that the patch I linked is not a kernel patch, so it's not something that can be included in the backported kernel.

Revision history for this message
Piotr Popieluch (piotr1212) wrote :

@gabriele
Thanks for the patch. I've implemented it and solves my problem. It seems to be a nice workaround for my issue. I will update the redhat/kernel guys.

Revision history for this message
Javier Vela (jvdiago) wrote :

@Grabiele

Finally I've solved my problem by installing the 3.16 kernel form here: http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.16-utopic/

Now everything is working as intended, so I will work with that kernel until Ubuntu 14.10 is released.

Thank you for the support.

Revision history for this message
Joe Linux (j-linux) wrote :

Hello,

I am very pleased to announce that about 2 weeks ago after a kernel-firmware update my Synaptics touch pad is now fully fonctionnal when before that it was not working at all.

* Ultrabook HP Spectre 13-h201ef x2 *
- Release: Ubuntu 14.04.1 (trusty) 64-b
- Kernel: 3.13.0-32-generic (eg. the current one)
- FIX: linux-firmware 1.127.7 (but the fix happened with an earlier version, really don't know which one)
- Touch Pad SYNAPTICS v.103u9
- GPointing is also now fully working

Thanks to everybody who have worked on this issue and have found the right fix.
Joe

Revision history for this message
Chris Duong (chris-duong83) wrote :

Hi,

Unblacklist i2c_hid, causing my laptop cannot resume after being suspended.
I'm using Dell XPS 12-9Q33.

Distributor ID: Ubuntu
Description: Ubuntu 14.04.1 LTS
Release: 14.04
Codename: trusty

linux-firmware is 1.127.7.

Please help.
If not possible, I have to blacklist i2c_hid again. :(

Revision history for this message
emarkay (mrk) wrote :

Logitech wierless keyboard - just want to disable "tap-to-click". Any ideas?

Revision history for this message
John Leake (jleake) wrote :

Hi All,
This bug is back.

Under Ubuntu 14.04 LTS kernel 3.13.0-74-generic , Thinkpad T520 I had a working SynPS/2 Synaptics Touchpad. Then I updated to 3.13.0-76 and the touchpad was not recognised (defaulted to standard PS/2). I tested several kernels up to 4.5-rc4 and they all failed in the same way.

So I reported the issue and rolled back to -74. Then on 15/2/2016 I did an apt-get update and it broke my -74 kernel but more than that it broke previous kernels that also used to work (-73,-72,-71,-70).

Should I also blacklist I2C ?

Revision history for this message
John Leake (jleake) wrote :

I blacklisted I2c_hid but it made no difference. Considering leaving Ubuntu for good, I mean what is the point in having a laptop if you have to carry arround an external mouse.

This smells like a push to sell more touchscreen tablets that are useless for any serious work.

Revision history for this message
Timo Aaltonen (tjaalton) wrote :

John, file a new bug mentioning that it's a regression and still there in latest kernels, it should be easy to bisect if it happened between -74..-76.

leaving ubuntu would not help, you'd have to leave linux ;)

Displaying first 40 and last 40 comments. View all 113 comments or add a comment.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.