On Mon, Dec 19, 2011 at 7:35 AM, Hans Petter Selasky
<hsela...@freebsd.org> wrote:
> Author: hselasky
> Date: Mon Dec 19 15:35:05 2011
> New Revision: 228711
> URL: http://svn.freebsd.org/changeset/base/228711
>
> Log:
>  Add code to wait for USB shutdown to be executed at system shutdown.
>  Add sysctl which can be used to skip this waiting.
>
>  MFC after:    3 days
>
> Modified:
>  head/sys/dev/usb/controller/usb_controller.c
>
> Modified: head/sys/dev/usb/controller/usb_controller.c
> ==============================================================================
> --- head/sys/dev/usb/controller/usb_controller.c        Mon Dec 19 14:55:14 
> 2011        (r228710)
> +++ head/sys/dev/usb/controller/usb_controller.c        Mon Dec 19 15:35:05 
> 2011        (r228711)
> @@ -87,7 +87,12 @@ SYSCTL_INT(_hw_usb_ctrl, OID_AUTO, debug
>  static int usb_no_boot_wait = 0;
>  TUNABLE_INT("hw.usb.no_boot_wait", &usb_no_boot_wait);
>  SYSCTL_INT(_hw_usb, OID_AUTO, no_boot_wait, CTLFLAG_RDTUN, 
> &usb_no_boot_wait, 0,
> -    "No device enumerate waiting at boot.");
> +    "No USB device enumerate waiting at boot.");
> +
> +static int usb_no_shutdown_wait = 0;
> +TUNABLE_INT("hw.usb.no_shutdown_wait", &usb_no_shutdown_wait);
> +SYSCTL_INT(_hw_usb, OID_AUTO, no_shutdown_wait, CTLFLAG_RDTUN, 
> &usb_no_shutdown_wait, 0,
> +    "No USB device waiting at system shutdown.");
>
>  static devclass_t usb_devclass;
>
> @@ -277,11 +282,20 @@ usb_shutdown(device_t dev)
>                return (0);
>        }
>
> +       device_printf(bus->bdev, "Controller shutdown\n");
> +
>        USB_BUS_LOCK(bus);
>        usb_proc_msignal(&bus->explore_proc,
>            &bus->shutdown_msg[0], &bus->shutdown_msg[1]);
> +       if (usb_no_shutdown_wait == 0) {
> +               /* wait for shutdown callback to be executed */
> +               usb_proc_mwait(&bus->explore_proc,
> +                   &bus->shutdown_msg[0], &bus->shutdown_msg[1]);
> +       }
>        USB_BUS_UNLOCK(bus);
>
> +       device_printf(bus->bdev, "Controller shutdown complete\n");
> +

    These printouts are a bit chatty. Could they be put under USB_DEBUG ?
Thanks!
-Garrett
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to