diff options
author | thompsa <thompsa@FreeBSD.org> | 2009-02-09 21:47:39 +0000 |
---|---|---|
committer | thompsa <thompsa@FreeBSD.org> | 2009-02-09 21:47:39 +0000 |
commit | 306b60ddba9baf140651cc54dbea5c59fc11e3c7 (patch) | |
tree | 150faef8122b55548dbf6b1dace7519b78d147e9 /sys/dev/usb2/controller/usb2_controller.c | |
parent | 1d90e269afc22a6d75affcfa622f167d4c18c03a (diff) | |
download | FreeBSD-src-306b60ddba9baf140651cc54dbea5c59fc11e3c7.zip FreeBSD-src-306b60ddba9baf140651cc54dbea5c59fc11e3c7.tar.gz |
MFp4 //depot/projects/usb; 157069,157296,157375,157384,157430
- Change "usb2_pause_mtx" so that it takes the timeout value in ticks
- USB controller: EHCI High Speed Interrupt endpoint fix.
- Fix OHCI and EHCI counting bug when multiple TD's are involved in
a short USB transfer and a short packet happens on the non-last TD in the
USB transfer frame.
- USB process naming cleanup.
Submitted by: Hans Petter Selasky
Diffstat (limited to 'sys/dev/usb2/controller/usb2_controller.c')
-rw-r--r-- | sys/dev/usb2/controller/usb2_controller.c | 26 |
1 files changed, 14 insertions, 12 deletions
diff --git a/sys/dev/usb2/controller/usb2_controller.c b/sys/dev/usb2/controller/usb2_controller.c index a9596c7..f8d94cf 100644 --- a/sys/dev/usb2/controller/usb2_controller.c +++ b/sys/dev/usb2/controller/usb2_controller.c @@ -168,16 +168,16 @@ usb2_detach(device_t dev) /* Get rid of USB callback processes */ - usb2_proc_unsetup(&bus->giant_callback_proc); - usb2_proc_unsetup(&bus->non_giant_callback_proc); + usb2_proc_free(&bus->giant_callback_proc); + usb2_proc_free(&bus->non_giant_callback_proc); /* Get rid of USB roothub process */ - usb2_proc_unsetup(&bus->roothub_proc); + usb2_proc_free(&bus->roothub_proc); /* Get rid of USB explore process */ - usb2_proc_unsetup(&bus->explore_proc); + usb2_proc_free(&bus->explore_proc); return (0); } @@ -375,6 +375,8 @@ usb2_bus_attach(struct usb2_proc_msg *pm) static void usb2_attach_sub(device_t dev, struct usb2_bus *bus) { + const char *pname = device_get_nameunit(dev); + /* Initialise USB process messages */ bus->explore_msg[0].hdr.pm_callback = &usb2_bus_explore; bus->explore_msg[0].bus = bus; @@ -398,20 +400,20 @@ usb2_attach_sub(device_t dev, struct usb2_bus *bus) /* Create USB explore, roothub and callback processes */ - if (usb2_proc_setup(&bus->giant_callback_proc, - &bus->bus_mtx, USB_PRI_MED)) { + if (usb2_proc_create(&bus->giant_callback_proc, + &bus->bus_mtx, pname, USB_PRI_MED)) { printf("WARNING: Creation of USB Giant " "callback process failed.\n"); - } else if (usb2_proc_setup(&bus->non_giant_callback_proc, - &bus->bus_mtx, USB_PRI_HIGH)) { + } else if (usb2_proc_create(&bus->non_giant_callback_proc, + &bus->bus_mtx, pname, USB_PRI_HIGH)) { printf("WARNING: Creation of USB non-Giant " "callback process failed.\n"); - } else if (usb2_proc_setup(&bus->roothub_proc, - &bus->bus_mtx, USB_PRI_HIGH)) { + } else if (usb2_proc_create(&bus->roothub_proc, + &bus->bus_mtx, pname, USB_PRI_HIGH)) { printf("WARNING: Creation of USB roothub " "process failed.\n"); - } else if (usb2_proc_setup(&bus->explore_proc, - &bus->bus_mtx, USB_PRI_MED)) { + } else if (usb2_proc_create(&bus->explore_proc, + &bus->bus_mtx, pname, USB_PRI_MED)) { printf("WARNING: Creation of USB explore " "process failed.\n"); } else { |