I took some more time to research and I wrote a proper patch this time.
It's just six lines of code.
What this patch does is basically restore "hid_get_raw_report" field in "struct hid_device".
All the lines that are added by this patch were previously removed by this commit:
commit aa6c390c4d59c9ff4fffd887e15783b2b793951b
Author: Benjamin Tissoires
HID: remove hid_get_raw_report in struct hid_device
More in depth description:
The field "hid_get_raw_report" was deprecated in more recent versions of the Linux kernel in favour of function "hid_hw_raw_request" but in 3.13 mainline the former is still used.
The hid-sony kernel driver in 3.13 relied on that field because the ps3 controller needs special quirks in order to set it's operational mode.
Function "hid_hw_raw_request" failed to do that.
To anyone willing to test it and report back:
git clone git://kernel.ubuntu.com/ubuntu/ubuntu-trusty.git ubuntu-trusty
cp sixaxis-trusty.patch ubuntu-trusty
cd ubuntu-trusty
git apply sixaxis-trusty.patch
CONCURRENCY_LEVEL=$(nproc) fakeroot make-kpkg --initrd kernel_image kernel_headers
After that, install the deb packages created and reboot using the new kernel.
@jsalisbury
I hope this helps to finally put an end to our investigation.
I took some more time to research and I wrote a proper patch this time.
It's just six lines of code.
What this patch does is basically restore "hid_get_ raw_report" field in "struct hid_device". f4fffd887e15783 b2b793951b
All the lines that are added by this patch were previously removed by this commit:
commit aa6c390c4d59c9f
Author: Benjamin Tissoires
HID: remove hid_get_raw_report in struct hid_device
More in depth description: raw_report" was deprecated in more recent versions of the Linux kernel in favour of function "hid_hw_ raw_request" but in 3.13 mainline the former is still used. raw_request" failed to do that.
The field "hid_get_
The hid-sony kernel driver in 3.13 relied on that field because the ps3 controller needs special quirks in order to set it's operational mode.
Function "hid_hw_
This patch fixes the issue in a much cleaner way and leaves the changes necessary to fix bug http:// bugs.launchpad. net/bugs/ 1305522 intact.
To anyone willing to test it and report back: ubuntu. com/ubuntu/ ubuntu- trusty. git ubuntu-trusty trusty. patch ubuntu-trusty trusty. patch LEVEL=$ (nproc) fakeroot make-kpkg --initrd kernel_image kernel_headers
git clone git://kernel.
cp sixaxis-
cd ubuntu-trusty
git apply sixaxis-
CONCURRENCY_
After that, install the deb packages created and reboot using the new kernel.
@jsalisbury
I hope this helps to finally put an end to our investigation.