On Fri, Jan 13, 2012 at 01:25:49PM -0500, Alan Stern wrote: > BTW, C.1.4.1 says "The FUNCTION_SUSPEND feature is also used to enable > function remote wakeup". This indicates that when a device is > suspended with wakeup enabled, we'd better send a Function Suspend > request to each interface that is the first interface of a function and > has its needs_remote_wakeup flag set. On the other hand, we should be > able to skip the other interfaces. Yes. I think that would mean that we need to fetch and store any Interface Association Descriptors (IADs) so we know which interfaces are part of which functions. ISTR the wireless USB host also stores the IAD internally, so it should be made to use the USB core stored IAD as well. Probably it needs to just access the BOS descriptors that are stored in the usb_device->bos too, since I think it has some custom code for that. My initial stab at function remote wake enabling in the current patchset (in patch 3) just sends a function wake notification to the first interface in the current configuration. Actually, it assumes the configuration has an interface 0, which I suppose some devices might not have. I'll add a FIXME note to make sure I actually use the IAD in the final patcheset, but right now I want to get the bones of the device notifications correct first. :) Sarah Sharp -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html