]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
4.1-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 27 Jun 2015 00:57:08 +0000 (17:57 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 27 Jun 2015 00:57:08 +0000 (17:57 -0700)
added patches:
cdc-acm-add-support-of-atol-fprint-fiscal-printers.patch

queue-4.1/cdc-acm-add-support-of-atol-fprint-fiscal-printers.patch [new file with mode: 0644]
queue-4.1/series

diff --git a/queue-4.1/cdc-acm-add-support-of-atol-fprint-fiscal-printers.patch b/queue-4.1/cdc-acm-add-support-of-atol-fprint-fiscal-printers.patch
new file mode 100644 (file)
index 0000000..43da5f6
--- /dev/null
@@ -0,0 +1,52 @@
+From 15bf722e6f6c0b884521a0363204532e849deb7f Mon Sep 17 00:00:00 2001
+From: Alexey Sokolov <sokolov@7pikes.com>
+Date: Tue, 2 Jun 2015 11:49:30 +0300
+Subject: cdc-acm: Add support of ATOL FPrint fiscal printers
+
+From: Alexey Sokolov <sokolov@7pikes.com>
+
+commit 15bf722e6f6c0b884521a0363204532e849deb7f upstream.
+
+ATOL FPrint fiscal printers require usb_clear_halt to be executed
+to work properly. Add quirk to fix the issue.
+
+Signed-off-by: Alexey Sokolov <sokolov@7pikes.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/usb/class/cdc-acm.c |    9 +++++++++
+ drivers/usb/class/cdc-acm.h |    1 +
+ 2 files changed, 10 insertions(+)
+
+--- a/drivers/usb/class/cdc-acm.c
++++ b/drivers/usb/class/cdc-acm.c
+@@ -1477,6 +1477,11 @@ skip_countries:
+               goto alloc_fail8;
+       }
++      if (quirks & CLEAR_HALT_CONDITIONS) {
++              usb_clear_halt(usb_dev, usb_rcvbulkpipe(usb_dev, epread->bEndpointAddress));
++              usb_clear_halt(usb_dev, usb_sndbulkpipe(usb_dev, epwrite->bEndpointAddress));
++      }
++
+       return 0;
+ alloc_fail8:
+       if (acm->country_codes) {
+@@ -1756,6 +1761,10 @@ static const struct usb_device_id acm_id
+       .driver_info = NO_UNION_NORMAL, /* reports zero length descriptor */
+       },
++      { USB_DEVICE(0x2912, 0x0001), /* ATOL FPrint */
++      .driver_info = CLEAR_HALT_CONDITIONS,
++      },
++
+       /* Nokia S60 phones expose two ACM channels. The first is
+        * a modem and is picked up by the standard AT-command
+        * information below. The second is 'vendor-specific' but
+--- a/drivers/usb/class/cdc-acm.h
++++ b/drivers/usb/class/cdc-acm.h
+@@ -133,3 +133,4 @@ struct acm {
+ #define NO_DATA_INTERFACE             BIT(4)
+ #define IGNORE_DEVICE                 BIT(5)
+ #define QUIRK_CONTROL_LINE_STATE      BIT(6)
++#define CLEAR_HALT_CONDITIONS         BIT(7)
index 8553f1080ecdc2d28240987eab12ebee228d0ea5..c835a04c12383861f09ca1dba8d2ae1ca6f3f03a 100644 (file)
@@ -8,3 +8,4 @@ bluetooth-ath3k-add-support-of-04ca-300d-ar3012-device.patch
 ath3k-add-support-of-0489-e076-ar3012-device.patch
 ath3k-add-support-of-13d3-3474-ar3012-device.patch
 b43-fix-support-for-14e4-4321-pci-dev-with-bcm4321-chipset.patch
+cdc-acm-add-support-of-atol-fprint-fiscal-printers.patch