Commit Graph

42 Commits

Author SHA1 Message Date
thorpej 04cd1cc8ee Make usbd_errstr() always return a useful error message; it's not like
the strings are that big.
1999-08-29 19:41:27 +00:00
augustss 036a9c6974 Change some 'struct device' to 'bdevice'. From FreeBSD. 1999-08-28 21:42:35 +00:00
augustss f747201099 Move more of the transfer completion processing to HC independent code.
Fix some problems with transfer abort & timeout.
1999-08-22 20:12:39 +00:00
augustss c0f0486836 Add a utility function, usbd_errstr(), to print error strings. From FreeBSD. 1999-08-19 19:51:36 +00:00
augustss 54adf47f36 Redo the UHCI data toggle handling.
Make sure data toggles get synchronized on open and
when clearing an endpoint stall.
1999-08-17 20:59:04 +00:00
augustss 3016e1ebe0 Make some small changes to make it compile on OpenBSD. 1999-08-17 16:06:20 +00:00
augustss 290c03447b Change the way transfers are dequeued so thet we know that they
are removed from the queue before being deallocated.
1999-08-16 20:24:33 +00:00
augustss b8b1e35ece Some changes from FreeBSD (no functional differences). 1999-08-14 14:49:31 +00:00
augustss b177c7a397 Totally redo the way device detach is done. It now uses a kernel event
thread and the config detach method.
Squish a number of space leaks on detach.
1999-06-30 06:44:22 +00:00
augustss 475ed73e46 Get rid of a bunch of code that was part of an old USBDI proposal, but that
is unused in our USB stack.

Once upon a time, when I started writing the USB stack for NetBSD, there
was an effort to make a standard for how USB device drivers should interact
with the rest of the USB stack.  This effort had contributors from just
about all Un*x camps (but not Micro$oft :).  I based my design on one of their
early proposals since I thought it would be a good idea if we could all
share device drivers with a minimum effort.  Shortly after I started my work
all the free Un*x people were thrown out of the USBDI work since we did not
pay the USB membership fee.  Well, some time has passed now and the work of
the standardization group is almost public again.  But alas, the new standard
has grown to be a monster!  I do not want to have this as the basis for the
*BSD USB stack; it is far too complicated.
So, since we are not even close to being compilant with the standard, I've
thrown out some old baggage.
1999-06-14 17:09:57 +00:00
augustss 011be0080e Add vendor/product/release locators. Added in frustration as my HID
devices appeared as different devices after some plugging and unplugging. :-)
1999-05-16 13:51:05 +00:00
augustss e16867970c More DIAGNOSTIC tests. 1999-05-13 23:29:41 +00:00
augustss d11fcba216 More debug. 1999-05-09 14:37:18 +00:00
augustss 0cdb143eaf Initialize pipe structure properly. From Joel Chen <jchen@nc.com> 1999-03-18 12:08:43 +00:00
augustss f963dc8ddb Some minor updates from FreeBSD. 1999-01-10 19:13:15 +00:00
augustss 875aa92d2c Various little fixes from the FreeBSD version. 1999-01-08 11:58:25 +00:00
augustss 012d8f3eab Fix typo in FreeBSD part of the code. 1999-01-07 22:12:08 +00:00
augustss e4b5e096e8 Fix some FreeBSD compiler warnings. 1999-01-07 02:22:50 +00:00
augustss b7ae463e9f Fix bug setting up endpoint descriptors for an interface. 1999-01-01 15:21:42 +00:00
augustss 20f51aae57 Split usbd_delay_ms() into two functions, one can be used in
device drivers.
1998-12-30 18:06:25 +00:00
augustss 21e272bf01 Do not blindly assume that a device supports language id 0, instead
ask it what languages it supports.
1998-12-29 16:02:55 +00:00
augustss 961d81ade7 Return more info in ioctl(USB_DEVICEINFO). 1998-12-29 15:27:16 +00:00
augustss 4386ae98b0 Send more information to USB attach routines so that they can claim
multiple interfaces.
1998-12-28 21:05:26 +00:00
augustss dfad58d4e0 Change the host controller internal API a little and add some incomplete
support for isochronous transfers.
1998-12-28 20:13:59 +00:00
augustss e0c228ae9c Merge changes to make the USB stack work with FreeBSD. The original
diffs from Nick Hibma <n_hibma@freebsd.org>, but with substantial
changes from me.
XXX Not tested on FreeBSD yet.
1998-12-26 12:53:00 +00:00
augustss eeb8a988a9 Oops, I commited the wrong version before. 1998-12-12 12:18:26 +00:00
augustss f8c84e3e97 Initialize variable to make gcc happy. 1998-12-12 12:06:53 +00:00
augustss 95f1a325a2 Change a printf a little. 1998-12-10 16:13:48 +00:00
drochner 35345a1311 make compile without USB_DEBUG, wrap lines to 80 cols 1998-12-09 19:24:28 +00:00
augustss f8b9a417f0 Improvement to the ugen driver.
Better error checking.
Some code rearrengment.
1998-12-09 00:18:10 +00:00
augustss 4d19a06c27 Some minor API changes and additions. 1998-12-08 15:18:45 +00:00
augustss 2228eaca8a Add configuration and interface locators. 1998-12-02 22:57:08 +00:00
augustss fd3af06364 Avoid wrapping lines in attach printfs. 1998-12-02 17:20:20 +00:00
augustss ca707fcdf2 Make the copyright header conform to the NetBSD template. 1998-11-25 22:32:04 +00:00
augustss c73add02ca Fix some typos. 1998-11-21 18:57:09 +00:00
augustss ac2b25e392 Improve some error messages.
Make some preparations for isochronous transfers.
1998-08-02 22:30:52 +00:00
augustss 6aff95b06c Make sure to abort the interrupt pipe on disconnect of a mouse or keyboard.
Improve some error messages.
1998-08-01 20:11:38 +00:00
augustss f654e0188e Switch from a global flag to tell if the host controller should use
polling to a local one for each controller.
1998-08-01 18:16:19 +00:00
augustss 964fdc18b8 Use the pipe maximum packet length rather than the device max length when
setting up a transfer.
Update the UHCI data toggle correctly.
1998-07-23 01:46:27 +00:00
augustss 40060e366e Loop over all configurations when trying to probe for interface drivers. 1998-07-22 12:22:08 +00:00
is 985b3e8d4d Make this compile without USBVERBOSE. 1998-07-16 12:55:19 +00:00
augustss deb00272b9 Add USB support. Supported so far:
* UHCI and OHCI host controllers on PCI
* Hubs
* HID devices withe special drivers for mouse and keyboard
* Printers
1998-07-12 19:51:55 +00:00