On Mon, Feb 20, 2017 at 8:13 PM, Linus Torvalds <torva...@linux-foundation.org> wrote: > > Hmm. It's commit 279967a65b32 ("HID: rmi: Handle all Synaptics > touchpads using hid-rmi"). > > And the reason seems to be stupid: I don't have RMI enabled at all, > because that didn't use to work or make a difference. > > Maybe that "let's use RMI" code should depend on RMI actually being > enabled? Because as-is, that code now breaks existing configurations.
Yeah, so enabling HID_RMI makes my touchpad work again. But this really was a stupid waste of time, and I really think that the synaptics code should leave the HID group as generic or multitouch-win8 _unless_ the HID RMI support is actually enabled. IOW, something like the attached (untested) patch, perhaps? Linus
drivers/hid/hid-core.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/hid/hid-core.c b/drivers/hid/hid-core.c index 538ff697a4cf..41c88c50a96b 100644 --- a/drivers/hid/hid-core.c +++ b/drivers/hid/hid-core.c @@ -821,7 +821,8 @@ static int hid_scan_report(struct hid_device *hid) case USB_VENDOR_ID_SYNAPTICS: if (hid->group == HID_GROUP_GENERIC || hid->group == HID_GROUP_MULTITOUCH_WIN_8) - if ((parser->scan_flags & HID_SCAN_FLAG_VENDOR_SPECIFIC) + if (IS_ENABLED(CONFIG_HID_RMI) + && (parser->scan_flags & HID_SCAN_FLAG_VENDOR_SPECIFIC) && (parser->scan_flags & HID_SCAN_FLAG_GD_POINTER)) /* * hid-rmi should take care of them,