aboutsummaryrefslogtreecommitdiffstats
path: root/usb
diff options
authorGreg Kroah-Hartman <gregkh@suse.de>2010-01-27 14:19:33 -0800
committerGreg Kroah-Hartman <gregkh@suse.de>2010-01-27 14:19:33 -0800
commit9934e884991142bdd7560418a6b66586add2dde2 (patch)
treea0b4cd8382d54ff7b604abb83aa63b44ac50ea32 /usb
parent8ce0dd645c3ab4c5f32f356b54bc6ec2034d22c6 (diff)
downloadpatches-9934e884991142bdd7560418a6b66586add2dde2.tar.gz
usb quirk patch
Diffstat (limited to 'usb')
-rw-r--r--usb/usb-export-quirk_reset_morphs-through-sysfs.patch (renamed from usb/usb-export-usb_quirk_reset_morphs-through-sysfs.patch)42
1 files changed, 30 insertions, 12 deletions
diff --git a/usb/usb-export-usb_quirk_reset_morphs-through-sysfs.patch b/usb/usb-export-quirk_reset_morphs-through-sysfs.patch
index 67211207724dee..a19263dc3315b8 100644
--- a/usb/usb-export-usb_quirk_reset_morphs-through-sysfs.patch
+++ b/usb/usb-export-quirk_reset_morphs-through-sysfs.patch
@@ -1,9 +1,9 @@
-From oliver@neukum.org Tue Dec 22 12:00:05 2009
+From oliver@neukum.org Wed Jan 27 14:17:52 2010
From: Oliver Neukum <oliver@neukum.org>
-Date: Fri, 18 Dec 2009 12:15:24 +0100
-Subject: USB: Export USB_QUIRK_RESET_MORPHS through sysfs
-To: Greg KH <greg@kroah.com>, Alan Stern <stern@rowland.harvard.edu>, Stefan Seyfried <stefan.seyfried@googlemail.com>, Matthew Dharm <mdharm-kernel@one-eyed-alien.net>, Matthew Garrett <mjg59@srcf.ucam.org>, Josua Dietze <digidietze@draisberghof.de>, linux-usb@vger.kernel.org
-Message-ID: <200912181215.24843.oliver@neukum.org>
+Date: Sat, 16 Jan 2010 01:33:03 +0100
+Subject: USB: Export QUIRK_RESET_MORPHS through sysfs
+To: Greg KH <greg@kroah.com>, Alan Stern <stern@rowland.harvard.edu>, USB list <linux-usb@vger.kernel.org>
+Message-ID: <201001160133.03063.oliver@neukum.org>
Some devices which use mode switching revert to their
@@ -15,16 +15,34 @@ Signed-off-by: Oliver Neukum <oliver@neukum.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
---
- drivers/usb/core/sysfs.c | 31 +++++++++++++++++++++++++++++++
- 1 file changed, 31 insertions(+)
+ Documentation/ABI/testing/sysfs-bus-usb | 11 +++++++++++
+ drivers/usb/core/sysfs.c | 31 +++++++++++++++++++++++++++++++
+ 2 files changed, 42 insertions(+)
+--- a/Documentation/ABI/testing/sysfs-bus-usb
++++ b/Documentation/ABI/testing/sysfs-bus-usb
+@@ -159,3 +159,14 @@ Description:
+ device. This is useful to ensure auto probing won't
+ match the driver to the device. For example:
+ # echo "046d c315" > /sys/bus/usb/drivers/foo/remove_id
++
++What: /sys/bus/usb/device/.../avoid_reset
++Date: December 2009
++Contact: Oliver Neukum <oliver@neukum.org>
++Description:
++ Writing 1 to this file tells the kernel that this
++ device will morph into another mode when it is reset.
++ Drivers will not use reset for error handling for
++ such devices.
++Users:
++ usb_modeswitch
--- a/drivers/usb/core/sysfs.c
+++ b/drivers/usb/core/sysfs.c
@@ -191,6 +191,36 @@ show_quirks(struct device *dev, struct d
static DEVICE_ATTR(quirks, S_IRUGO, show_quirks, NULL);
static ssize_t
-+show_reset_quirk(struct device *dev, struct device_attribute *attr, char *buf)
++show_avoid_reset_quirk(struct device *dev, struct device_attribute *attr, char *buf)
+{
+ struct usb_device *udev;
+
@@ -33,7 +51,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+}
+
+static ssize_t
-+set_reset_quirk(struct device *dev, struct device_attribute *attr,
++set_avoid_reset_quirk(struct device *dev, struct device_attribute *attr,
+ const char *buf, size_t count)
+{
+ struct usb_device *udev = to_usb_device(dev);
@@ -50,8 +68,8 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+ return count;
+}
+
-+static DEVICE_ATTR(reset_quirk, S_IRUGO | S_IWUSR,
-+ show_reset_quirk, set_reset_quirk);
++static DEVICE_ATTR(avoid_reset_quirk, S_IRUGO | S_IWUSR,
++ show_avoid_reset_quirk, set_avoid_reset_quirk);
+
+static ssize_t
show_urbnum(struct device *dev, struct device_attribute *attr, char *buf)
@@ -61,7 +79,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
&dev_attr_version.attr,
&dev_attr_maxchild.attr,
&dev_attr_quirks.attr,
-+ &dev_attr_reset_quirk.attr,
++ &dev_attr_avoid_reset_quirk.attr,
&dev_attr_authorized.attr,
&dev_attr_remove.attr,
NULL,