Commit Graph

1180 Commits

Author SHA1 Message Date
augustss b7ae463e9f Fix bug setting up endpoint descriptors for an interface. 1999-01-01 15:21:42 +00:00
augustss a02f8e62f5 Add uDWord type for 4 byte USB structure fields. 1999-01-01 15:18:17 +00:00
augustss bf9647a056 Set the correct transfer count on interrupt transfers. 1999-01-01 15:15:33 +00:00
augustss 87f8cbd14e Add a Communication Class header file. 1999-01-01 07:43:13 +00:00
augustss 3a16b606a6 Implement autorepeat in raw keyboard mode. 1998-12-30 19:25:27 +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 87fea0705b Implement raw keyboard mode for X. 1998-12-30 18:03:37 +00:00
augustss 85ff7a3234 Fold line. 1998-12-30 17:48:48 +00:00
augustss 3b9a669a7d Remove #include that slipped in at FreeBSD merge. 1998-12-30 17:46:20 +00:00
augustss a4a02fda54 Make it compile without USB_DEBUG, fixes PR 6689. Patch from
taca@sky.yamashina.kyoto.jp (Takahiro Kambe).
1998-12-30 13:25:54 +00:00
augustss 0ae031028d Add a special wsmouse type for USB mice. 1998-12-30 13:14:21 +00:00
augustss 85299e125c Regen. 1998-12-30 03:55:49 +00:00
augustss cce7071d57 Add iMac devices. 1998-12-30 03:52:30 +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 c047e03d90 Update copyright to the TNF standard. 1998-12-29 15:57:46 +00:00
augustss 9bcfc24c6b Add some #if 0 code for keyboard console attachment. 1998-12-29 15:42:30 +00:00
augustss 5aa16bd113 Don't set configuration unnecessarily, some (broken) devices seem to break
if you do.
1998-12-29 15:33:10 +00:00
augustss 961d81ade7 Return more info in ioctl(USB_DEVICEINFO). 1998-12-29 15:27:16 +00:00
augustss 0f94f62616 The Peracom serial converter (like some other devices) claim to have
string descriptors, but gets very upset if you read them.
1998-12-29 15:23:59 +00:00
augustss 32f13388c5 Regen. 1998-12-29 15:21:33 +00:00
augustss a7147eda73 Add Peracom serial converter. 1998-12-29 15:19:40 +00:00
augustss 6b5d35ee9d Minor change in a debug printf. 1998-12-29 14:29:53 +00:00
augustss 683fd3dfba Add some more useful #defines. 1998-12-29 14:27:33 +00:00
augustss 47ff9e7c63 Implement short transfers. 1998-12-29 05:08:57 +00:00
augustss fe9a1b2b2d Implement short transfers. 1998-12-29 04:15:04 +00:00
augustss 3064141641 Make it possible to specify the request flags when issuing a raw USB request. 1998-12-29 03:13:10 +00:00
augustss 16b49a78c6 New USB attach args. 1998-12-29 03:09:48 +00:00
augustss 4c9147cd38 Remove part of the bigendian patch that was not supposed to be commited. 1998-12-29 03:01:44 +00:00
augustss d4fa2978fa Imprive debugging message. 1998-12-28 21:05:47 +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 1256add6be Update for new name in usb.h 1998-12-28 16:13:44 +00:00
augustss 020a909cba Add a lot of byte swapping to get the code to work on big endian machines.
Patch from Tsubai Masanari <tsubai@iri.co.jp>.
Add an extra controller reset.  According to the OHCI spec it shouldn't
be necessary, but without some machines don't work.
1998-12-28 12:56:19 +00:00
augustss 3c6b7ccc2a Cosmetics. 1998-12-28 12:52:38 +00:00
augustss f4133e9fae Update timing again (for bad devices). 1998-12-28 12:35:27 +00:00
augustss be8213d207 Add some isoc defines. 1998-12-28 03:27:00 +00:00
augustss 2e0dbd3cc0 Add another power up wait so that some devices (that do not follow
the spec) start up more reliably.
1998-12-28 02:23:25 +00:00
augustss cd36ca65dd Fix typos. 1998-12-28 02:20:28 +00:00
augustss 8fe37fa62c Cosmetics. 1998-12-28 02:06:25 +00:00
augustss 6afab47ac5 Be more careful when forming the TD endpoint field. 1998-12-27 23:40:52 +00:00
augustss 5c3f51a42a Add quirk for bad version no. in audio control descriptor. 1998-12-27 23:38:13 +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 ebbe6623e2 Regen 1998-12-21 17:22:33 +00:00
augustss 2da45b8352 Fix typo. 1998-12-21 17:18:29 +00:00
augustss 84f4ab4fd0 Regen. 1998-12-21 15:45:20 +00:00
augustss 3c75aecaf5 Add ADS ethernet adapter. 1998-12-21 15:42:59 +00:00
augustss cb022e620d Initialize field to indicate fragment block. 1998-12-14 23:44:04 +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 ef6d3553ea Move initialization of sce around. 1998-12-12 11:59:28 +00:00
augustss 09dd50c412 Regen. 1998-12-11 17:44:41 +00:00
augustss d39ff672ac Add Imation disk. 1998-12-11 17:43:31 +00:00
augustss 3e85b3dd48 Move spls around. 1998-12-11 00:05:07 +00:00
augustss 46e04a18a1 Take care of some lines > 80 chars. 1998-12-10 23:16:47 +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 1fdafa2f13 Insert some splusb() since memory allocation and deallocation can
occur from an interrupt.
1998-12-09 01:02:29 +00:00
augustss c8736358e3 Clear stall condition on interrupt pipe. 1998-12-09 01:01:24 +00:00
augustss f8b9a417f0 Improvement to the ugen driver.
Better error checking.
Some code rearrengment.
1998-12-09 00:18:10 +00:00
augustss 28d60e8711 Use plaintest error messages for debugging. 1998-12-08 15:48:18 +00:00
augustss d26c277522 Add a generic USB driver. It allows easy access to descriptors, the
control pipe via ioctl() and read() and write() access to bulk and
interrupt pipes.
1998-12-08 15:39:00 +00:00
augustss 4d19a06c27 Some minor API changes and additions. 1998-12-08 15:18:45 +00:00
augustss dfff19e3d3 Take care of return code from uiomove(). 1998-12-08 15:12:24 +00:00
augustss 43c3030bd5 Print plain text error codes. 1998-12-08 14:34:08 +00:00
augustss 0280322dcb Change debug level of a printf. 1998-12-08 14:31:58 +00:00
augustss a68f1ef94c Handle the case where the device does not support GET_PEPORT better. 1998-12-03 20:43:19 +00:00
augustss bedb40a78c Use umodem as the modem driver stub. 1998-12-03 19:58:09 +00:00
augustss 2228eaca8a Add configuration and interface locators. 1998-12-02 22:57:08 +00:00
augustss cf75925c7f Even shorter printfs at attach. 1998-12-02 22:54:52 +00:00
augustss 4b4afb8252 Regen. 1998-12-02 22:51:50 +00:00
augustss 7270b91afe Shorten some vendor names. 1998-12-02 22:49:51 +00:00
augustss e424a174ba Add stub for a modem driver. 1998-12-02 22:47:19 +00:00
augustss fd3af06364 Avoid wrapping lines in attach printfs. 1998-12-02 17:20:20 +00:00
augustss 7d417ca964 Handle compound devices in usbd_get_report_descriptor(). 1998-12-02 17:17:40 +00:00
augustss c4dc0e3950 Regen. 1998-12-02 17:14:53 +00:00
augustss 65145fce2c Fix typo. 1998-12-02 17:11:51 +00:00
augustss 41095ae62a Add some new devices. 1998-12-02 17:02:59 +00:00
augustss 8ae89c20dc Do untimeout() for the timeouts we set up.
(How can this ever have worked?)
1998-11-30 21:39:20 +00:00
augustss ca707fcdf2 Make the copyright header conform to the NetBSD template. 1998-11-25 22:32:04 +00:00
augustss 32dd1a1d5a Make sure the Endpoint Descriptor gets the correct maximum packet size. 1998-11-22 20:21:22 +00:00
augustss c73add02ca Fix some typos. 1998-11-21 18:57:09 +00:00
augustss 8aaec6d337 Fix typo. 1998-10-20 21:28:32 +00:00
mark ed54968bff Regenerate from usbdevs. 1998-10-05 02:31:13 +00:00
mark 0f505e03ac Add Cypress Semiconductor vendor ID and Cypress Mouse product ID. 1998-10-05 02:30:17 +00:00
matt 259cf4c4a1 Don't include <machine/mouse.h>. Some platforms (e.g. alpha) don't one. 1998-10-01 19:10:26 +00:00
augustss 5cc2c570d5 Add missing call to usbd_init(). 1998-09-21 20:47:25 +00:00
drochner 6f1bc2944f Adapt to keymap table format change. 1998-09-17 18:31:43 +00:00
veego 3d396754e1 Regen. 1998-09-07 08:19:31 +00:00
veego 7e2e241a81 Fix capitalization of Kodak. This change was clearly never tested. 1998-09-07 08:18:40 +00:00
augustss 9d8e954403 Regen. 1998-09-05 15:46:08 +00:00
augustss 127efe1a4d Fix typo. 1998-09-05 15:45:34 +00:00
augustss d8e5a87d76 Regen. 1998-09-05 15:42:42 +00:00
augustss b0e65e8371 Regen. 1998-09-05 15:42:41 +00:00
augustss f7f5af21fb Add Kodak DC260 camera. 1998-09-05 15:42:12 +00:00
veego ff2c3adddc Add some braces to stop the new egcs warnings. 1998-08-20 19:55:06 +00:00
augustss 02c9ad1755 And fix pastos. 1998-08-06 12:26:51 +00:00
augustss a79bb0d7ae Fix tyop. 1998-08-06 12:23:39 +00:00
augustss a0aeff98c4 Fix two pastos. 1998-08-05 10:16:25 +00:00
augustss ac2b25e392 Improve some error messages.
Make some preparations for isochronous transfers.
1998-08-02 22:30:52 +00:00
augustss 607075abc6 Use wskbd enable function. 1998-08-02 22:27:01 +00:00
drochner 0dc548ce7d Adapt to wskbd interface changes; add dummy enable/disable function. 1998-08-02 14:22:25 +00:00
augustss eba74b9369 Abort interrupt pipe on disconnect. 1998-08-01 20:52:45 +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 5a1f4dd6bc Complete the scancode conversion table.
Tell the keyboard not to send idle reports.
1998-08-01 17:46:22 +00:00
augustss a0803787f7 Add functions to execute asynchronous requests and use these from
interrupt context.
[I had some feline debugging help here.  I noticed that every time Kem,
our kitty, jumped onto the USB keyboard the machine crashed.]
1998-07-29 20:50:11 +00:00
augustss ae97a4cbf5 Support for USB mice with Z axis or wheel. 1998-07-28 21:21:47 +00:00
drochner 1b27072062 add zero z axis argument 1998-07-27 22:34:30 +00:00
augustss 47f172660c Make ums attach to wsmouse only. 1998-07-27 18:51:32 +00:00
augustss 638fb6a638 A first stab att supporting console access with a USB keyboard. 1998-07-26 17:42:48 +00:00
augustss 4e1976a433 Use PCI class/subclass/interface to match USB host controllers instead
of vendor/product id.  This makes the probe find more controllers
without recompilation.
1998-07-26 00:40:59 +00:00
augustss 3ff58ab530 Add wscons attachments for USB keyboard. 1998-07-25 15:36:30 +00:00
augustss 6532f4f144 Add an ioctl() to get host controller statistics. 1998-07-25 15:22:11 +00:00
augustss 2c5f27cf9d Don't print device class in attach message. 1998-07-25 15:19:09 +00:00
augustss 67ec8587a0 Provide wsmouse attachment for the USB mouse driver.
XXX Keep /dev/ums* for now since XFree86 does not understand wsmouse yet.
1998-07-25 01:46:38 +00:00
augustss b916de0f86 Add special memory allocation routines that supports allocation
DMA-able memory in small chunks (USB uses a lot of 8 byte chunks).
Using the bus_dma functions directly is inefficient.
1998-07-24 21:09:07 +00:00
augustss 06e7ed2009 Make sure requests are aborted properly when the pipe is aborted. 1998-07-24 21:02:51 +00:00
augustss 1a5dd77c56 Punt if the mouse reports absolute coordinates. 1998-07-24 20:59:57 +00:00
augustss b79d954aac Let hid_locate() return the item flags as well as the position. 1998-07-24 20:57:46 +00:00
augustss d6ef9cbb33 Add some comments and a function to set the alternate settings in an
interface.
1998-07-23 13:44:21 +00:00
augustss 8cdf268a45 Implement bulk transfer for OHCI. 1998-07-23 13:41:04 +00:00
augustss c263b1d26f Don't leak memory if opening a pipe fails. 1998-07-23 09:18:37 +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 0f40401a23 Fix bug in freeing TD chain after bulk transfer. 1998-07-23 00:27:36 +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
drochner 8babb8290c fix egcs warnings 1998-07-15 09:35:35 +00:00
augustss 20106c31ca Add some useful HID ioctl()s. 1998-07-13 10:49:41 +00:00
augustss 7732413b58 Regen. 1998-07-12 20:44:53 +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