Commit Graph

905 Commits

Author SHA1 Message Date
augustss 86bb7f7d58 Add some Mass Storage constants. 1999-05-09 14:35:50 +00:00
augustss cbec5fc966 Regen. 1999-05-09 14:35:13 +00:00
augustss e4b1b00d56 Add Microsoft DDS80. 1999-05-09 14:34:41 +00:00
thorpej 375d7c32f2 Add a way for machine-dependent code to tell a USB controller that it
has the console input device.  The USB keyboard driver uses this to
attach the first USB keyboard instance as the console keyboard.

Unfortunately, this must still be deferred to autoconfiguration time,
but there's not much we can do about that right now.
1999-05-06 19:12:22 +00:00
thorpej bb619306e2 Add needs-flag to the ukbd device. 1999-05-06 00:42:16 +00:00
augustss a9cd83c7af Regen. 1999-04-27 21:32:05 +00:00
augustss 9fb29eae72 Update vendor names from an official(?) list. 1999-04-27 21:30:53 +00:00
augustss d992bbf22c Regen. 1999-04-27 18:09:00 +00:00
augustss c05572b5b7 Add Gravis GamePad Pro (from Soren Jorvang). 1999-04-27 18:08:35 +00:00
augustss afe636b9fa Add some digitizer usage codes. 1999-04-22 01:57:01 +00:00
augustss 1fcbe7ae13 Use the right buffer in immediate mode. 1999-04-21 19:02:26 +00:00
augustss 285bee1d61 Regen. 1999-04-03 19:03:02 +00:00
augustss 2198f62dd1 Add Visiion camera and Macally mouse. 1999-04-03 19:01:57 +00:00
augustss 28903948b1 Add legacy support register. 1999-04-03 19:01:20 +00:00
augustss 946efa06b3 Improve debug output a little. 1999-04-03 19:00:43 +00:00
augustss 7793bb6998 Generate grammatically correct sentences. 1999-04-03 18:59:51 +00:00
augustss ecbea6c6a0 More things to do. 1999-04-03 18:58:52 +00:00
augustss 65235b4248 Regen. 1999-04-03 11:57:02 +00:00
augustss 75fd6f5433 Add Microsoft Natural Keyboard. 1999-04-03 11:56:39 +00:00
augustss 20d6f6afe6 Regen. 1999-03-29 17:24:33 +00:00
augustss 8333badc92 Add Epson printer cable. 1999-03-29 17:23:45 +00:00
augustss 0cdb143eaf Initialize pipe structure properly. From Joel Chen <jchen@nc.com> 1999-03-18 12:08:43 +00:00
augustss 9929e72099 Fix some buglets pointed out by "Brett D. Slager" <bds@snarf.thnet.com> 1999-02-28 10:05:00 +00:00
augustss 5113c5b9c0 Move the bus reset up. This makes the VIA chipset work. From FreeBSD. 1999-02-20 23:26:16 +00:00
augustss fd9002550c Make the reset even longer do cater for really bad devices. 1999-02-15 00:32:16 +00:00
augustss 4146e9d547 Regen. 1999-01-26 22:32:22 +00:00
augustss 67bc102af8 Add Aladdin Knowledge Systems. 1999-01-26 22:21:55 +00:00
augustss 456a96e766 Regen. 1999-01-25 01:09:13 +00:00
augustss 9c673b9bd4 Add some Entrega products. 1999-01-25 01:02:59 +00:00
augustss 14dff70fa3 Fix transpostion in translation table for XT scan codes. 1999-01-13 18:38:26 +00:00
augustss 79f94410b1 Back out previous fix and apply the patch from Nick Hibma the right way. 1999-01-13 10:33:53 +00:00
augustss 8d6f121902 Fixes from Nick Hibma. 1999-01-13 10:08:59 +00:00
augustss d0a7575025 More things to do. 1999-01-12 22:07:45 +00:00
augustss b8f2118f7c Fix Z axis buglet. 1999-01-12 22:06:48 +00:00
augustss 76b8bd8961 Add a (partial) list of what's left to do. 1999-01-11 22:46:51 +00:00
augustss f963dc8ddb Some minor updates from FreeBSD. 1999-01-10 19:13:15 +00:00
augustss af7f630631 Some patches from FreeBSD. 1999-01-10 18:42:10 +00:00
augustss ebd59cb48c Make sure to check the modifier map for the windows keys. 1999-01-10 18:36:57 +00:00
augustss d47a7fb7e0 Rename the "windows" keys and add the new keys to the keyboard maps. 1999-01-10 16:56:35 +00:00
augustss 17570494a7 Add back a line that was lost somehow. 1999-01-10 16:38:54 +00:00
augustss 3fb390a04f Fix buglets in translation to raw scancodes. 1999-01-10 13:11:25 +00:00
augustss 07e0165b97 Update/add URLs to relevant USB specs. 1999-01-10 11:13:36 +00:00
augustss 9e121cf158 Add ukbdmap.c. 1999-01-10 11:09:02 +00:00
augustss 1a68014a66 Move a declaration. 1999-01-10 10:17:54 +00:00
augustss 17e4ccc73d Use a special map for USB key code translation instead of first translating
to an XT scancode and then to the wscons code.
XXX The XT translation is still available in "raw" mode.
1999-01-10 00:23:32 +00:00
augustss 9b3e9f45bf A minor fix for FreeBSD. 1999-01-09 12:16:54 +00:00
drochner c3283b267e there is no "cnattach" member in "struct wskbd_accessops" (yet?) 1999-01-09 12:10:36 +00:00
augustss 875aa92d2c Various little fixes from the FreeBSD version. 1999-01-08 11:58:25 +00:00
augustss d7154c29c9 Regen. 1999-01-08 11:19:57 +00:00
augustss 5ea77d0457 Remove some non-products. 1999-01-08 11:18:38 +00:00
augustss d8a5db5c2c Regen. 1999-01-07 22:30:36 +00:00
augustss df6da0d80b Generate appropriate RCS headers. 1999-01-07 22:18:23 +00:00
augustss 012d8f3eab Fix typo in FreeBSD part of the code. 1999-01-07 22:12:08 +00:00
augustss 86f2e214ed Add some line continuations in the FreeBSD part of the file. 1999-01-07 22:09:00 +00:00
augustss 2fba866c77 On popular demand, back out the generation of a FreeBSD ID. 1999-01-07 03:27:26 +00:00
augustss e4b5e096e8 Fix some FreeBSD compiler warnings. 1999-01-07 02:22:50 +00:00
augustss 07b2b872de Fix some pastos. 1999-01-07 02:22:20 +00:00
augustss 8b76024ac9 regen. 1999-01-07 02:18:10 +00:00
augustss 1f1524514a Ooops, I didn't mean to commit that. Back out. 1999-01-07 02:06:05 +00:00
augustss 02369a7cd2 Add another paranoia test in the interrupt routine. 1999-01-07 01:59:24 +00:00
augustss 1e0c9685af Add a copyright header. 1999-01-07 01:57:11 +00:00
augustss 65a13df4e6 Generate FreeBSD RCS id as well. 1999-01-07 01:54:28 +00:00
augustss 028aac1137 Add Micro$oft Intellimouse. 1999-01-07 01:51:12 +00:00
augustss 87121c3217 Regen. 1999-01-03 23:57:11 +00:00
augustss c3ddc00ec9 Add an Acer scanner. 1999-01-03 23:55:01 +00:00
augustss 3744944266 Regen. 1999-01-03 11:06:31 +00:00
augustss d621c7bd68 Add Kensington Mouse-in-a-Box. 1999-01-03 10:56:33 +00:00
augustss 497a2c58c3 Regen. 1999-01-03 01:15:01 +00:00
augustss c5412a11a4 Minor changes. 1999-01-03 01:12:41 +00:00
augustss 302f42d891 Add more CDC definitions. 1999-01-03 01:09:18 +00:00
augustss 6d990bf7f3 Add an ugly workaround for a bug (feature) in the NetBSD open()/close()
protocol.
1999-01-03 01:03:22 +00:00
augustss bf1154922d Add a length paarmeter to usbd_do_request_flags(). 1999-01-03 01:00:56 +00:00
augustss c1edefd961 Fix bug in reading from interrupt pipe.
Make read and write on bulk pipes interruptible.
1999-01-01 15:31:24 +00:00
augustss df2d00dcff Add more structs. 1999-01-01 15:28:24 +00:00
augustss 16a2a55378 Add usbd_bulk_transfer(), a function to do interruptible transfer that
do not time out.
1999-01-01 15:25:57 +00:00
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