aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/host/ehci-hcd.c
diff options
context:
space:
mode:
authorJan Beulich <JBeulich@suse.com>2012-09-18 07:23:02 -0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-09-18 12:20:48 -0400
commit9fa5780beea1274d498a224822397100022da7d4 (patch)
tree9dbc2d31f3af70502843bbebe8017828abd63136 /drivers/usb/host/ehci-hcd.c
parentee42f6c9fc62d1d4d45b0d75e5f947e6645d8c30 (diff)
USB EHCI/Xen: propagate controller reset information to hypervisor
Just like for the in-tree early console debug port driver, the hypervisor - when using a debug port based console - also needs to be told about controller resets, so it can suppress using and then re-initialize the debug port accordingly. Other than the in-tree driver, the hypervisor driver actually cares about doing this only for the device where the debug is port actually in use, i.e. it needs to be told the coordinates of the device being reset (quite obviously, leveraging the addition done for that would likely benefit the in-tree driver too). Signed-off-by: Jan Beulich <jbeulich@suse.com> Acked-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> Acked-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/usb/host/ehci-hcd.c')
-rw-r--r--drivers/usb/host/ehci-hcd.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/usb/host/ehci-hcd.c b/drivers/usb/host/ehci-hcd.c
index b05c6865b610..6bf6c42481e8 100644
--- a/drivers/usb/host/ehci-hcd.c
+++ b/drivers/usb/host/ehci-hcd.c
@@ -228,7 +228,7 @@ static int ehci_reset (struct ehci_hcd *ehci)
228 228
229 /* If the EHCI debug controller is active, special care must be 229 /* If the EHCI debug controller is active, special care must be
230 * taken before and after a host controller reset */ 230 * taken before and after a host controller reset */
231 if (ehci->debug && !dbgp_reset_prep()) 231 if (ehci->debug && !dbgp_reset_prep(ehci_to_hcd(ehci)))
232 ehci->debug = NULL; 232 ehci->debug = NULL;
233 233
234 command |= CMD_RESET; 234 command |= CMD_RESET;
@@ -251,7 +251,7 @@ static int ehci_reset (struct ehci_hcd *ehci)
251 tdi_reset (ehci); 251 tdi_reset (ehci);
252 252
253 if (ehci->debug) 253 if (ehci->debug)
254 dbgp_external_startup(); 254 dbgp_external_startup(ehci_to_hcd(ehci));
255 255
256 ehci->port_c_suspend = ehci->suspended_ports = 256 ehci->port_c_suspend = ehci->suspended_ports =
257 ehci->resuming_ports = 0; 257 ehci->resuming_ports = 0;