Please sign in to comment.
USB: Prevent system suspend when HSIC device is active
Some buses like HSIC would like to keep device in suspend state after system resume. The remote wakeup or interface activity later will auto resume the device. This will work only if the device is auto suspended before system suspend. If the device runtime state had been active during system suspend and system suspend routine put the device in suspend, it will not be resumed during system resume. When remote wakeup happen for this device, the runtime resume will not bring the device to active as runtime core think it is already active. The HSIC bus ensure that device is auto suspended prior to system suspend by holding a wakelock till the bus is suspended. HSIC bus is not handling the case where device is auto resumed immediately after system suspend begins. HSIC bus simply put the device into suspend in system suspend routine. This patch fixes above issue by returning an error code if the device is not auto suspended during system suspend. Also add a safe guard check in HSIC system resume routine to skip device resume only if it is auto suspended prior to system suspend. (cherry picked from commit 41d004c4eaa5565cb8d9113862c3cef1e51be648) Change-Id: If0b84833a7c416794e6f4431d54efcff3354d415 CRs-Fixed: 422876 Signed-off-by: Pavankumar Kondeti <email@example.com> Signed-off-by: franciscofranco <firstname.lastname@example.org>
- Loading branch information...
Showing with 10 additions and 3 deletions.