Update: I've made dumps of the mouse... from inspection the protocol looks reasonably straight forward, I will try and get a prototype driver written today/tomorrow.
Update2: I've identified the mouse as being a variant of the cypress trackpad which does have support in the Linux kernel.
Update3: I made a mistake and it's not cypress, but I've worked out how to decode this protocol.
Update4:
The driver is WORKING. I'll be posting the source code and instructions on how to build once I've tidied the code up and tested it a bit more.
My implementation is based off the current linux HEAD
https://github.com/raedwulf/linux/tree/byd
Thanks for testing! I suspect that the identification code that the datasheet provides is erroneous... but can you print the output of dmesg if/when it detects the trackpad correctly (search for BYDPS)? One of the main issues with the trackpad is that it doesn't support absolute position reporting/pressure - even on windows - all multitouch detection is done within the firmware. I can, however, expose some features, such as enabling/disabling tapping - which hasn't been implemented yet.Just tried this Kernel. Compiled and installed fine. lspci and lsusb don't return any results for detecting the trackpad, but it shows up under xinput list and /proc/bus/input/devices
Does two-finger scroll work?What are you using to enable / configure functionality for the trackpad? I'm using Fedora 22 right now and the Gnome Settings configuration tool is absolutely useless unless all you want to do is manipulate cursor and click speed
As to the wireless... I can only guess that the mainline kernel has some changes that may affect it?it takes a while for my wireless to load now
Thanks for testing! I suspect that the identification code that the datasheet provides is erroneous... but can you print the output of dmesg if/when it detects the trackpad correctly (search for BYDPS)? One of the main issues with the trackpad is that it doesn't support absolute position reporting/pressure - even on windows - all multitouch detection is done within the firmware. I can, however, expose some features, such as enabling/disabling tapping - which hasn't been implemented yet.
lspci and lsusb won't return anything special because it's a PS/2 device.
Does two-finger scroll work?
If nothing works, can you also edit drivers/input/mouse/byd.c and uncomment #define DEBUG 1 - this will make very verbose output for dmesg by reporting everything.
As to the wireless... I can only guess that the mainline kernel has some changes that may affect it?
Currently nothing seems to.
However, you'll need to map them appropriately - the driver reports them but many aren't handled by anything in X11 apart from the two finger scroll and three finger tap - and the three finger swipe for backwards & forwards in the browser.
Put this script into drivers/input/mouse and run it. This automatically builds and installs psmouse.ko into your current running kernel. Feel free to modify if necessary as it is quite straight forward - for instance to not install automatically.
I did a bad commit earlier - so please update the repo before using the script.
https://gist.github.com/137d4797f63236ed27bd