diff --git a/HID-rmi-Disable-populating-F30-when-the-touchpad-has.patch b/HID-rmi-Disable-populating-F30-when-the-touchpad-has.patch new file mode 100644 index 000000000..fa519cf11 --- /dev/null +++ b/HID-rmi-Disable-populating-F30-when-the-touchpad-has.patch @@ -0,0 +1,44 @@ +From: Andrew Duggan +Date: Tue, 16 Jun 2015 14:08:41 -0700 +Subject: [PATCH] HID: rmi: Disable populating F30 when the touchpad has + physical buttons + +Physical buttons do not use F30 to report their state and in some cases the +data reported in F30 is incorrect and inconsistent with what is reported by +the HID descriptor. When physical buttons are present, ignore F30 and let +hid-input report buttons based on what is defined in the HID descriptor. + +Signed-off-by: Andrew Duggan +Reviewed-by: Benjamin Tissoires +Signed-off-by: Jiri Kosina +--- + drivers/hid/hid-rmi.c | 9 ++++++--- + 1 file changed, 6 insertions(+), 3 deletions(-) + +diff --git a/drivers/hid/hid-rmi.c b/drivers/hid/hid-rmi.c +index 368ffdf2c0a3..721f7f90a157 100644 +--- a/drivers/hid/hid-rmi.c ++++ b/drivers/hid/hid-rmi.c +@@ -1013,6 +1013,7 @@ static int rmi_populate_f30(struct hid_device *hdev) + + static int rmi_populate(struct hid_device *hdev) + { ++ struct rmi_data *data = hid_get_drvdata(hdev); + int ret; + + ret = rmi_scan_pdt(hdev); +@@ -1033,9 +1034,11 @@ static int rmi_populate(struct hid_device *hdev) + return ret; + } + +- ret = rmi_populate_f30(hdev); +- if (ret) +- hid_warn(hdev, "Error while initializing F30 (%d).\n", ret); ++ if (!(data->device_flags & RMI_DEVICE_HAS_PHYS_BUTTONS)) { ++ ret = rmi_populate_f30(hdev); ++ if (ret) ++ hid_warn(hdev, "Error while initializing F30 (%d).\n", ret); ++ } + + return 0; + } diff --git a/kernel.spec b/kernel.spec index 9fda1dddb..faef0fce6 100644 --- a/kernel.spec +++ b/kernel.spec @@ -620,6 +620,9 @@ Patch26231: kvm-x86-fix-kvm_apic_has_events-to-check-for-NULL-po.patch Patch26232: mm-shmem_zero_setup-skip-security-check-and-lockdep-.patch +# rhbz 1227891 +Patch26250: HID-rmi-Disable-populating-F30-when-the-touchpad-has.patch + # END OF PATCH DEFINITIONS %endif @@ -1358,6 +1361,9 @@ ApplyPatch kvm-x86-fix-kvm_apic_has_events-to-check-for-NULL-po.patch ApplyPatch mm-shmem_zero_setup-skip-security-check-and-lockdep-.patch +#rhbz 1227891 +ApplyPatch HID-rmi-Disable-populating-F30-when-the-touchpad-has.patch + # END OF PATCH APPLICATIONS %endif @@ -2222,6 +2228,9 @@ fi # # %changelog +* Thu Jun 18 2015 Josh Boyer +- Add patch to fix touchpad issues on Razer machines (rhbz 1227891) + * Tue Jun 16 2015 Josh Boyer - 4.1.0-0.rc8.git0.2 - Bump for rebuild to hopefully fix size issues due to elfutils bug