Deleted Added
full compact
usb_device.c (193644) usb_device.c (194227)
1/* $FreeBSD: head/sys/dev/usb/usb_device.c 193644 2009-06-07 19:41:11Z thompsa $ */
1/* $FreeBSD: head/sys/dev/usb/usb_device.c 194227 2009-06-15 00:33:18Z thompsa $ */
2/*-
3 * Copyright (c) 2008 Hans Petter Selasky. All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer.

--- 1449 unchanged lines hidden (view full) ---

1459 return (NULL);
1460 }
1461 /* initialise our SX-lock */
1462 sx_init(udev->default_sx, "0123456789ABCDEF - USB device SX lock" + depth);
1463
1464 /* initialise our SX-lock */
1465 sx_init(udev->default_sx + 1, "0123456789ABCDEF - USB config SX lock" + depth);
1466
2/*-
3 * Copyright (c) 2008 Hans Petter Selasky. All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer.

--- 1449 unchanged lines hidden (view full) ---

1459 return (NULL);
1460 }
1461 /* initialise our SX-lock */
1462 sx_init(udev->default_sx, "0123456789ABCDEF - USB device SX lock" + depth);
1463
1464 /* initialise our SX-lock */
1465 sx_init(udev->default_sx + 1, "0123456789ABCDEF - USB config SX lock" + depth);
1466
1467 usb2_cv_init(udev->default_cv, "WCTRL");
1468 usb2_cv_init(udev->default_cv + 1, "UGONE");
1467 cv_init(udev->default_cv, "WCTRL");
1468 cv_init(udev->default_cv + 1, "UGONE");
1469
1470 /* initialise our mutex */
1471 mtx_init(udev->default_mtx, "USB device mutex", NULL, MTX_DEF);
1472
1473 /* initialise generic clear stall */
1474 udev->cs_msg[0].hdr.pm_callback = &usb2_clear_stall_proc;
1475 udev->cs_msg[0].udev = udev;
1476 udev->cs_msg[1].hdr.pm_callback = &usb2_clear_stall_proc;

--- 465 unchanged lines hidden (view full) ---

1942 udev->parent_hub->hub->ports + udev->port_index : NULL,
1943 NULL, USB_ROOT_HUB_ADDR);
1944
1945#if USB_HAVE_UGEN
1946 /* wait for all pending references to go away: */
1947 mtx_lock(&usb2_ref_lock);
1948 udev->refcount--;
1949 while (udev->refcount != 0) {
1469
1470 /* initialise our mutex */
1471 mtx_init(udev->default_mtx, "USB device mutex", NULL, MTX_DEF);
1472
1473 /* initialise generic clear stall */
1474 udev->cs_msg[0].hdr.pm_callback = &usb2_clear_stall_proc;
1475 udev->cs_msg[0].udev = udev;
1476 udev->cs_msg[1].hdr.pm_callback = &usb2_clear_stall_proc;

--- 465 unchanged lines hidden (view full) ---

1942 udev->parent_hub->hub->ports + udev->port_index : NULL,
1943 NULL, USB_ROOT_HUB_ADDR);
1944
1945#if USB_HAVE_UGEN
1946 /* wait for all pending references to go away: */
1947 mtx_lock(&usb2_ref_lock);
1948 udev->refcount--;
1949 while (udev->refcount != 0) {
1950 usb2_cv_wait(udev->default_cv + 1, &usb2_ref_lock);
1950 cv_wait(udev->default_cv + 1, &usb2_ref_lock);
1951 }
1952 mtx_unlock(&usb2_ref_lock);
1953
1954 destroy_dev_sched_cb(udev->default_dev, usb2_cdev_cleanup,
1955 udev->default_dev->si_drv1);
1956#endif
1957
1958 if (udev->flags.usb_mode == USB_MODE_DEVICE) {

--- 17 unchanged lines hidden (view full) ---

1976 USB_BUS_LOCK(udev->bus);
1977 usb2_proc_mwait(&udev->bus->non_giant_callback_proc,
1978 &udev->cs_msg[0], &udev->cs_msg[1]);
1979 USB_BUS_UNLOCK(udev->bus);
1980
1981 sx_destroy(udev->default_sx);
1982 sx_destroy(udev->default_sx + 1);
1983
1951 }
1952 mtx_unlock(&usb2_ref_lock);
1953
1954 destroy_dev_sched_cb(udev->default_dev, usb2_cdev_cleanup,
1955 udev->default_dev->si_drv1);
1956#endif
1957
1958 if (udev->flags.usb_mode == USB_MODE_DEVICE) {

--- 17 unchanged lines hidden (view full) ---

1976 USB_BUS_LOCK(udev->bus);
1977 usb2_proc_mwait(&udev->bus->non_giant_callback_proc,
1978 &udev->cs_msg[0], &udev->cs_msg[1]);
1979 USB_BUS_UNLOCK(udev->bus);
1980
1981 sx_destroy(udev->default_sx);
1982 sx_destroy(udev->default_sx + 1);
1983
1984 usb2_cv_destroy(udev->default_cv);
1985 usb2_cv_destroy(udev->default_cv + 1);
1984 cv_destroy(udev->default_cv);
1985 cv_destroy(udev->default_cv + 1);
1986
1987 mtx_destroy(udev->default_mtx);
1988#if USB_HAVE_UGEN
1989 KASSERT(LIST_FIRST(&udev->pd_list) == NULL, ("leaked cdev entries"));
1990#endif
1991
1992 /* free device */
1993 free(udev->serial, M_USB);

--- 436 unchanged lines hidden ---
1986
1987 mtx_destroy(udev->default_mtx);
1988#if USB_HAVE_UGEN
1989 KASSERT(LIST_FIRST(&udev->pd_list) == NULL, ("leaked cdev entries"));
1990#endif
1991
1992 /* free device */
1993 free(udev->serial, M_USB);

--- 436 unchanged lines hidden ---