Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 31 Dec 2011 13:34:42 +0000 (UTC)
From:      Hans Petter Selasky <hselasky@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r229086 - head/sys/dev/usb/controller
Message-ID:  <201112311334.pBVDYgSV065349@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: hselasky
Date: Sat Dec 31 13:34:42 2011
New Revision: 229086
URL: http://svn.freebsd.org/changeset/base/229086

Log:
  Add missing change to XHCI driver similar to changes in r228483.
  
  MFC after:	0 days

Modified:
  head/sys/dev/usb/controller/xhci.c
  head/sys/dev/usb/controller/xhci.h

Modified: head/sys/dev/usb/controller/xhci.c
==============================================================================
--- head/sys/dev/usb/controller/xhci.c	Sat Dec 31 13:24:53 2011	(r229085)
+++ head/sys/dev/usb/controller/xhci.c	Sat Dec 31 13:34:42 2011	(r229086)
@@ -550,24 +550,27 @@ xhci_uninit(struct xhci_softc *sc)
 	sx_destroy(&sc->sc_cmd_sx);
 }
 
-void
-xhci_suspend(struct xhci_softc *sc)
-{
-	/* XXX TODO */
-}
-
-void
-xhci_resume(struct xhci_softc *sc)
-{
-	/* XXX TODO */
-}
-
-void
-xhci_shutdown(struct xhci_softc *sc)
+static void
+xhci_set_hw_power_sleep(struct usb_bus *bus, uint32_t state)
 {
-	DPRINTF("Stopping the XHCI\n");
+	struct xhci_softc *sc = XHCI_BUS2SC(bus);
 
-	xhci_halt_controller(sc);
+	switch (state) {
+	case USB_HW_POWER_SUSPEND:
+		DPRINTF("Stopping the XHCI\n");
+		xhci_halt_controller(sc);
+		break;
+	case USB_HW_POWER_SHUTDOWN:
+		DPRINTF("Stopping the XHCI\n");
+		xhci_halt_controller(sc);
+		break;
+	case USB_HW_POWER_RESUME:
+		DPRINTF("Starting the XHCI\n");
+		xhci_start_controller(sc);
+		break;
+	default:
+		break;
+	}
 }
 
 static usb_error_t
@@ -3928,4 +3931,5 @@ struct usb_bus_methods xhci_bus_methods 
 	.set_address = xhci_set_address,
 	.clear_stall = xhci_ep_clear_stall,
 	.device_state_change = xhci_device_state_change,
+	.set_hw_power_sleep = xhci_set_hw_power_sleep,
 };

Modified: head/sys/dev/usb/controller/xhci.h
==============================================================================
--- head/sys/dev/usb/controller/xhci.h	Sat Dec 31 13:24:53 2011	(r229085)
+++ head/sys/dev/usb/controller/xhci.h	Sat Dec 31 13:34:42 2011	(r229086)
@@ -494,9 +494,6 @@ usb_error_t xhci_halt_controller(struct 
 usb_error_t xhci_init(struct xhci_softc *, device_t);
 usb_error_t xhci_start_controller(struct xhci_softc *);
 void	xhci_interrupt(struct xhci_softc *);
-void	xhci_resume(struct xhci_softc *);
-void	xhci_shutdown(struct xhci_softc *);
-void	xhci_suspend(struct xhci_softc *);
 void	xhci_uninit(struct xhci_softc *);
 
 #endif					/* _XHCI_H_ */



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201112311334.pBVDYgSV065349>