[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20161123183202.9246-1-ahaslam@baylibre.com>
Date: Wed, 23 Nov 2016 19:32:02 +0100
From: Axel Haslam <ahaslam@...libre.com>
To: gregkh@...uxfoundation.org, nsekhar@...com, khilman@...libre.com,
david@...hnology.com, ptitiano@...libre.com
Cc: linux-kernel@...r.kernel.org, linux-usb@...r.kernel.org,
Axel Haslam <ahaslam@...libre.com>
Subject: [PATCH] USB: ohci: da8xx: Balance ochi_disable with ohci_enable in resume.
On resume from suspend a failure with -ESHUTDOWN is returned
from ohci_bus_resume, and the usb is inoperable.
This happens because ohci_suspend disables the master interrupt
and sets an hcd flag to say that the hw is no longer accessible.
Calling ohci_resume reverts the steps taken on ohci_suspend
and flags the HW as "accessible" again, resume completes
successfully and usb is working after a suspend/resume sequence.
While we are here, remove setting device power_state,
as this is no longer needed and scheduled for removal.
Signed-off-by: Axel Haslam <ahaslam@...libre.com>
---
drivers/usb/host/ohci-da8xx.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/usb/host/ohci-da8xx.c b/drivers/usb/host/ohci-da8xx.c
index b3de8bc..a598bd8 100644
--- a/drivers/usb/host/ohci-da8xx.c
+++ b/drivers/usb/host/ohci-da8xx.c
@@ -340,8 +340,7 @@ static int ohci_da8xx_resume(struct platform_device *dev)
if (ret)
return ret;
- dev->dev.power.power_state = PMSG_ON;
- usb_hcd_resume_root_hub(hcd);
+ ohci_resume(hcd, false);
return 0;
}
--
2.9.3
Powered by blists - more mailing lists