Commit Graph

1616 Commits

Author SHA1 Message Date
thorpej 54f6a91c01 Issue a Get Max Lun request to determine the max lun. 1999-08-29 19:58:55 +00:00
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
thorpej d1088a5081 One more TODO item; sub-classes other than SCSI. 1999-08-29 18:58:03 +00:00
thorpej 59e86c6637 Correct typo in URL. From Bill Sommerfeld. 1999-08-29 18:57:15 +00:00
thorpej f88e157ddb Update the match routine to reflect that the driver actually matches
"Mass Storage/SCSI/Bulk".
1999-08-29 18:56:24 +00:00
thorpej e01cef341e Update documentation references. 1999-08-29 18:13:26 +00:00
thorpej f91881f24a Since we poll around the `done' member of a usbd_request, make it volatile. 1999-08-29 17:57:25 +00:00
thorpej cbd1c08a2c Note a few TODO items. 1999-08-29 17:34:11 +00:00
thorpej 246ab7936d One item off this list done! 1999-08-29 16:53:04 +00:00
thorpej cbb4401dfd Port the FreeBSD `umass' driver to NetBSD. This is still a work-in-progress
since a few things don't yet work properly:
- Sense data isn't reported properly (err, at all).
- It doesn't work with anything other than the Iomega USB Zip drive.
- Hot-unplug doesn't work yet.

...but this is enough to make my shiny new USB Zip drive go.
1999-08-29 00:30:08 +00:00
augustss 036a9c6974 Change some 'struct device' to 'bdevice'. From FreeBSD. 1999-08-28 21:42:35 +00:00
augustss 1aa63c9fab Add some comments. 1999-08-28 10:04:01 +00:00
augustss 103e304a84 Add to the growing list. 1999-08-28 10:03:38 +00:00
augustss 2126f7df24 Change a type name. 1999-08-28 10:01:59 +00:00
augustss 598999e482 Fix from FreeBSD. 1999-08-28 10:01:42 +00:00
augustss e470b13e28 Regen. 1999-08-28 10:01:19 +00:00
augustss 4b398d8f1b Fixes/updates from FreeBSD. 1999-08-28 10:00:56 +00:00
augustss 65845c9e2a Regen. 1999-08-25 23:23:33 +00:00
augustss 7529455612 Add a PS2 to Mac USB Adapter from P.I. Eng. 1999-08-25 23:23:17 +00:00
augustss e0e1fbbe36 Regen. 1999-08-25 20:34:56 +00:00
augustss 02a79dc13e Add Multitech MT5634ZBA. From FreeBSD. 1999-08-25 16:28:12 +00:00
soren 205c3f5a73 Regenerate. 1999-08-24 21:25:52 +00:00
soren 82cb092b79 Fix typo in comment. 1999-08-24 21:25:22 +00:00
augustss 1f2661798f Make sure to mark the device as dying already in the (de)activate routine.
This avoids access to it before the detach routine has blown it away.
1999-08-23 22:55:14 +00:00
augustss 007da22e55 At attach time, get and print (parts of) the IEEE 1284 device id. 1999-08-23 22:35:19 +00:00
augustss 70020635c3 Regen. 1999-08-23 16:54:13 +00:00
augustss c206e4ab37 Add a Kawatsu mouse. 1999-08-23 16:53:32 +00:00
augustss 592de98a19 Remove some unneeded needs-flag. 1999-08-23 07:07:47 +00:00
augustss 4c217fdaf8 Merge the soft_{td,ed} with the real {td,ed}. This saves time and space.
(And fix typo in corresponding uhci change.)
1999-08-22 23:41:00 +00:00
augustss cc8b61583c Merge the soft_{td,qh} with the real {td,qh}. This saves time and space. 1999-08-22 23:19:56 +00:00
augustss be7e2fac07 More things to do... 1999-08-22 22:24:25 +00:00
augustss 1de0531d8b Simplify ulptwrite() by calling usbd_bulk_transfer(). This also makes
it interruptible.
1999-08-22 22:22:43 +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 a293a6cc73 Make sure not to call tsleep() from suspend/resume routine. 1999-08-20 16:42:38 +00:00
mjacob f28eb7f5cc make alpha compiler happy 1999-08-19 21:29:04 +00:00
augustss 0f99933822 Use the right type for the size argument when calling usbd_bulk_transfer(). 1999-08-19 19:57:21 +00:00
augustss a9563e089b A first stab at making the UHCI driver endian independent.
(It doesn't seem to be quite working yet.)
1999-08-19 19:52:38 +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 462e2614ff Add some mass storage definitions. 1999-08-19 19:50:42 +00:00
augustss bf35d2940c Add some more items. 1999-08-19 00:31:40 +00:00
augustss 1107c3f6ea Back out last change. The ugliness of the Audio Class should not have
to pollute the general USB definitions.
1999-08-18 07:55:19 +00:00
augustss 7fb139742d Update the endpoint descriptor struct with the two oddball entries
that only the Audio Class has.
1999-08-18 07:45:56 +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 24f66ce158 Get rid of FreeBSD code; there was so little to share in this driver
that it should be split.
1999-08-16 23:36:25 +00:00
augustss 9a0281ff87 Some new ioctl()s for the umodem driver. 1999-08-16 20:27:55 +00:00
augustss aa7264892d Implement a modem driver for the Abstract Control Model, i.e. AT commands.
It is accessible through the usual tty abstraction.
XXX The driver needs better error handling and a special call device.
XXX It also needs more testing.
1999-08-16 20:26:53 +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 23fa3682af Remove some, add some. 1999-08-16 20:21:09 +00:00
augustss 72b1f5a4b0 Add more CDC definitions. 1999-08-16 20:20:19 +00:00
augustss 7e4e93390d Change DIAGNOSTIC behaviour a little. 1999-08-16 20:19:55 +00:00
augustss df65083b45 A small roadmap of the USB files. 1999-08-16 20:18:07 +00:00
augustss b8b1e35ece Some changes from FreeBSD (no functional differences). 1999-08-14 14:49:31 +00:00
augustss b23490d39f Implement timeout and abort of requests.
Compute length of short transfers correctly.
1999-08-14 08:56:09 +00:00
augustss 38de172f03 Add usbd_set_hub_feature() and usbd_clear_hub_feature(). 1999-08-07 23:14:17 +00:00
augustss d6331b4ef4 Some new items. 1999-08-07 15:05:46 +00:00
augustss 208dad78d1 Get data toggle right for short bulk transfers.
(XXX This code needs to be rewritten.)
1999-08-02 23:35:55 +00:00
augustss caffcd4895 Another debug message. 1999-08-02 19:49:50 +00:00
augustss 2d4d29a1fa Test return values the right way. 1999-08-02 19:36:48 +00:00
augustss 094852eb36 Change it so that a pipe can be open RW instead of just R or W.
This makes close() work properly, but it is still not ideal.  Perhaps
there should be different device nodes for input and output on to
and endpoint with the same number?
Pay attention to the SHORT_XFER_OK ioctl().
1999-08-02 19:32:56 +00:00
augustss d2db832909 Do abort of transfers in a sane way. Fixes PR 8041. 1999-08-02 19:30:34 +00:00
augustss 09e76a1645 Remove two items that are done. 1999-07-30 11:40:19 +00:00
augustss 4047458551 More DIAGNOSTIC messages. 1999-07-24 01:40:19 +00:00
augustss 021319d9b3 Avoid crashing if we are forced to close() before teh open() completed
(can happen on disconnect, probably due do dubious logic in vdevgone()).
1999-07-14 19:12:07 +00:00
augustss 361422bc96 Apply some bulk transfer bug fixes from FreeBSD. 1999-07-12 05:22:50 +00:00
thorpej 7b3258b6a7 Make the kthread API a bit more friendly to loadable kernel modules. 1999-07-06 21:44:09 +00:00
augustss 319c42848d Add some sanity checks. 1999-07-06 07:12:03 +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 622f3d3db5 Regen. 1999-06-28 04:10:26 +00:00
augustss f69aea19d2 Add some weirdo modem. 1999-06-28 04:09:53 +00:00
tron b2c4582d6d Regen. 1999-06-26 16:26:57 +00:00
tron 0ddfad8dfa "www.usb.org" says that:
a) Logitech has vendor ID 0x046d.
b) That vendor ID 0x05ac is Apple Computer.
1999-06-26 16:26:20 +00:00
tron 6e72bbdb8a Regen. 1999-06-26 15:21:17 +00:00
tron 62f6e7122f Correct description of vendor "LOGITECH": this is not Apple. 1999-06-26 15:20:53 +00:00
augustss 3fd5344a95 Add suspend/resume handling to the UHCI driver.
Currently it only works if the BIOS saves enough state of the controller.
Once I find a machine with a dumber BIOS I'll try to improve that.
1999-06-26 08:30:17 +00:00
augustss 701eca7576 Remove unneeded #include. 1999-06-26 03:14:25 +00:00
augustss 7ef0c8eef3 Add a quirk for mice with reversed Z-axis. 1999-06-26 00:09:15 +00:00
augustss 55fbc23acc Regen. 1999-06-26 00:08:15 +00:00
augustss c4c81ec6fa Add another Logitech mouse. 1999-06-26 00:07:35 +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 656245dc18 Check that the hub ports actually power up. 1999-06-14 16:59:47 +00:00
wrstuden 9f43c5a1f2 If we're the console keyboard, automatically enable the keyboard.
Should fix part of console keyboard problems on macppc. The usb keyboard will
now work on boot! Doesn't fix problems with keyboard freaking out when
changing LED state.

Thanks to Mattias & Lennart & Tsubai for input on resolving this problem.
1999-06-11 19:05:13 +00:00
augustss c65a504ed5 Add more debug. 1999-06-10 15:48:27 +00:00
augustss 2959234be5 Fix a bug in bulk input. Discovered by Joel Chen <jchen@liberate.com>. 1999-06-09 22:57:16 +00:00
wrstuden cd0a68c3f6 Fix use of & when % was appropriate. 1999-06-09 19:40:54 +00:00
augustss 27b9cd0724 Remove a redundant test. 1999-06-09 17:04:45 +00:00
augustss d80294fead Regen. 1999-06-05 14:14:42 +00:00
augustss c5255e5a48 Remove vendor from one of the descriptive strings; it's superfluous. 1999-06-05 14:14:02 +00:00
augustss 0e2edfb67a Very small formatting nit. 1999-06-05 13:43:03 +00:00
tron e9fe988d72 Regen. 1999-06-05 09:54:29 +00:00
tron 1c05aff552 Add Brother HL-1050 laser printer. Fixes second half of PR kern/7699
by Bjoern Labitzke.
1999-06-05 09:54:09 +00:00
augustss ac197c5354 Update documentation URLs. 1999-05-21 10:15:23 +00:00
augustss 4655ae1230 Keep track of vendor id and make sure the vendor string is NUL terminated. 1999-05-20 09:52:35 +00:00
augustss 3d6c3b5c03 Update for TI vendor id. 1999-05-20 09:51:13 +00:00
augustss 5d6176a144 Regen. 1999-05-20 09:50:39 +00:00
augustss d25385e28e Change vendor of id 0x0451 to Texas Instruments. 1999-05-20 09:50:09 +00:00
thorpej 29184c350f Add a few more Communication Interface Class subclasses (including Ethernet
and *shudder* ATM).
1999-05-18 23:42:56 +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 041a8536ac s/revision/release/ 1999-05-16 12:05:10 +00:00
augustss 00930acefa Improve error handling. Mostly from FreeBSD. 1999-05-16 11:43:32 +00:00
augustss 9bf01fcbe5 Fix debug printf. 1999-05-14 19:38:44 +00:00
thorpej 0d0cc4aa14 Rework the way ukbd attaches itself as the console (again). We now allow
the code to pick the first USB keyboard instance as the console, ignoring
which USB controller it's on.  Should eventually allow detaching of the
console keyboard.

From Jason Thorpe <thorpej@nas.nasa.gov>
1999-05-13 23:34:38 +00:00
augustss e16867970c More DIAGNOSTIC tests. 1999-05-13 23:29:41 +00:00
augustss aed277e3de More digitizer defines. 1999-05-13 23:29:11 +00:00
augustss d480a15932 Regen. 1999-05-11 09:56:56 +00:00
augustss 91e572f76d Another mouse. 1999-05-11 09:56:32 +00:00
augustss ea2a114cf0 Fix a serious bug in bandwidth accounting that thrashed memory.
Thanks to Joel Chen <jchen@nc.com> for tracking it down.
1999-05-09 22:48:35 +00:00
augustss 69e451c1ce Call ws routines at spltty() from interrupt routines. 1999-05-09 15:10:30 +00:00
augustss aaa0308140 Handle exclusive open bit differently. 1999-05-09 14:38:01 +00:00
augustss d11fcba216 More debug. 1999-05-09 14:37:18 +00:00
augustss 63e051b6cf Minor rearrengment for better readability. 1999-05-09 14:36:42 +00:00
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