Alan 2006/1/2, Alan Stern <[EMAIL PROTECTED]>: > > You should turn off PORT_SUSPEND and set the C_PORT_SUSPEND flag (that's > what you meant, isn't it?) when you handle a GetPortStatus request coming > at least 20 ms after the remote wakeup request arrives. >
I'm sorry but I don't understand. Let's say that a device is suspended but the bus is not. The suspended device signals a remote wakeup signaling. The hcd get a resume detect interrupt if this signal lasts at least 2.5us. The hcd should wait for the remote wake up device to stop driving the bus (it can last no more than 15ms). Then the HCD should send the resume signaling within 1ms for at least 20ms. Is that correct ? You told me to look at uhci driver example. It looks like it uses khubd polling (every 250ms) to check if a resume signaling should be sent...If so I don't see how we can fullfill previous timining constraints... > > No. You shouldn't call usb_hcd_resume_root_hub() unless your root hub > (i.e., your bus) is suspended. I put in my "resume detect" interrupt handler : if (hcd->state == HC_STATE_SUSPENDED) usb_hcd_resume_root_hub(hcd); Is that correct ? Thanks -- Franck ------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://ads.osdn.com/?ad_idv37&alloc_id865&op=click _______________________________________________ linux-usb-devel@lists.sourceforge.net To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel