[udev/f17] Limit USB autosuspend on USB HID devices (brc#825284)

Josh Boyer jwboyer at fedoraproject.org
Thu May 31 15:26:02 UTC 2012


commit a430e4d20035c44f229d7968e26d3509e4ea6f0c
Author: Josh Boyer <jwboyer at redhat.com>
Date:   Thu May 31 11:25:02 2012 -0400

    Limit USB autosuspend on USB HID devices (brc#825284)

 ...-Limit-USB-autosuspend-on-USB-HID-devices.patch |   27 ++++++++++++++++++++
 udev.spec                                          |    8 +++++-
 2 files changed, 34 insertions(+), 1 deletions(-)
---
diff --git a/udev-rules-Limit-USB-autosuspend-on-USB-HID-devices.patch b/udev-rules-Limit-USB-autosuspend-on-USB-HID-devices.patch
new file mode 100644
index 0000000..2103918
--- /dev/null
+++ b/udev-rules-Limit-USB-autosuspend-on-USB-HID-devices.patch
@@ -0,0 +1,27 @@
+From e0386cf2809219bbdd30895f46f1f567b56902b6 Mon Sep 17 00:00:00 2001
+From: Matthew Garrett <mjg at redhat.com>
+Date: Fri, 25 May 2012 14:27:25 +0000
+Subject: rules: Limit USB autosuspend on USB HID devices
+
+Some USB ports on external hubs may be reported as "fixed". We only want
+to auto-enable this on ports that are internal to the machine, so check
+the parent state as well.
+---
+diff --git a/rules/42-usb-hid-pm.rules b/rules/42-usb-hid-pm.rules
+index d5d5897..9e5f59f 100644
+--- a/rules/42-usb-hid-pm.rules
++++ b/rules/42-usb-hid-pm.rules
+@@ -46,4 +46,10 @@ ACTION=="add", SUBSYSTEM=="usb", ATTRS{idVendor}=="04b3", ATTR{idProduct}=="4012
+ ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="14dd", ATTR{idProduct}="0002", TEST=="power/control", ATTR{power/control}="auto"
+ 
+ # USB HID devices that are internal to the machine should also be safe to autosuspend
++
++ACTION=="add", SUBSYSTEM=="usb", SUBSYSTEMS=="usb", ATTRS{removable}=="removable", GOTO="usb_hid_pm_end"
++ACTION=="add", SUBSYSTEM=="usb", SUBSYSTEMS=="usb", ATTRS{removable}=="unknown", GOTO="usb_hid_pm_end"        
++
+ ACTION=="add", SUBSYSTEM=="usb", ATTR{bInterfaceClass}=="03", ATTRS{removable}=="fixed", TEST=="../power/control", ATTR{../power/control}="auto"
++
++LABEL="usb_hid_pm_end"
+\ No newline at end of file
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/udev.spec b/udev.spec
index 93ff898..39b12a9 100644
--- a/udev.spec
+++ b/udev.spec
@@ -1,7 +1,7 @@
 Summary:        A rule-based device node and kernel event manager
 Name:           udev
 Version:        182
-Release:        2%{?dist}
+Release:        3%{?dist}
 License:        GPLv2+
 Group:          System Environment/Base
 Source:         ftp://ftp.kernel.org/pub/linux/utils/kernel/hotplug/%{name}-%{version}.tar.xz
@@ -25,6 +25,8 @@ Conflicts:      systemd < 39
 Conflicts:      dracut < 013-93
 Conflicts:      filesystem < 3-2
 
+Patch1: udev-rules-Limit-USB-autosuspend-on-USB-HID-devices.patch
+
 %ifarch s390 s390x
 # Require s390utils-base, because it's essential on s390
 Requires:       s390utils-base
@@ -82,6 +84,7 @@ glib-based applications using libudev functionality.
 
 %prep
 %setup -q
+%patch1 -p1
 
 %build
 # prevent man pages from re-building (xsltproc)
@@ -171,6 +174,9 @@ systemctl daemon-reload >/dev/null 2>&1 || :
 %attr(0644,root,root) %{_libdir}/pkgconfig/gudev-1.0*
 
 %changelog
+* Thu May 31 2012 Josh Boyer <jwboyer at redhat.com> 182-3
+- Limit USB autosuspend on USB HID devices (brc#825284)
+
 * Tue Mar 27 2012 Harald Hoyer <harald at redhat.com> 182-2
 - removed s390 rules
 


More information about the scm-commits mailing list