summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorLan Tianyu <tianyu.lan@intel.com>2013-01-24 10:31:28 +0800
committerSarah Sharp <sarah.a.sharp@linux.intel.com>2013-01-24 09:58:18 -0800
commit54a3ac0c9e5b7213daa358ce74d154352657353a (patch)
treeea13854ac6bf7ad3bf8f55225c6d4d39206e463c /include
parent58b2939b4d5a030eaec469d29812ab8477ee7e76 (diff)
downloadlinux-54a3ac0c9e5b7213daa358ce74d154352657353a.tar.gz
linux-54a3ac0c9e5b7213daa358ce74d154352657353a.tar.bz2
linux-54a3ac0c9e5b7213daa358ce74d154352657353a.zip
usb: Using correct way to clear usb3.0 device's remote wakeup feature.
Usb3.0 device defines function remote wakeup which is only for interface recipient rather than device recipient. This is different with usb2.0 device's remote wakeup feature which is defined for device recipient. According usb3.0 spec 9.4.5, the function remote wakeup can be modified by the SetFeature() requests using the FUNCTION_SUSPEND feature selector. This patch is to use correct way to disable usb3.0 device's function remote wakeup after suspend error and resuming. This should be backported to kernels as old as 3.4, that contain the commit 623bef9e03a60adc623b09673297ca7a1cdfb367 "USB/xhci: Enable remote wakeup for USB3 devices." Signed-off-by: Lan Tianyu <tianyu.lan@intel.com> Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com> Cc: stable@vger.kernel.org
Diffstat (limited to 'include')
-rw-r--r--include/uapi/linux/usb/ch9.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/include/uapi/linux/usb/ch9.h b/include/uapi/linux/usb/ch9.h
index 50598472dc41..f738e25377ff 100644
--- a/include/uapi/linux/usb/ch9.h
+++ b/include/uapi/linux/usb/ch9.h
@@ -152,6 +152,12 @@
#define USB_INTRF_FUNC_SUSPEND_LP (1 << (8 + 0))
#define USB_INTRF_FUNC_SUSPEND_RW (1 << (8 + 1))
+/*
+ * Interface status, Figure 9-5 USB 3.0 spec
+ */
+#define USB_INTRF_STAT_FUNC_RW_CAP 1
+#define USB_INTRF_STAT_FUNC_RW 2
+
#define USB_ENDPOINT_HALT 0 /* IN/OUT will STALL */
/* Bit array elements as returned by the USB_REQ_GET_STATUS request. */