| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
an I/O error.
When such thing happens, the device is more likely to be already gone
or non responding, but the task responsible for aborting the pipe has
not been executed.
Fix a problem where the ehci(4) controller would vomit^Wprint a lot of
"ehci_idone:" messages in loop leaving the machine unusable, initially
reported by ajacoutot@ and later by RD Thrush.
Fix tested by RD Thrush and Markus Bergkvist, thanks!
ok miod@
|
|
|
|
|
|
|
|
|
|
|
| |
Get rid of the badly named usbd_bulk_transfer() and usbd_intr_transfer()
they were two identical wrappers to submit a synchronous transfer.
Now all synchronous transfers are submited using usbd_setup_xfer(9) and
usbd_transfer(9) explicitly using the USBD_CATCH flag when signals must
be checked.
Previous version ok'd by mglocker@, with subtle inputs from miod@
|
|
|
|
| |
From Nils Frohberg.
|
|
|
|
|
|
|
| |
memory leaks and abort the pipe if requests are still pending because
most of our drivers don't do anything if usbd_close_pipe() fails.
ok miod@
|
|
|
|
|
| |
as for every other pipes instead of having another function calling the
host controller method.
|
| |
|
|
|
|
|
|
|
| |
for functions related to the usb(4) driver and keep usbd_* for generic
USB layer functions.
ok mglocker@
|
|
|
|
| |
ok mpi@
|
|
|
|
|
|
| |
are only used as wrappers around usb_{alloc,free}mem().
ok deraadt@, mglocker@
|
| |
|
|
|
|
|
|
|
|
|
| |
definitions instead. We don't change usb.h for now to stay compatible
with userland.
Tested by mpi@ on macppc and myself on i386.
ok mpi@
|
|
|
|
| |
no need to reset it afterward.
|
|
|
|
|
|
|
| |
transfer synchronously just pass the USBD_SYNCHRONOUS flag like any
other flags when creating a transfer.
ok sthen@, mglocker@
|
|
|
|
| |
ok ratchov@, mglocker@
|
|
|
|
|
|
|
| |
used, so do not pretend to support a different one and get rid
of the unused usbd_do_request_flags_pipe() function.
ok mglocker@
|
| |
|
|
|
|
| |
from Tobias Ulmer (tobiasu-at-tmux-dot-org)
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
interfaces as being claimed in the usbd_device's copy of the interface
descriptors
* allow ugen(4) to be attached if there are unused interfaces in a
configuration that has had drivers attached
* make ugen(4) aware that it may be sharing a device with (an)other
driver(s), and if so:
* do not let ugen(4) change the configuration
* do not let ugen(4) access the already claimed interfaces
discussed with deraadt and miod
|
|
|
|
|
|
| |
* add functions to increment and decrement the reference count, and a
function to wait until the reference count is zero
ok martynas@
|
|
|
|
|
|
|
|
|
| |
* add usbd_deactivate(), which should be use to set the dying flag in
struct usbd_device
* add usbd_is_dying(), which can be used to check if either the device
or the associated bus dying flag has been set
* use usbd_is_dying() to check if the deivce or bus is dying before
issuing transfers or requests
|
|
|
|
|
|
|
|
|
| |
is dying, instead of setting a flag in struct usb_softc. as
usbd_device_handle has a pointer to the usbd_bus it's attached to,
usb devices, and functions they run or functions run on their behalf,
can now easily check if their bus is dying. use this to stop
usbd_do_request* from running and the usb task thread from adding
new tasks when a device's bus is dying.
|
|
|
|
|
|
|
| |
USB bus, make usb_explore() a usb_task. reduces races during normal
USB device detach, since now usb_tasks and detach happen in the same
process.
ok yuo@, matthew@ helped with the task thread loop
|
| |
|
|
|
|
|
|
|
|
|
| |
calling the xfer callback function to allow a device driver to
immediately reschedule the same xfer.
This e.g. improves performance for isoc high- fullspeed xfers (ehci).
From NetBSD. OK phessler@
|
|
|
|
|
|
|
|
|
| |
Not sure what's more surprising: how long it took for NetBSD to
catch up to the rest of the BSDs (including UCB), or the amount of
code that NetBSD has claimed for itself without attributing to the
actual authors.
OK deraadt@
|
| |
|
|
|
|
| |
attached at a time; ok kettenis
|
|
|
|
| |
ok dlg.
|
|
|
|
|
|
|
|
| |
were used as a layer of confusion^Wabstraction around the timeout(9) API.
No binary change.
ok jsg.
|
|
|
|
|
|
|
| |
and it was not consistently used. It was confusing as it suggested these
functions were static, which they were not.
discussed with dlg and jsg, ok jsg.
|
|
|
|
|
|
| |
change, no functionality change.
ok jsg
|
| |
|
|
|
|
| |
ok pedro
|
|
|
|
| |
ok dlg@
|
| |
|
| |
|
|
|
|
|
|
| |
This matches our SLIST behaviour and NetBSD's SIMPLEQ as well.
ok millert krw deraadt
|
|
|
|
| |
This includes numerous fixes and paves the way for usb 2.0 support.
|
| |
|
|
|
|
| |
Diff generated by Chris Kuethe.
|
| |
|
|
|
|
| |
From NetBSD
|
| |
|
| |
|
|
|
|
| |
From NetBSD
|
|
|
|
| |
Sync with NetBSD. ok deraadt
|
|
|
|
| |
kue(4) Ethernet devices.
|
|
|
|
|
|
| |
driver. I would appreciate it if someone with the hardware looked into it.
I also have to take a closer look at changes to the USB Ethernet drivers,
as well as import some drivers we are missing (uftdi, if_upl, yap, etc.)
|
|
|
|
| |
umass.c and ukbd.c as the diffs are a bit hairier.
|
| |
|