From: Greg Kroah-Hartman Date: Thu, 10 Oct 2013 23:57:05 +0000 (-0700) Subject: 3.10-stable patches X-Git-Tag: v3.0.100~6^2~2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=b971b56ea7b20beceea0e7142409475fc23ff030;p=thirdparty%2Fkernel%2Fstable-queue.git 3.10-stable patches added patches: hid-roccat-add-support-for-konepureoptical-v2.patch hid-uhid-add-devname-module-alias.patch hid-uhid-allocate-static-minor.patch net-qmi_wwan-add-new-qualcomm-devices.patch --- diff --git a/queue-3.10/hid-roccat-add-support-for-konepureoptical-v2.patch b/queue-3.10/hid-roccat-add-support-for-konepureoptical-v2.patch new file mode 100644 index 00000000000..93a416e5dbd --- /dev/null +++ b/queue-3.10/hid-roccat-add-support-for-konepureoptical-v2.patch @@ -0,0 +1,58 @@ +From a4be0ed39f2b1ea990804ea54e39bc42d17ed5a5 Mon Sep 17 00:00:00 2001 +From: Stefan Achatz +Date: Fri, 30 Aug 2013 14:10:07 +0200 +Subject: HID: roccat: add support for KonePureOptical v2 + +From: Stefan Achatz + +commit a4be0ed39f2b1ea990804ea54e39bc42d17ed5a5 upstream. + +KonePureOptical is a KonePure with different sensor. + +Signed-off-by: Stefan Achatz +Signed-off-by: Jiri Kosina +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/hid/hid-core.c | 1 + + drivers/hid/hid-ids.h | 1 + + drivers/hid/hid-roccat-konepure.c | 3 ++- + 3 files changed, 4 insertions(+), 1 deletion(-) + +--- a/drivers/hid/hid-core.c ++++ b/drivers/hid/hid-core.c +@@ -1755,6 +1755,7 @@ static const struct hid_device_id hid_ha + { HID_USB_DEVICE(USB_VENDOR_ID_ROCCAT, USB_DEVICE_ID_ROCCAT_ISKU) }, + { HID_USB_DEVICE(USB_VENDOR_ID_ROCCAT, USB_DEVICE_ID_ROCCAT_KONEPLUS) }, + { HID_USB_DEVICE(USB_VENDOR_ID_ROCCAT, USB_DEVICE_ID_ROCCAT_KONEPURE) }, ++ { HID_USB_DEVICE(USB_VENDOR_ID_ROCCAT, USB_DEVICE_ID_ROCCAT_KONEPURE_OPTICAL) }, + { HID_USB_DEVICE(USB_VENDOR_ID_ROCCAT, USB_DEVICE_ID_ROCCAT_KOVAPLUS) }, + { HID_USB_DEVICE(USB_VENDOR_ID_ROCCAT, USB_DEVICE_ID_ROCCAT_LUA) }, + { HID_USB_DEVICE(USB_VENDOR_ID_ROCCAT, USB_DEVICE_ID_ROCCAT_PYRA_WIRED) }, +--- a/drivers/hid/hid-ids.h ++++ b/drivers/hid/hid-ids.h +@@ -705,6 +705,7 @@ + #define USB_DEVICE_ID_ROCCAT_KONE 0x2ced + #define USB_DEVICE_ID_ROCCAT_KONEPLUS 0x2d51 + #define USB_DEVICE_ID_ROCCAT_KONEPURE 0x2dbe ++#define USB_DEVICE_ID_ROCCAT_KONEPURE_OPTICAL 0x2db4 + #define USB_DEVICE_ID_ROCCAT_KONEXTD 0x2e22 + #define USB_DEVICE_ID_ROCCAT_KOVAPLUS 0x2d50 + #define USB_DEVICE_ID_ROCCAT_LUA 0x2c2e +--- a/drivers/hid/hid-roccat-konepure.c ++++ b/drivers/hid/hid-roccat-konepure.c +@@ -262,6 +262,7 @@ static int konepure_raw_event(struct hid + + static const struct hid_device_id konepure_devices[] = { + { HID_USB_DEVICE(USB_VENDOR_ID_ROCCAT, USB_DEVICE_ID_ROCCAT_KONEPURE) }, ++ { HID_USB_DEVICE(USB_VENDOR_ID_ROCCAT, USB_DEVICE_ID_ROCCAT_KONEPURE_OPTICAL) }, + { } + }; + +@@ -300,5 +301,5 @@ module_init(konepure_init); + module_exit(konepure_exit); + + MODULE_AUTHOR("Stefan Achatz"); +-MODULE_DESCRIPTION("USB Roccat KonePure driver"); ++MODULE_DESCRIPTION("USB Roccat KonePure/Optical driver"); + MODULE_LICENSE("GPL v2"); diff --git a/queue-3.10/hid-uhid-add-devname-module-alias.patch b/queue-3.10/hid-uhid-add-devname-module-alias.patch new file mode 100644 index 00000000000..841ad9a824b --- /dev/null +++ b/queue-3.10/hid-uhid-add-devname-module-alias.patch @@ -0,0 +1,27 @@ +From 60cbd53e4bf623fe978e6f23a6da642e730fde3a Mon Sep 17 00:00:00 2001 +From: Marcel Holtmann +Date: Sun, 1 Sep 2013 11:02:46 -0700 +Subject: HID: uhid: add devname module alias + +From: Marcel Holtmann + +commit 60cbd53e4bf623fe978e6f23a6da642e730fde3a upstream. + +For simple device node creation, add the devname module alias. + +Signed-off-by: Marcel Holtmann +Reviewed-by: David Herrmann +Signed-off-by: Jiri Kosina +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/hid/uhid.c | 1 + + 1 file changed, 1 insertion(+) + +--- a/drivers/hid/uhid.c ++++ b/drivers/hid/uhid.c +@@ -659,3 +659,4 @@ module_exit(uhid_exit); + MODULE_LICENSE("GPL"); + MODULE_AUTHOR("David Herrmann "); + MODULE_DESCRIPTION("User-space I/O driver support for HID subsystem"); ++MODULE_ALIAS("devname:" UHID_NAME); diff --git a/queue-3.10/hid-uhid-allocate-static-minor.patch b/queue-3.10/hid-uhid-allocate-static-minor.patch new file mode 100644 index 00000000000..04d9146945e --- /dev/null +++ b/queue-3.10/hid-uhid-allocate-static-minor.patch @@ -0,0 +1,64 @@ +From 19872d20c890073c5207d9e02bb8f14d451a11eb Mon Sep 17 00:00:00 2001 +From: David Herrmann +Date: Mon, 9 Sep 2013 18:33:54 +0200 +Subject: HID: uhid: allocate static minor + +From: David Herrmann + +commit 19872d20c890073c5207d9e02bb8f14d451a11eb upstream. + +udev has this nice feature of creating "dead" /dev/ device-nodes if +it finds a devnode: modalias. Once the node is accessed, the kernel +automatically loads the module that provides the node. However, this +requires udev to know the major:minor code to use for the node. This +feature was introduced by: + + commit 578454ff7eab61d13a26b568f99a89a2c9edc881 + Author: Kay Sievers + Date: Thu May 20 18:07:20 2010 +0200 + + driver core: add devname module aliases to allow module on-demand auto-loading + +However, uhid uses dynamic minor numbers so this doesn't actually work. We +need to load uhid to know which minor it's going to use. + +Hence, allocate a static minor (just like uinput does) and we're good +to go. + +Reported-by: Tom Gundersen +Signed-off-by: David Herrmann +Signed-off-by: Jiri Kosina +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/hid/uhid.c | 3 ++- + include/linux/miscdevice.h | 1 + + 2 files changed, 3 insertions(+), 1 deletion(-) + +--- a/drivers/hid/uhid.c ++++ b/drivers/hid/uhid.c +@@ -640,7 +640,7 @@ static const struct file_operations uhid + + static struct miscdevice uhid_misc = { + .fops = &uhid_fops, +- .minor = MISC_DYNAMIC_MINOR, ++ .minor = UHID_MINOR, + .name = UHID_NAME, + }; + +@@ -659,4 +659,5 @@ module_exit(uhid_exit); + MODULE_LICENSE("GPL"); + MODULE_AUTHOR("David Herrmann "); + MODULE_DESCRIPTION("User-space I/O driver support for HID subsystem"); ++MODULE_ALIAS_MISCDEV(UHID_MINOR); + MODULE_ALIAS("devname:" UHID_NAME); +--- a/include/linux/miscdevice.h ++++ b/include/linux/miscdevice.h +@@ -45,6 +45,7 @@ + #define MAPPER_CTRL_MINOR 236 + #define LOOP_CTRL_MINOR 237 + #define VHOST_NET_MINOR 238 ++#define UHID_MINOR 239 + #define MISC_DYNAMIC_MINOR 255 + + struct device; diff --git a/queue-3.10/net-qmi_wwan-add-new-qualcomm-devices.patch b/queue-3.10/net-qmi_wwan-add-new-qualcomm-devices.patch new file mode 100644 index 00000000000..debe1182bc2 --- /dev/null +++ b/queue-3.10/net-qmi_wwan-add-new-qualcomm-devices.patch @@ -0,0 +1,179 @@ +From 0470667caa8261beb8a9141102b04a5357dd45b5 Mon Sep 17 00:00:00 2001 +From: Bjørn Mork +Date: Tue, 10 Sep 2013 15:06:20 +0200 +Subject: net: qmi_wwan: add new Qualcomm devices + +From: Bjørn Mork + +commit 0470667caa8261beb8a9141102b04a5357dd45b5 upstream. + +Adding the device list from the Windows driver description files +included with a new Qualcomm MDM9615 based device, "Alcatel-sbell +ASB TL131 TDD LTE", from China Mobile. This device is tested +and verified to work. The others are assumed to work based on +using the same Windows driver. + +Many of these devices support multiple QMI/wwan ports, requiring +multiple interface matching entries. All devices are composite, +providing a mix of one or more serial, storage or Android Debug +Brigde functions in addition to the wwan function. + +This device list included an update of one previously known device, +which was incorrectly assumed to have a Gobi 2K layout. This is +corrected. + +Reported-by: 王康 +Signed-off-by: Bjørn Mork +Signed-off-by: David S. Miller +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/net/usb/qmi_wwan.c | 130 ++++++++++++++++++++++++++++++++++++++++++++- + 1 file changed, 129 insertions(+), 1 deletion(-) + +--- a/drivers/net/usb/qmi_wwan.c ++++ b/drivers/net/usb/qmi_wwan.c +@@ -518,6 +518,135 @@ static const struct usb_device_id produc + + /* 3. Combined interface devices matching on interface number */ + {QMI_FIXED_INTF(0x0408, 0xea42, 4)}, /* Yota / Megafon M100-1 */ ++ {QMI_FIXED_INTF(0x05c6, 0x7000, 0)}, ++ {QMI_FIXED_INTF(0x05c6, 0x7001, 1)}, ++ {QMI_FIXED_INTF(0x05c6, 0x7002, 1)}, ++ {QMI_FIXED_INTF(0x05c6, 0x7101, 1)}, ++ {QMI_FIXED_INTF(0x05c6, 0x7101, 2)}, ++ {QMI_FIXED_INTF(0x05c6, 0x7101, 3)}, ++ {QMI_FIXED_INTF(0x05c6, 0x7102, 1)}, ++ {QMI_FIXED_INTF(0x05c6, 0x7102, 2)}, ++ {QMI_FIXED_INTF(0x05c6, 0x7102, 3)}, ++ {QMI_FIXED_INTF(0x05c6, 0x8000, 7)}, ++ {QMI_FIXED_INTF(0x05c6, 0x8001, 6)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9000, 4)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9003, 4)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9005, 2)}, ++ {QMI_FIXED_INTF(0x05c6, 0x900a, 4)}, ++ {QMI_FIXED_INTF(0x05c6, 0x900b, 2)}, ++ {QMI_FIXED_INTF(0x05c6, 0x900c, 4)}, ++ {QMI_FIXED_INTF(0x05c6, 0x900c, 5)}, ++ {QMI_FIXED_INTF(0x05c6, 0x900c, 6)}, ++ {QMI_FIXED_INTF(0x05c6, 0x900d, 5)}, ++ {QMI_FIXED_INTF(0x05c6, 0x900f, 3)}, ++ {QMI_FIXED_INTF(0x05c6, 0x900f, 4)}, ++ {QMI_FIXED_INTF(0x05c6, 0x900f, 5)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9010, 4)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9010, 5)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9011, 3)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9011, 4)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9021, 1)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9022, 2)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9025, 4)}, /* Alcatel-sbell ASB TL131 TDD LTE (China Mobile) */ ++ {QMI_FIXED_INTF(0x05c6, 0x9026, 3)}, ++ {QMI_FIXED_INTF(0x05c6, 0x902e, 5)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9031, 5)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9032, 4)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9033, 3)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9033, 4)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9033, 5)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9033, 6)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9034, 3)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9034, 4)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9034, 5)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9034, 6)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9034, 7)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9035, 4)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9036, 3)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9037, 5)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9038, 4)}, ++ {QMI_FIXED_INTF(0x05c6, 0x903b, 7)}, ++ {QMI_FIXED_INTF(0x05c6, 0x903c, 6)}, ++ {QMI_FIXED_INTF(0x05c6, 0x903d, 6)}, ++ {QMI_FIXED_INTF(0x05c6, 0x903e, 5)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9043, 3)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9046, 3)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9046, 4)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9046, 5)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9047, 2)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9047, 3)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9047, 4)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9048, 4)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9048, 5)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9048, 6)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9048, 7)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9048, 8)}, ++ {QMI_FIXED_INTF(0x05c6, 0x904c, 5)}, ++ {QMI_FIXED_INTF(0x05c6, 0x904c, 6)}, ++ {QMI_FIXED_INTF(0x05c6, 0x904c, 7)}, ++ {QMI_FIXED_INTF(0x05c6, 0x904c, 8)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9050, 3)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9052, 4)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9053, 6)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9053, 7)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9054, 5)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9054, 6)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9055, 3)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9055, 4)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9055, 5)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9055, 6)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9055, 7)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9056, 3)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9062, 2)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9062, 3)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9062, 4)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9062, 5)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9062, 6)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9062, 7)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9062, 8)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9062, 9)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9064, 3)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9065, 6)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9065, 7)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9066, 5)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9066, 6)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9067, 1)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9068, 2)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9068, 3)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9068, 4)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9068, 5)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9068, 6)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9068, 7)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9069, 5)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9069, 6)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9069, 7)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9069, 8)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9070, 4)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9070, 5)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9075, 5)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9076, 4)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9076, 5)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9076, 6)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9076, 7)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9076, 8)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9077, 3)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9077, 4)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9077, 5)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9077, 6)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9078, 3)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9079, 4)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9079, 5)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9079, 6)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9079, 7)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9079, 8)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9080, 5)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9080, 6)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9080, 7)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9080, 8)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9083, 3)}, ++ {QMI_FIXED_INTF(0x05c6, 0x9084, 4)}, ++ {QMI_FIXED_INTF(0x05c6, 0x920d, 0)}, ++ {QMI_FIXED_INTF(0x05c6, 0x920d, 5)}, + {QMI_FIXED_INTF(0x12d1, 0x140c, 1)}, /* Huawei E173 */ + {QMI_FIXED_INTF(0x12d1, 0x14ac, 1)}, /* Huawei E1820 */ + {QMI_FIXED_INTF(0x19d2, 0x0002, 1)}, +@@ -610,7 +739,6 @@ static const struct usb_device_id produc + {QMI_GOBI_DEVICE(0x413c, 0x8186)}, /* Dell Gobi 2000 Modem device (N0218, VU936) */ + {QMI_GOBI_DEVICE(0x413c, 0x8194)}, /* Dell Gobi 3000 Composite */ + {QMI_GOBI_DEVICE(0x05c6, 0x920b)}, /* Generic Gobi 2000 Modem device */ +- {QMI_GOBI_DEVICE(0x05c6, 0x920d)}, /* Gobi 3000 Composite */ + {QMI_GOBI_DEVICE(0x05c6, 0x9225)}, /* Sony Gobi 2000 Modem device (N0279, VU730) */ + {QMI_GOBI_DEVICE(0x05c6, 0x9245)}, /* Samsung Gobi 2000 Modem device (VL176) */ + {QMI_GOBI_DEVICE(0x03f0, 0x251d)}, /* HP Gobi 2000 Modem device (VP412) */ diff --git a/queue-3.10/series b/queue-3.10/series index adf0216cbc2..2df2151e138 100644 --- a/queue-3.10/series +++ b/queue-3.10/series @@ -95,3 +95,7 @@ s390-fix-system-call-restart-after-inferior-call.patch btrfs-change-how-we-queue-blocks-for-backref-checking.patch btrfs-skip-subvol-entries-when-checking-if-we-ve-created-a-dir-already.patch btrfs-remove-ourselves-from-the-cluster-list-under-lock.patch +hid-roccat-add-support-for-konepureoptical-v2.patch +hid-uhid-add-devname-module-alias.patch +hid-uhid-allocate-static-minor.patch +net-qmi_wwan-add-new-qualcomm-devices.patch