Wow, what a flurry of activity! I don't have much to add beyond Alan's patch on its own did not work for me, I am assuming this is due to manually needing to assign it to evdev which I did not do. Also, on the dim/brightness keys, these control the backlight of the keyboard itself and as far as I can tell do not even pass any signal to the device's native Windows 8. Can probably test a little more tonight or tomorrow, but I am in the middle of exams I'm afraid and this could be a dangerously effective form of procrastination, so I won't be able to so much for a couple of weeks yet. Given the tiny scope of the current patch, is there a chance it could get into 3.18 as is so people at least have a working keyboard, then we continue to work on a proper solution for later? Jarrad P.S. sorry, my win8 mail app lies about sending in plaintext mode. On 4 November 2014 08:27, Benjamin Tissoires <benjamin.tissoires@xxxxxxxxx> wrote: > On Mon, Nov 3, 2014 at 4:15 PM, Alan Wu <alan.c.wu@xxxxxxxxx> wrote: >> My initial checks after sudo cat /dev/hidraw0 shows that moving multiple >> fingers does work with my patch as earlier using hid-microsoft. However, >> the dim and brightness keys (Fn+F1, Fn+F2) does not work. >> >> My tests with multiple fingers include: >> moving one finger, >> adding and moving second finger with first finger held, >> moving first finger with second finger stationary, >> adding and moving third finger with first and second finger held, >> moving first or second finger with third finger held. >> repeating with up to eight fingers. >> >> It is hard to check moving two fingers at the same time with another one (or >> more) fingers held stationary because the way the output works. It comes >> out something like this, so I can't tell if they are doing what they are >> supposed to. >> ^@^@^C\377^@^@ >> >> Please let me know how to continue testing. > > You can check the various event node outputs by using evemu. > If the touchpad presents ABS_MT_SLOT and makes use of it, you are > using the raw reporting mode. > > You can also assess it with programs like mtview[1] of mtdiag-qt[2] > (both need to be run as root to get access to the event nodes). > >> I'm currently adding the hid_have_special_driver >> and a couple other lines from Jarrad's website to the patch and will test it >> soon before submitting. >> >> Also, how can I continue this thread to linux-input mailing list from gmail? >> It keeps rejecting my mail. > > You need to use the "Plain Text Mode" mode. There is a small arrow on > the bottom right of the compose window (next to the trash) and > above "Print", you have the previously mentioned mode. > > Cheers, > Benjamin > > [1] https://github.com/whot/mtview (or maybe > http://bitmath.org/code/mtview/, I can not remember if the bitmath one > is still actively supported) > [2] https://github.com/bentiss/mtdiag-qt > > >> >> On Mon, Nov 3, 2014 at 12:39 PM, Benjamin Tissoires >> <benjamin.tissoires@xxxxxxxxx> wrote: >>> >>> On Mon, Nov 3, 2014 at 3:33 PM, Andrew Duggan <andrew.duggan@xxxxxxxxx> >>> wrote: >>> > >>> > >>> > On Mon, Nov 3, 2014 at 7:28 AM, Benjamin Tissoires >>> > <benjamin.tissoires@xxxxxxxxx> wrote: >>> >> >>> >> On Mon, Nov 3, 2014 at 8:33 AM, Jiri Kosina <jkosina@xxxxxxx> wrote: >>> >> > On Fri, 24 Oct 2014, Jarrad Whitaker wrote: >>> >> > >>> >> >> The keyboard on the Surface Pro 3 type cover does not function >>> >> >> without >>> >> >> some patching, similar to what was apparently required for the SP2 >>> >> >> type/touch covers. >>> >> >> >>> >> >> A working patch against 3.16 attached, it's an amalgamation of "some >>> >> >> dude posted this on the ubuntu/arch forums and it seems to work" so >>> >> >> I'm making no claims that it's kernel-quality! Just trying to give a >>> >> >> better indication of what needs to be added. My C is rudimentary and >>> >> >> my knowledge of the kernel limited to 'fakeroot debian/rules >>> >> >> updateconfigs', sorry. :) >>> >> >> Happy to test any improved version, but note I only have a type, not >>> >> >> a >>> >> >> touch cover. >>> >> >> >>> >> >> Patch source is >>> >> >> http://winaero.com/blog/how-to-install-linux-on-surface-pro-3/, >>> >> >> which >>> >> >> in turn sources a Russian site. >>> >> > >>> >> > Hi, >>> >> > >>> >> > thanks. Adding Alan Wu to CC, who sent me a slightly different patch >>> >> > for >>> >> > this issue -- see the archives of linux-input list from a few days >>> >> > back. >>> >> > >>> >> > Your patch is missing at least Signed-off-by: line, and also seems to >>> >> > lack >>> >> > the update to hid_have_special_driver[]. >>> >> >>> >> Jiri, actually, the hid_have_special_driver entry is not 100% required >>> >> to make it work (though it would be cleaner, I agree). >>> >> Actually, the TypeCover presents a Precision TouchPad, so hid-core >>> >> considers it should have the hid-multitouch driver driving it (see >>> >> https://bugzilla.redhat.com/show_bug.cgi?id=1135338 ) >>> >> >>> >> I am not sure we should use hid-multitouch or hid-microsoft. My guess >>> >> is that both will work, but hid-multitouch might provide true raw >>> >> reporting for the touchpad. On the other hand, maybe hid-microsoft >>> >> will bind special keys that hid-multitouch will not... >>> >> >>> > I would think that being able to do multifinger gestures would make >>> > using >>> > hid-multitouch preferable. Using hid-microsoft will keep the touchpad in >>> > mouse mode since the host needs to send the feature report to switch the >>> > touchpad into PTP mode. In PTP mode, this touchpad will report absolute >>> > data >>> > for three fingers. >>> > >>> > I think the main issue is how do you get the keyboard working when the >>> > device is using the hid-multitouch driver. After looking at the bug >>> > above >>> > and Benjamin's changes on Github it looks like adding an entry in >>> > mt_devices >>> > and setting MT_CLS_EXPORT_ALL_INPUTS would also export the keyboard. Is >>> > that >>> > correct? I haven't been able to try it out. >>> >>> Correct. See >>> https://github.com/bentiss/hid-multitouch/commit/999eb73d37bab0b72f775f2150b1c27488610414 >>> The reporter seems to claim that it works for him, but I need to check >>> if the touchpad is correctly presented (properties, etc), if the >>> touchpad data come from the raw node, and not the mouse node, and if >>> there is no problems with respect to the keyboard. I'd prefer the >>> owners of the device to double check all of this. >>> >>> > >>> > If hid-microsoft has functionality which hid-multitouch doesn't provide >>> > is >>> > there a way to combine the two without reimplementing the functionality >>> > of >>> > one driver into the other? >>> >>> The problem with this device is that the keyboard and touchpad are on >>> the same hid device, on different collections. So if hid-microsoft >>> does fancy stuff on the keyboard level, the only option will be to >>> merge hid-multitouch in hid-input (this might be needed at some >>> point). >>> >>> Cheers, >>> Benjamin >>> >>> > >>> >> >>> >> If the path is to go through hid-microsoft, then Jarrad, Alan, yes, >>> >> please, add your device to hid_have_special_driver. >>> >> >>> >> Cheers, >>> >> Benjamin >>> >> >>> >> > >>> >> > Could you two guys please cooperate and send me a patch that should >>> >> > be >>> >> > applied? I don't have the device so can't really test properly >>> >> > myself. >>> >> > >>> >> > Thanks, >>> >> > >>> >> > -- >>> >> > Jiri Kosina >>> >> > SUSE Labs >>> >> > -- >>> >> > To unsubscribe from this list: send the line "unsubscribe >>> >> > linux-input" >>> >> > in >>> >> > the body of a message to majordomo@xxxxxxxxxxxxxxx >>> >> > More majordomo info at http://vger.kernel.org/majordomo-info.html >>> >> -- >>> >> To unsubscribe from this list: send the line "unsubscribe linux-input" >>> >> in >>> >> the body of a message to majordomo@xxxxxxxxxxxxxxx >>> >> More majordomo info at http://vger.kernel.org/majordomo-info.html >>> > >>> > >> >> -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html