summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJosh Boyer <jwboyer@fedoraproject.org>2014-10-14 15:35:49 -0400
committerJosh Boyer <jwboyer@fedoraproject.org>2014-10-14 15:35:49 -0400
commitb7f21faed0bef6a76fdb45695e80c3474c233829 (patch)
treed5972612de879f6f5b79e112634b763edc823e98
parent7f1b8a88fb1168d40d9c812ca4d71ba3655c9115 (diff)
downloadkernel-b7f21faed0bef6a76fdb45695e80c3474c233829.tar.gz
kernel-b7f21faed0bef6a76fdb45695e80c3474c233829.tar.xz
kernel-b7f21faed0bef6a76fdb45695e80c3474c233829.zip
Add patches to fix elantech touchscreens (rhbz 1149509)
-rw-r--r--HID-usbhid-always-poll-quirk-for-Elan-Touchscreen-00.patch37
-rw-r--r--HID-usbhid-always-poll-quirk-for-Elan-Touchscreen-01.patch39
-rw-r--r--USB-quirks-device-qualifier-quirk-for-another-Elan-t.patch30
-rw-r--r--USB-quirks-enable-device-qualifier-quirk-for-another.patch32
-rw-r--r--kernel.spec15
5 files changed, 153 insertions, 0 deletions
diff --git a/HID-usbhid-always-poll-quirk-for-Elan-Touchscreen-00.patch b/HID-usbhid-always-poll-quirk-for-Elan-Touchscreen-00.patch
new file mode 100644
index 000000000..8ebd1fa1b
--- /dev/null
+++ b/HID-usbhid-always-poll-quirk-for-Elan-Touchscreen-00.patch
@@ -0,0 +1,37 @@
+From: Adel Gadllah <adel.gadllah@gmail.com>
+Date: Mon, 6 Oct 2014 15:32:01 +0200
+Subject: [PATCH] HID: usbhid: always-poll quirk for Elan Touchscreen 009b
+
+This device needs the quirk as well.
+---
+ drivers/hid/hid-ids.h | 1 +
+ drivers/hid/usbhid/hid-quirks.c | 1 +
+ 2 files changed, 2 insertions(+)
+
+diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h
+index cd9c9e96cf0e..27fbd138c509 100644
+--- a/drivers/hid/hid-ids.h
++++ b/drivers/hid/hid-ids.h
+@@ -298,6 +298,7 @@
+
+ #define USB_VENDOR_ID_ELAN 0x04f3
+ #define USB_DEVICE_ID_ELAN_TOUCHSCREEN 0x0089
++#define USB_DEVICE_ID_ELAN_TOUCHSCREEN_009B 0x009b
+
+ #define USB_VENDOR_ID_ELECOM 0x056e
+ #define USB_DEVICE_ID_ELECOM_BM084 0x0061
+diff --git a/drivers/hid/usbhid/hid-quirks.c b/drivers/hid/usbhid/hid-quirks.c
+index f3cb5b0a4345..40aac2158156 100644
+--- a/drivers/hid/usbhid/hid-quirks.c
++++ b/drivers/hid/usbhid/hid-quirks.c
+@@ -71,6 +71,7 @@ static const struct hid_blacklist {
+ { USB_VENDOR_ID_CH, USB_DEVICE_ID_CH_AXIS_295, HID_QUIRK_NOGET },
+ { USB_VENDOR_ID_DMI, USB_DEVICE_ID_DMI_ENC, HID_QUIRK_NOGET },
+ { USB_VENDOR_ID_ELAN, USB_DEVICE_ID_ELAN_TOUCHSCREEN, HID_QUIRK_ALWAYS_POLL },
++ { USB_VENDOR_ID_ELAN, USB_DEVICE_ID_ELAN_TOUCHSCREEN_009B, HID_QUIRK_ALWAYS_POLL },
+ { USB_VENDOR_ID_ELO, USB_DEVICE_ID_ELO_TS2700, HID_QUIRK_NOGET },
+ { USB_VENDOR_ID_FORMOSA, USB_DEVICE_ID_FORMOSA_IR_RECEIVER, HID_QUIRK_NO_INIT_REPORTS },
+ { USB_VENDOR_ID_FREESCALE, USB_DEVICE_ID_FREESCALE_MX28, HID_QUIRK_NOGET },
+--
+1.9.3
+
diff --git a/HID-usbhid-always-poll-quirk-for-Elan-Touchscreen-01.patch b/HID-usbhid-always-poll-quirk-for-Elan-Touchscreen-01.patch
new file mode 100644
index 000000000..15f0e9c2c
--- /dev/null
+++ b/HID-usbhid-always-poll-quirk-for-Elan-Touchscreen-01.patch
@@ -0,0 +1,39 @@
+From: Adel Gadllah <adel.gadllah@gmail.com>
+Date: Tue, 7 Oct 2014 18:45:09 +0200
+Subject: [PATCH] HID: usbhid: always-poll quirk for Elan Touchscreen 016f
+
+This device needs the quirk as well.
+
+Signed-off-by: Adel Gadllah <adel.gadllah@gmail.com>
+---
+ drivers/hid/hid-ids.h | 1 +
+ drivers/hid/usbhid/hid-quirks.c | 1 +
+ 2 files changed, 2 insertions(+)
+
+diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h
+index 27fbd138c509..e23ab8b30626 100644
+--- a/drivers/hid/hid-ids.h
++++ b/drivers/hid/hid-ids.h
+@@ -299,6 +299,7 @@
+ #define USB_VENDOR_ID_ELAN 0x04f3
+ #define USB_DEVICE_ID_ELAN_TOUCHSCREEN 0x0089
+ #define USB_DEVICE_ID_ELAN_TOUCHSCREEN_009B 0x009b
++#define USB_DEVICE_ID_ELAN_TOUCHSCREEN_016F 0x016f
+
+ #define USB_VENDOR_ID_ELECOM 0x056e
+ #define USB_DEVICE_ID_ELECOM_BM084 0x0061
+diff --git a/drivers/hid/usbhid/hid-quirks.c b/drivers/hid/usbhid/hid-quirks.c
+index 40aac2158156..5014bb567b29 100644
+--- a/drivers/hid/usbhid/hid-quirks.c
++++ b/drivers/hid/usbhid/hid-quirks.c
+@@ -72,6 +72,7 @@ static const struct hid_blacklist {
+ { USB_VENDOR_ID_DMI, USB_DEVICE_ID_DMI_ENC, HID_QUIRK_NOGET },
+ { USB_VENDOR_ID_ELAN, USB_DEVICE_ID_ELAN_TOUCHSCREEN, HID_QUIRK_ALWAYS_POLL },
+ { USB_VENDOR_ID_ELAN, USB_DEVICE_ID_ELAN_TOUCHSCREEN_009B, HID_QUIRK_ALWAYS_POLL },
++ { USB_VENDOR_ID_ELAN, USB_DEVICE_ID_ELAN_TOUCHSCREEN_016F, HID_QUIRK_ALWAYS_POLL },
+ { USB_VENDOR_ID_ELO, USB_DEVICE_ID_ELO_TS2700, HID_QUIRK_NOGET },
+ { USB_VENDOR_ID_FORMOSA, USB_DEVICE_ID_FORMOSA_IR_RECEIVER, HID_QUIRK_NO_INIT_REPORTS },
+ { USB_VENDOR_ID_FREESCALE, USB_DEVICE_ID_FREESCALE_MX28, HID_QUIRK_NOGET },
+--
+1.9.3
+
diff --git a/USB-quirks-device-qualifier-quirk-for-another-Elan-t.patch b/USB-quirks-device-qualifier-quirk-for-another-Elan-t.patch
new file mode 100644
index 000000000..8329406df
--- /dev/null
+++ b/USB-quirks-device-qualifier-quirk-for-another-Elan-t.patch
@@ -0,0 +1,30 @@
+From: Adel Gadllah <adel.gadllah@gmail.com>
+Date: Tue, 7 Oct 2014 18:42:28 +0200
+Subject: [PATCH] USB: quirks: device-qualifier quirk for another Elan
+ touchscreen
+
+Yet another device affected by this.
+
+Signed-off-by: Adel Gadllah <adel.gadllah@gmail.com>
+---
+ drivers/usb/core/quirks.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/drivers/usb/core/quirks.c b/drivers/usb/core/quirks.c
+index 0999e0285e07..8ebe6254d013 100644
+--- a/drivers/usb/core/quirks.c
++++ b/drivers/usb/core/quirks.c
+@@ -98,6 +98,10 @@ static const struct usb_device_id usb_quirk_list[] = {
+ USB_QUIRK_DEVICE_QUALIFIER },
+
+ /* Elan Touchscreen */
++ { USB_DEVICE(0x04f3, 0x016f), .driver_info =
++ USB_QUIRK_DEVICE_QUALIFIER },
++
++ /* Elan Touchscreen */
+ { USB_DEVICE(0x04f3, 0x009b), .driver_info =
+ USB_QUIRK_DEVICE_QUALIFIER },
+
+--
+1.9.3
+
diff --git a/USB-quirks-enable-device-qualifier-quirk-for-another.patch b/USB-quirks-enable-device-qualifier-quirk-for-another.patch
new file mode 100644
index 000000000..49f84d97e
--- /dev/null
+++ b/USB-quirks-enable-device-qualifier-quirk-for-another.patch
@@ -0,0 +1,32 @@
+From: Adel Gadllah <adel.gadllah-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
+Date: Sun, 5 Oct 2014 18:32:34 +0200
+Subject: [PATCH] USB: quirks: enable device-qualifier quirk for another Elan
+ touchscreen
+
+Currently this quirk is enabled for the model with the device id 0x0089, it
+is needed for the 0x009b model, which is found on the Fujitsu Lifebook u904
+as well.
+
+Signed-off-by: Adel Gadllah <adel.gadllah-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
+---
+ drivers/usb/core/quirks.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/drivers/usb/core/quirks.c b/drivers/usb/core/quirks.c
+index 5ae883dc21f5..0999e0285e07 100644
+--- a/drivers/usb/core/quirks.c
++++ b/drivers/usb/core/quirks.c
+@@ -97,6 +97,10 @@ static const struct usb_device_id usb_quirk_list[] = {
+ { USB_DEVICE(0x04f3, 0x0089), .driver_info =
+ USB_QUIRK_DEVICE_QUALIFIER },
+
++ /* Elan Touchscreen */
++ { USB_DEVICE(0x04f3, 0x009b), .driver_info =
++ USB_QUIRK_DEVICE_QUALIFIER },
++
+ /* Roland SC-8820 */
+ { USB_DEVICE(0x0582, 0x0007), .driver_info = USB_QUIRK_RESET_RESUME },
+
+--
+1.9.3
+
diff --git a/kernel.spec b/kernel.spec
index 5e8bda5a2..63b2fbb51 100644
--- a/kernel.spec
+++ b/kernel.spec
@@ -606,6 +606,12 @@ Patch26033: mnt-Prevent-pivot_root-from-creating-a-loop-in-the-m.patch
Patch26035: nf_reject_ipv4-module-license-unspecified-taints-ker.patch
+#rhbz 1149509
+Patch26036: USB-quirks-enable-device-qualifier-quirk-for-another.patch
+Patch26037: HID-usbhid-always-poll-quirk-for-Elan-Touchscreen-00.patch
+Patch26038: USB-quirks-device-qualifier-quirk-for-another-Elan-t.patch
+Patch26039: HID-usbhid-always-poll-quirk-for-Elan-Touchscreen-01.patch
+
# git clone ssh://git.fedorahosted.org/git/kernel-arm64.git, git diff master...devel
Patch30000: kernel-arm64.patch
@@ -1324,6 +1330,12 @@ ApplyPatch mnt-Prevent-pivot_root-from-creating-a-loop-in-the-m.patch
ApplyPatch nf_reject_ipv4-module-license-unspecified-taints-ker.patch
+#rhbz 1149509
+ApplyPatch USB-quirks-enable-device-qualifier-quirk-for-another.patch
+ApplyPatch HID-usbhid-always-poll-quirk-for-Elan-Touchscreen-00.patch
+ApplyPatch USB-quirks-device-qualifier-quirk-for-another-Elan-t.patch
+ApplyPatch HID-usbhid-always-poll-quirk-for-Elan-Touchscreen-01.patch
+
%if 0%{?aarch64patches}
ApplyPatch kernel-arm64.patch
%ifnarch aarch64 # this is stupid, but i want to notice before secondary koji does.
@@ -2192,6 +2204,9 @@ fi
# ||----w |
# || ||
%changelog
+* Tue Oct 14 2014 Josh Boyer <jwboyer@fedoraproject.org>
+- Add patches to fix elantech touchscreens (rhbz 1149509)
+
* Tue Oct 14 2014 Josh Boyer <jwboyer@fedoraproject.org> - 3.18.0-0.rc0.git8.1
- Linux v3.17-9283-g2d65a9f48fcd