From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stephen Warren Date: Fri, 21 Aug 2015 15:58:55 -0600 Subject: [U-Boot] [PATCH] usb: ehci: remember init mode In-Reply-To: <201508210734.50164.marex@denx.de> References: <1440113885-24882-1-git-send-email-swarren@wwwdotorg.org> <201508210734.50164.marex@denx.de> Message-ID: <55D79F1F.1090809@wwwdotorg.org> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On 08/20/2015 11:34 PM, Marek Vasut wrote: > On Friday, August 21, 2015 at 01:38:05 AM, Stephen Warren wrote: >> From: Stephen Warren >> >> When an EHCI device is registered in device mode, the HW isn't actually >> initialized at all, and hence isn't left in a running state. Consequently, >> when the device is deregistered, ehci_shutdown() will fail, since the HW >> bits it expects to see set in response to its shutdown requests will not >> be sent, and the message "EHCI failed to shut down host controller." will >> be printed. >> >> Fix ehci-hcd.c to remember whether the device was registered in host or >> device mode, and only call ehci_shutdown() for host mode registrations. > > Hi, > > Shouldn't you instead check if the controller is running or not and shut > it down based on that ? Why would the two states be different? How can the code check if the controller is running; is there some HW bit that should be checked for that?