Olivier Fock,
Thanks for your work on this, that is some excellent detective work.
Also good to know that the "incomplete report" errors are also happening
in a working setup.
The buttons starting to work after you updating the drivers/hid
directory is expected, I have done several fixes to the hid-mt button
handling, so I was already hoping that was fixed, but the other problem
was blocking testing this.
So now I think we need to figure out which change exactly between the
4.14-rc7 and 4.14-rc8 drivers/base directory is causing the problem. To
be clear are you talking vanilla 4.14-rc7 and 4.14-rc8 here, or Ubuntu
kernel builds.
Looking at your diff, one thing which you could try is reverting this in
your kernel / reapplying this fix from 4.14-rc8:
--- a/drivers/base/regmap/regmap.c 2018-05-16 10:10:32.000000000 +0200
+++ b/drivers/base/regmap/regmap.c 2017-10-29 21:58:38.000000000 +0100
@@ -1739,7 +1739,7 @@
return -EINVAL;
if (val_len % map->format.val_bytes)
return -EINVAL;
- if (map->max_raw_write && map->max_raw_write < val_len)
+ if (map->max_raw_write && map->max_raw_write > val_len)
return -E2BIG;
map->lock(map->lock_arg);
The fix which went into your 4.14-rc8 (I don't see this in the vanilla
4.14-rc8) is obviously correct, but it could be that this is allowing
some other driver to do something somewhere which is making the touchpad
not work.
Something else to try is to revert this commit:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/drivers/base?h=v4.14-rc7&id=0cc2b4e5a020fc7f4d1795741c116c983e9467d7
Which is in 4.17-rc7 but not in any later kernels, so your copying over
of the drivers/base dir from 4.17-rc7 adds that commit and it would be
interesting to see if dropping that commit from your special working
kernel makes it non working again.
Eventually a different version of that commit did go upstream:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit?id=0759e80b84e34a84e7e46e2b1adb528c83d84a47
But that is slightly different, so perhaps the original fix happens to
somehow make the touchpad work.
Note there is no need to try reverting this commit if changing the
max_raw_write check breaks/unbreaks the touchpad, then that is likely
the cause and we need to debug further from there.
--
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/1728244
Title:
Touchpad stops working after reboot on Apollo Lake
Status in Linux:
Unknown
Status in linux package in Ubuntu:
Triaged
Bug description:
On the Jumper EZBook 3 Pro (V4) laptop, using an Apollo Lake N3450
processor, if you install Ubuntu 17.10 (or less) with isorespin and
use rEFInd as bootloader (this is the only way to get linux booting on
this laptop) everything works out of the box, but after a reboot or
two the touchpad stops working. Both in Ubuntu and Windows 10. The
only way to restore functionality is to boot from usb key ubuntu 17.10
respined, or disassemble laptop and detach-reattach battery cable.
This is mesg | grep i2c_hid:
[ 2056.460636] i2c_hid i2c-SYNA3602:00: i2c_hid_get_input: incomplete report
(27/34)
[ 3077.604699] i2c_hid i2c-SYNA3602:00: failed to reset device.
[ 3077.605473] dpm_run_callback(): i2c_hid_resume+0x0/0xe0 [i2c_hid] returns
-61
[ 3080.468156] i2c_hid i2c-SYNA3602:00: i2c_hid_get_input: incomplete report
(27/34)
uname -rvps
Linux 4.10.0-32-generic #36~16.04.1-Ubuntu SMP Wed Aug 9 09:19:02 UTC 2017
x86_64
There has to be a bug in the kernel. Any way to avoid this?
To manage notifications about this bug go to:
https://bugs.launchpad.net/linux/+bug/1728244/+subscriptions
--
Mailing list: https://launchpad.net/~kernel-packages
Post to : [email protected]
Unsubscribe : https://launchpad.net/~kernel-packages
More help : https://help.launchpad.net/ListHelp