Re: [PATCH 2/2] HID: multitouch: enable the Surface 3 Type Cover to report multitouch data

From: Benjamin Tissoires
Date: Fri Jun 03 2016 - 05:39:15 EST


On Jun 02 2016 or thereabouts, Andy Shevchenko wrote:
> On Thu, 2016-06-02 at 16:11 +0200, Benjamin Tissoires wrote:
> > > > > >Â
> > On May 31 2016 or thereabouts, Andy Shevchenko wrote:
> > > On Tue, 2016-05-31 at 18:07 +0200, Benjamin Tissoires wrote:
> > > > On May 20 2016 or thereabouts, Benjamin Tissoires wrote:
> > > > > On May 13 2016 or thereabouts, Andy Shevchenko wrote:
> > > > > Would you mind sending me a hid-recorder[1] trace of the device
> > > > > while
> > > > > typing few keys and using the touchpad?
> > > >Â
>
> > OK, so it looks like your touchpad stays in the mouse emulation mode
> > for
> > some reasons. Did you do the recordings with hid-multitouch patched,
> > or
> > with plain hid-generic or an other one?
>
> I take linux-next + your two patches from this thread (+ some unrelated
> to HID patches).

OK. I think I know what happened:
- Microsoft forgot to put the Win 8 certification blob in this
particular device (of course, because Microsoft)
- we do not detect it as a Win 8 certified and do not set the
HID_QUIRK_NO_INIT_REPORTS flag
- your dmesg should show some error on plug, and then hid can't set the
input mode
- I can't add a "if win 8 then show the mouse collection" because your
device doesn't report itself as win 8 :)

Anyway, could you try applying this small diff after my 2 patches and
report if you now have a working touchpad?:

diff --git a/drivers/hid/hid-multitouch.c b/drivers/hid/hid-multitouch.c
index ac35731..e51a753 100644
--- a/drivers/hid/hid-multitouch.c
+++ b/drivers/hid/hid-multitouch.c
@@ -1379,6 +1379,10 @@ static const struct hid_device_id mt_devices[] = {
MT_USB_DEVICE(USB_VENDOR_ID_ILITEK,
USB_DEVICE_ID_ILITEK_MULTITOUCH) },

+ /* Microsoft */
+ { .driver_data = MT_CLS_WIN_8,
+ MT_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, 0x07cd) },
+
/* MosArt panels */
{ .driver_data = MT_CLS_CONFIDENCE_MINUS_ONE,
MT_USB_DEVICE(USB_VENDOR_ID_ASUS,

---

Cheers,
Benjamin

>
> >
> > After further thoughts, I think it should be acceptable to enable the
> > mouse collection for Win 8 certified devices. Touchscreens are not
> > supposed to expose such a mouse emulation, so that would mean that
> > only
> > touchpad will export one.
> >
>
> > I'll come with a patch by the end of the week (hopefully).
>
> Cc me and I will test 'em.
>
>
> --
> Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
> Intel Finland Oy