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 +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 182-3 +- Limit USB autosuspend on USB HID devices (brc#825284) + * Tue Mar 27 2012 Harald Hoyer 182-2 - removed s390 rules