Clickpad not working on Dell Inspiron 13 7000, running Ubuntu 14.04

I installed Ubuntu 14.04 on my Dell Inspiron 13 7000, everything works except the clickpad. It does not respond at all.

I ran

sudo xinput

and got this output:

⎡ Virtual core pointer                          id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ ELAN Touchscreen Pen                      id=14   [slave  pointer  (2)]
⎜   ↳ ELAN Touchscreen                          id=15   [slave  pointer  (2)]
⎜   ↳ DLL0674:00 06CB:75DB                      id=16   [slave  pointer  (2)]
⎜   ↳ SynPS/2 Synaptics TouchPad                id=18   [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)]
    ↳ Sleep Button                              id=9    [slave  keyboard (3)]
    ↳ Integrated_Webcam_HD                      id=13   [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=17   [slave  keyboard (3)]
    ↳ Dell WMI hotkeys                          id=19   [slave  keyboard (3)]

Before I kicked Windows off the machine I powered it and the Touchepad works, it's not a hardware issue.

UPDATE: I tried

xinput --test 18

and

xinput --test 16

No numbers appeared when I tried to use the clickpad.


This won't help, but only to provide some info about what's happening.

The latest "Precision touch pad" (PTP) devices, which were developed according to Microsoft's PTP spec for Windows 8, are i2c devices. But, they also have a required fallback to PS/2 mode, which allows them to work with non-i2c-aware OSes.

In PTP mode (i2c), the device simply reports three to five individual X/Y coordinates for touch. No relative mouse data is reported. Windows 8 (and other driver-supported OSes) use these points to either compute a relative mouse delta (single point) or gestures.

In PS/2 mode, obviously, it works like a normal touchpad.

The problem here is that Linux is i2c-aware, but does not have the proper driver to get the HID report descriptor and other necessary data to work with the PTP device. The attempt to work with the i2c device fails, but the device is stuck in i2c mode and won't respond to the Synaptics PS/2 driver.

I have this same laptop, and am going to attempt to install Linux Mint 17 (after I finish imaging the stock install with G4L) I will attempt the 'blacklist i2c-hid' solution/workaround described here:

http://trustdarkness.com/wordpress/dell-sputnik-xps-13-touchpad-settings-not-working-in-updated-ubuntumint/

...and see what happens...

[UPDATE]

The touchpad is working with the blacklist entry (and the touch screen continues to work as well). This is not an ideal solution, because a PTP touchpad running over an i2c bus is capable of so much more than a simple PS/2 touchpad. But, I'm hopeful we'll get a proper driver for i2c and be able to use the full capabilities in Linux soon.

[UPDATE 2]

Doing more research, I found out that the clickpad is part of Synaptics' RMI4 line of products, and the latest kernels have driver support. So, I followed this guide to downloading, building and installing the latest Linux kernel:

http://forums.linuxmint.com/viewtopic.php?f=42&t=131433

After installing, and before rebooting, remove the blacklist entry you created for the clickpad. Reboot, and... now it works better.

The acceleration and speed settings will need to be readjusted, but I've found that tapping and two-finger scrolling works MUCH better in i2c mode than PS/2.

On a side note, the newer kernel/driver for the Intel wireless module in this laptop also seems to provide better performance than what I had in place before.