From f74b8161c626bf43bbacaeb1b7a3002b03c9a118 Mon Sep 17 00:00:00 2001 From: Jason Ritzke Date: Sun, 21 Feb 2016 15:57:50 -0800 Subject: [PATCH] Create linux_010_disable_hid-sony_size_check.patch Attempting to fix malfunctioning of new DS4 controllers --- ...linux_010_disable_hid-sony_size_check.patch | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 packages/linux/patches/linux_010_disable_hid-sony_size_check.patch diff --git a/packages/linux/patches/linux_010_disable_hid-sony_size_check.patch b/packages/linux/patches/linux_010_disable_hid-sony_size_check.patch new file mode 100644 index 0000000000..1dfa7197e5 --- /dev/null +++ b/packages/linux/patches/linux_010_disable_hid-sony_size_check.patch @@ -0,0 +1,18 @@ +diff --git a/drivers/hid/hid-sony.c b/drivers/hid/hid-sony.c +index 1041c44..876ea2b 100644 +--- a/drivers/hid/hid-sony.c ++++ b/drivers/hid/hid-sony.c +@@ -1139,11 +1139,11 @@ static __u8 *sony_report_fixup(struct hid_device *hdev, __u8 *rdesc, + * the gyroscope values to corresponding axes so we need a + * modified one. + */ +- if ((sc->quirks & DUALSHOCK4_CONTROLLER_USB) && *rsize == 467) { ++ if (sc->quirks & DUALSHOCK4_CONTROLLER_USB) { + hid_info(hdev, "Using modified Dualshock 4 report descriptor with gyroscope axes\n"); + rdesc = dualshock4_usb_rdesc; + *rsize = sizeof(dualshock4_usb_rdesc); +- } else if ((sc->quirks & DUALSHOCK4_CONTROLLER_BT) && *rsize == 357) { ++ } else if (sc->quirks & DUALSHOCK4_CONTROLLER_BT) { + hid_info(hdev, "Using modified Dualshock 4 Bluetooth report descriptor\n"); + rdesc = dualshock4_bt_rdesc; + *rsize = sizeof(dualshock4_bt_rdesc);