Commit Graph

1575 Commits

Author SHA1 Message Date
augustss
496dc72437 Add some definitions from the USB OTG (On The Go) spec. 2001-12-29 15:44:11 +00:00
augustss
9dd24c8a92 Regen. 2001-12-29 14:08:02 +00:00
augustss
5f958aabb7 Fix a typo. 2001-12-29 14:07:45 +00:00
augustss
8164bd8bae Move some USB device quirks to the umass_quirk table. 2001-12-29 14:06:18 +00:00
augustss
414b3c7766 Always set the PQUIRK_ONLYBIG quirk for SCSI devices. 2001-12-29 13:52:21 +00:00
augustss
276b009425 Introduce a field, busquirks, in the umass quirk table that is passed
directly to the quirk field for the bus.
2001-12-29 13:46:23 +00:00
augustss
59473972d2 Only pull in HID processing if a driver needs it. 2001-12-29 10:50:55 +00:00
augustss
750a5959b8 Add some missing scan code translations. Docs from Microsoft via Perry Metzger. 2001-12-29 02:53:41 +00:00
augustss
935b0481a9 Introduce an extra driver level for HID devices, uhidev. This uhidev driver
attaches to the hub, and HID drivers (ums, ukbd, and uhid) attach to
uhidev.  The reason for this change is that some HID devices report multiple
components (like a keyboard and a mouse) using the same interface, but with
different report identifiers.  The report identifier can be specified with
a locator for the HID drivers.
Furthermore, change the ukbd driver to handle other formats than the boot
protocol.
2001-12-28 17:32:36 +00:00
augustss
f690fc0845 More DIAGNOSTIC. 2001-12-28 00:21:26 +00:00
augustss
3bf49b584d Add some more #defines. 2001-12-28 00:20:24 +00:00
augustss
04ec4ba316 Add some DIAGNOSTIC stuf that I forgot. From Nate Williams. 2001-12-27 18:48:28 +00:00
augustss
f8e03bd53c Change some DIAGNOSTIC #defines. 2001-12-27 18:43:46 +00:00
augustss
0df9b7654d ANSIfy. 2001-12-27 11:28:01 +00:00
augustss
d0f9a76506 Update a comment. 2001-12-27 11:27:11 +00:00
augustss
1f003f1c43 Name collection types. 2001-12-27 11:25:47 +00:00
augustss
81b818b421 Add usbd_get_protocol(). 2001-12-27 11:24:42 +00:00
augustss
12560718c5 Files I forgot to remove in last commit. 2001-12-27 11:23:56 +00:00
cjs
80c0f36acc Re-make these after usbdevs update. 2001-12-26 07:18:36 +00:00
cjs
2d1b70cd08 Add ID for memory stick slot in Sony Clie running PalmOS 4.0. This may also
be the same for the PalmOS 3.5 versions, but I can't test that.
2001-12-26 04:32:39 +00:00
augustss
0228f218d3 Add UISDATA_DEBUG. 2001-12-24 21:37:52 +00:00
augustss
213baeaad6 Use the new USB_PRODUCT_ANY match. 2001-12-24 21:36:54 +00:00
augustss
bfc3660fb1 Add some more DIAGNOSTIC tests.
Make usb_match_device() match on USB_PRODUCT_ANY.
2001-12-24 21:36:15 +00:00
augustss
c33e730dd9 Get rid of the transfer_speed nonsense to calculate the timeout.
We get passed a timeout from the upper layer which is what matters.
2001-12-24 19:24:33 +00:00
augustss
ab7b323efa Add a preliminary version of a driver for In-System Designs non-standard
ATA-over-BulkOnly protocol.  The ISD chip can be found, e.g., in the
Archos MP3 player.
The driver still lacks real error handling.
2001-12-24 13:43:24 +00:00
augustss
45fc7e27e9 Regen. 2001-12-24 13:40:50 +00:00
augustss
0d60061a8b Add some more In-System based adapters. 2001-12-24 13:40:31 +00:00
augustss
56b5867371 Make the separation between wire protocol (umass.c) and command protocol
(umass_scsipi.c) more distinct.
It is now possible to add new command protocols with a minimum of change.
The umassbus.[ch] files have been renamed umass_scsipi.[ch] since this
reflects their purpose better.
2001-12-24 13:25:52 +00:00
gehenna
e1839209b8 Add new quirk: NO_REQUEST_SENSE
Submit by: Dave Sainty
2001-12-22 13:21:59 +00:00
augustss
3e919c40c7 Regen. 2001-12-21 23:37:41 +00:00
augustss
72d569430d Fix typo, pointed out by Nathan Binkert. 2001-12-21 23:37:18 +00:00
augustss
c6107a12f8 Add UIRDA_DEBUG. 2001-12-20 17:41:32 +00:00
augustss
b2a9a2993d Move utility routine from uirda.c to usbdi_util.c. 2001-12-18 14:50:01 +00:00
ichiro
57957526e0 Uoo
Make it compile.
2001-12-17 14:34:37 +00:00
ichiro
1b0449d255 support BREAK function,
keep a value of the last LCR.
2001-12-17 14:31:02 +00:00
ichiro
d5f3329501 In BREAK, the value of LCR is held. 2001-12-17 14:19:39 +00:00
gehenna
7cd101a6ca Introduce the new umass quirk table.
Discussed with augustss.
2001-12-17 12:16:14 +00:00
ichiro
0a1465a39c handle vendor and product lookup with common routine 2001-12-16 15:11:19 +00:00
augustss
c70fc55cba Add a hack for ScanLogic SL11R IDE adapter. From FreeBSD. 2001-12-15 00:26:14 +00:00
augustss
3a31906841 Regen. 2001-12-15 00:25:00 +00:00
augustss
4a4ae0b6b7 YAD. 2001-12-15 00:15:01 +00:00
augustss
18c6adb0b6 YAD (Yet Another Device) 2001-12-15 00:07:45 +00:00
augustss
f79701e3fa Regen. 2001-12-14 23:57:00 +00:00
augustss
154a59571d Add SS1001. 2001-12-14 23:56:42 +00:00
augustss
356c54687b Integrate fix from PR 10155.
Add ACCTON SS1001.
2001-12-14 23:56:21 +00:00
augustss
74a0c5db97 Remember to add header byte to length.
Use fewer magic constants.
(The driver works now.)
2001-12-14 15:44:04 +00:00
augustss
342a82f2dd Start read at open.
Don't send new header when nothing changes.
(But uirda is still not working.)
2001-12-14 13:07:33 +00:00
augustss
aa89e69702 Don't reallocate I/O buffers. 2001-12-14 12:08:14 +00:00
augustss
d787f49ee6 Fix descriptor definition bug.
Clear endpoint stall on error.
2001-12-14 12:02:53 +00:00
gehenna
f144837e0e Stylistic changes 2001-12-14 08:58:49 +00:00
gehenna
2d27ad7c73 Define a new structure to store wire specific control methods.
The basic BBB/CBI functions are stored as members of constant structure.
When attached device, softc holds one of that constant structures.
2001-12-14 08:46:19 +00:00
ichiro
69424fd268 typo fix 2001-12-14 08:33:54 +00:00
gehenna
49bba69842 Use device handle and interface number which are stored in softc. 2001-12-14 06:21:56 +00:00
gehenna
53f34def69 Change style to store endpoint addresses and pipes. 2001-12-14 05:58:13 +00:00
augustss
04c10fc0cf Initialize lock. 2001-12-13 17:25:37 +00:00
augustss
0ba8bac8fe Fix some bugs. But the driver is still borken. 2001-12-13 02:16:21 +00:00
augustss
8e98b4a185 Add some special cases for the Sitecom adapter.
Make endian safe.
Fix some minor bugs.
2001-12-12 23:59:48 +00:00
augustss
0a4d7b9de3 Add a scanner quirk for keeping the pipes open between device opening.
Idea from Enami.
2001-12-12 15:48:18 +00:00
augustss
7727919172 Use USBD_NO_COPY in for some transfers where it was missing. 2001-12-12 15:44:47 +00:00
augustss
2fdd0f5a4b Some more paranoia checks when DIAGNOSTIC. 2001-12-12 15:38:58 +00:00
augustss
29c3fe261b Add some comments. 2001-12-12 15:38:27 +00:00
augustss
95d1208c14 Regen. 2001-12-12 15:37:21 +00:00
augustss
290d3a0d9e Add some devices. 2001-12-12 15:36:59 +00:00
augustss
dfbcffae07 Remove some stupid casts. 2001-12-12 15:36:08 +00:00
augustss
4a802f4928 Add USB-IrDA bridge.
Needs more testing.
2001-12-12 15:27:24 +00:00
augustss
22735e5d44 Move usbd_clear_endpoint_toggle() prototype to usbdi.h. 2001-12-12 15:23:58 +00:00
gehenna
968318a989 Use vendor/product variables 2001-12-12 14:24:53 +00:00
gehenna
0f983137af Don't change wire protocol state in umass generic function 2001-12-12 13:23:20 +00:00
gehenna
54e3c1962e bcopy -> memcpy 2001-12-12 13:17:03 +00:00
augustss
aa816a6d89 Regen. 2001-12-10 03:36:54 +00:00
augustss
9cfe511c73 Add some devices. 2001-12-10 03:36:12 +00:00
gehenna
c9b557f40e Add an item 2001-12-09 03:06:46 +00:00
cjs
b445461d1e Rebuild these to fix the "generated from" line. 2001-12-07 07:43:10 +00:00
cjs
9dd4ce03d0 Add Palm m500/m505 and Sony Clie USB cradle device IDs. 2001-12-07 06:59:44 +00:00
augustss
22fd9bbb5f Add IrDA related defines. 2001-12-06 17:00:26 +00:00
augustss
ec901ec7fe Regen. 2001-12-05 23:25:56 +00:00
augustss
12812553f8 Add a NEC USB 2.0 hub. (USB 2.0 hubs are very rare creatures at the moment!) 2001-12-05 23:25:31 +00:00
augustss
02aa2a59bc Handle vendor/product lookup with a common routine. 2001-12-03 01:47:12 +00:00
augustss
23d4159897 Add a subroutine to search for a vendor/product pair. 2001-12-02 23:25:25 +00:00
bouyer
65768c08e2 No need to include atavar.h here. 2001-12-02 22:59:40 +00:00
bouyer
4809ad42cb Clean up attach of wd/atapibus:
kill ata_atapi_attach. Change atapibus to use a struct scsipi_channel instead
of ata_atapi_attach as attach arch. Create a ata_device, compatible with
scsipi_channel, to attach wd.
2001-12-02 22:44:32 +00:00
enami
e69c410de5 Shorten wmesg so that they can be distinguished in ps/top output. 2001-12-01 09:42:39 +00:00
enami
b56cddb826 Fix null pointer dereference when EHCI_DEBUG is defined (and
debug is enabled).
2001-12-01 09:39:32 +00:00
augustss
2781ac8e07 Regen. 2001-11-30 13:41:17 +00:00
augustss
a287e24799 Add new devices. From URA Hiroshi in PR 14790. 2001-11-30 13:41:00 +00:00
augustss
4b06fc39aa Regen. 2001-11-29 13:58:41 +00:00
augustss
7a7025366e Add some ISD devices. 2001-11-29 13:58:22 +00:00
augustss
c01e71bac5 Plug a memory leak in an error case. 2001-11-29 11:07:12 +00:00
lukem
ecb81c3f6d - convert usage of "defopt" to "defflag" where the relevant option does
not support a value (e.g., it's to be used as "options FOO" instead of
  "options FOO=xxx"). options that take a value were converted to
  defparam recently.
- minor whitespace & formatting cleanups
2001-11-28 10:21:10 +00:00
lukem
9f42ccc795 use #ifdef DDB (for consistency with the rest of the kernel) 2001-11-28 05:45:27 +00:00
augustss
380fd47edb Change wchan name for usb task thread. 2001-11-26 20:16:55 +00:00
augustss
a6ba091eef Add a quirk for Olympus C-1. From FreeBSD (by iedowse) 2001-11-25 19:15:46 +00:00
augustss
596224e54f Pay attention to the timeout value passed down by the scsipi layer. 2001-11-25 19:05:22 +00:00
augustss
6fcfa35836 Regen. 2001-11-25 17:17:42 +00:00
augustss
f070b78088 Add Olympus C-1. 2001-11-25 17:17:22 +00:00
enami
71651851a4 Match against EPSON GT-9700F. 2001-11-23 10:31:54 +00:00
enami
674f6e4d18 Regen. 2001-11-23 10:30:49 +00:00
enami
9930efdacf Add product id of EPSON GT-9700F. 2001-11-23 10:29:30 +00:00
augustss
cdc819cd8a Improve xfer abort sequence.
Fix another bug in qTD chain allocation.
2001-11-23 01:16:27 +00:00
augustss
6d8419a6cc Handle Zip quirks differently.
Ugh!  This driver need major overhaul.
2001-11-23 01:15:28 +00:00
augustss
6f95b070ca Update mass storage protocol numbers. 2001-11-23 01:14:45 +00:00
augustss
37c8189778 Correct a comment. 2001-11-22 21:59:33 +00:00
augustss
7467533f5a Improve dump routine slightly. 2001-11-22 04:31:01 +00:00
augustss
6e3a855c27 Fix a bug in qTD chain allocation.
Fix a qTD leak.
Handle out of memory conditions better.

My USB 2.0 CD-RW now mounts nicely and I can access files.
Performance is still lacking (it's at about 2Mbyte/s).
2001-11-22 04:20:49 +00:00
augustss
bc136d1c2e Make it compile without debug. 2001-11-21 16:22:58 +00:00
augustss
9dae283057 Add another "feature". 2001-11-21 16:12:56 +00:00
augustss
b2dc7b3fd3 Follow a safer protocol when updating the QH.
The EHCI driver isn't really working properly, but now the SCSI driver
correctly identifies my CD-RW drive! :-)
2001-11-21 16:05:13 +00:00
augustss
2c4813fa9d Use NULL not 0. 2001-11-21 15:48:37 +00:00
augustss
df1a49923c Fix indentation and typos. 2001-11-21 15:37:41 +00:00
augustss
5539d5afe6 Implement (incorrect?) data toggle clear method.
Implement allocation of qTD chains.
2001-11-21 14:00:12 +00:00
augustss
6bba920516 Wrap dump routine prototypes in #ifdef USB_DEBUG 2001-11-21 13:44:47 +00:00
augustss
ca0b46691f Mask correct interrupt after error interrupt. 2001-11-21 13:43:38 +00:00
augustss
02f41ec3e6 Mask the correct interrupt after a door bell interrupt. 2001-11-21 13:42:19 +00:00
augustss
0adc2bbba2 Implement bulk transfers. 2001-11-21 13:04:50 +00:00
augustss
2d72c2726c Add some interrupt processing. 2001-11-21 12:28:23 +00:00
augustss
4d4da7e06a Fix typo in comment. 2001-11-21 12:25:55 +00:00
augustss
1029005107 Pay more attention to if the HC is being unplugged. 2001-11-21 08:18:39 +00:00
itojun
bf755aea42 make it compilable without OHCI_DEBUG 2001-11-21 05:52:50 +00:00
augustss
c907a8fbbd Add missing } 2001-11-21 02:47:07 +00:00
augustss
4f7b354305 Set up control xfers.
Handle xfer timeouts.
Better debug messages.
2001-11-21 02:44:30 +00:00
augustss
28a6a57942 Use a task to perform the timeout abort so we have a process context when
sleeping.
2001-11-21 02:41:18 +00:00
augustss
5506bb0f06 Some more debug stuff. 2001-11-21 02:39:31 +00:00
augustss
2478d1b320 Cast some args to bitmask_snprintf(). 2001-11-21 02:38:35 +00:00
augustss
b171d0908b Create a special kernel thread to run the usb short lived tasks (instead
of using the device discovery threads).
2001-11-20 23:53:26 +00:00
augustss
9716a5f26d Don't bother with interrupts when being disconnected. 2001-11-20 21:12:46 +00:00
augustss
a8de831b24 Support port indicator light. 2001-11-20 16:25:35 +00:00
augustss
2f560c9410 Sanity check max packet lengths. 2001-11-20 16:09:01 +00:00
augustss
7679101a11 Add a comment. 2001-11-20 16:08:37 +00:00
augustss
e5353fd3b5 Use longer reset for root hubs (as told in the spec). 2001-11-20 16:08:10 +00:00
augustss
8366f16a80 Don't wait for door bell interrupt when controller has been disconnected. 2001-11-20 14:28:44 +00:00
augustss
86e6ea35eb Update for new speed handling. 2001-11-20 13:50:07 +00:00
augustss
a598bed92e Simplify async list handling. 2001-11-20 13:49:23 +00:00
augustss
b38958f960 Use device speed in setup.
Simplify async list handling.
2001-11-20 13:49:07 +00:00
augustss
7e4459fe10 Keep track of device speed for USB 2.0. 2001-11-20 13:48:03 +00:00
augustss
482dbdf4e3 More USB 2.0 definitions. 2001-11-20 13:46:09 +00:00
augustss
2db9b8d2c8 Start of pipe open routine. 2001-11-19 02:57:16 +00:00
augustss
0f70418027 Add more fields to hardware structs.
Add memory allocation for various data structures.
2001-11-18 00:39:46 +00:00
augustss
1f6462461a Make it possible to report device speeds with ioctl(USB_DEVICEINFO). 2001-11-17 01:49:53 +00:00
augustss
25ffd2ae73 Regen. 2001-11-17 01:44:03 +00:00
augustss
c434bdf8c7 Yet another device. 2001-11-17 01:43:40 +00:00
augustss
b2b2b2b448 Implement port reset sequence correctly. 2001-11-16 23:52:10 +00:00
augustss
f73c358f8c Add some more data structure defs. 2001-11-16 15:33:13 +00:00
augustss
3b323cfaae Better error message. 2001-11-16 02:21:54 +00:00
augustss
3db4a768d4 Handle devices that disappear during reset gracefully. 2001-11-16 01:57:47 +00:00
augustss
07ea2e28cb Recognize port status changes.
Hand over low and full speed devices to companion controller.
2001-11-16 01:57:08 +00:00
augustss
122d2863d8 Add root hub emulation. 2001-11-15 23:25:09 +00:00
augustss
b684cbc2a7 usbd_interface2device_handle() cannot fail. 2001-11-15 15:15:58 +00:00
augustss
effc318eca Regen. 2001-11-14 17:50:44 +00:00
augustss
77a68c4bf2 Add another printer dongle. 2001-11-14 17:50:21 +00:00
augustss
cec12bf775 Remove trailing `b' in some numbers for lengths. It just makes them look
like hex.
2001-11-13 08:01:40 +00:00
augustss
d6e38a1474 More test for NULL pipes. 2001-11-13 07:59:32 +00:00
augustss
9dcae667ee Small changes to behaviour when disconnecting. 2001-11-13 07:57:22 +00:00
augustss
b93fa89e60 Fix pasto in a debug printf. 2001-11-13 07:56:04 +00:00
augustss
8b1e2b3b6d Add some #endif comments. 2001-11-13 07:55:30 +00:00
lukem
667807e40c add RCSIDs 2001-11-13 06:24:53 +00:00
atatat
e6de03653d Don't set 'atapi_probe_device' if no atapi busses are being configured. 2001-11-11 23:21:18 +00:00
augustss
9a444aef81 Get rid of unused abort_handle. 2001-11-10 17:11:38 +00:00
augustss
21f0709fbe Abort any xfers on the control pipe before closing it on detach. 2001-11-10 17:10:42 +00:00
augustss
ff875692db Improve dump routines. 2001-11-10 17:09:28 +00:00
augustss
1b0216af5c Add some register defines.
Print companion controllers.
2001-11-10 17:06:11 +00:00
augustss
3d963db4f2 Add some dump routines for debugging. 2001-11-10 16:54:56 +00:00
augustss
02186d8353 Small portability improvement. 2001-11-10 16:53:32 +00:00
augustss
495b9bd7d5 Fix a bug in xfer abort processing when the HC executes ahead of what
the driver aborts.
Don't block RHSC interrupts.
2001-11-09 15:01:57 +00:00
augustss
3dd8433864 Add a debug message. 2001-11-09 14:59:11 +00:00
augustss
1315ed7da5 Regen. 2001-11-09 05:49:53 +00:00
augustss
1018a07d67 Add a device (from OpenBSD). 2001-11-09 05:49:09 +00:00
augustss
a7fd78b8b5 Fix a bug in the DIAGNOSTIC version of the detach. 2001-11-07 14:13:35 +00:00
augustss
14e5f669c2 Improve some debug messages. 2001-11-07 02:55:04 +00:00
augustss
6e85b5b6c5 Add a workaround for broken ports (e.g. macppc) that do not call
cnpollc before cngetc in DDB.  DDB now works with USB console on Macs.

Don't frob the LEDs if nothing changes.
2001-11-07 02:52:47 +00:00
augustss
80c2d1c262 Regen. 2001-11-06 12:59:45 +00:00
augustss
0c8d23832b Add DMI CD/RW drive (my first USB 2.0 device!). 2001-11-06 12:59:17 +00:00
augustss
4469f30685 Add some USB 2 related definitions. 2001-11-06 12:29:48 +00:00
augustss
c342a3beab Add some useful macros. 2001-11-06 03:16:17 +00:00
augustss
41756e36f8 Regen. 2001-11-01 17:25:37 +00:00
augustss
16c1f136e5 Reorder two entries in numerical order. 2001-11-01 17:25:05 +00:00
augustss
492a03edae Regen. 2001-11-01 11:06:45 +00:00
augustss
44345ed1ac New device (from OpenBSD). 2001-11-01 11:06:18 +00:00
augustss
46679564db Add a DIAGNOSTIC test. 2001-10-28 17:16:58 +00:00
augustss
3deca4b069 Use the usb callout macros. 2001-10-28 16:53:21 +00:00
augustss
17ba384efc s/usbd_alloc_report_desc/usbd_read_report_desc/ 2001-10-26 17:58:21 +00:00
augustss
dc901ef1f3 Compare pointer with NULL instead of using them as a condition. 2001-10-26 17:53:59 +00:00
mycroft
a79508e9d8 Regen. 2001-10-26 03:47:47 +00:00
mycroft
ff3d1952b4 Disambiguate Orbit symbols. 2001-10-26 03:47:31 +00:00
mycroft
4f05bf08da Regen. 2001-10-26 03:29:02 +00:00
mycroft
0b572b9434 Add a different ID for the Kensington Orbit. 2001-10-26 03:28:03 +00:00
augustss
dddb1ab51d Add some conditional compilation so we can have atapibus, but not scsibus. 2001-10-25 23:56:02 +00:00
augustss
e0ec4407e6 Better debug messages. 2001-10-25 22:43:24 +00:00
augustss
437bf56d24 Fix pasto. From Andreas Johansson <ajo@rockstorm.se>. 2001-10-25 13:45:16 +00:00
augustss
8076bdb790 Regen. 2001-10-25 13:43:56 +00:00
augustss
c6f7926716 Add Logitech Cordless Desktop Optical. 2001-10-25 13:43:30 +00:00
augustss
12cafbf382 Regen. 2001-10-25 11:17:46 +00:00
augustss
78bed7c076 Remove Inc, Ltd, AB, Gmbh, etc. to be consistent (and save a few bytes). 2001-10-25 11:17:18 +00:00
augustss
bcab1556e8 Regen. 2001-10-25 11:04:36 +00:00
augustss
782a2cd1cc Add Olympos C-700. (From FreeBSD) 2001-10-25 11:04:18 +00:00
augustss
ea0061b951 Change reset sequence to get status change bits set right on startup. 2001-10-25 02:08:13 +00:00
augustss
8c7d06c6f9 Add commented out match level feature. 2001-10-24 22:31:04 +00:00
augustss
3c51e46294 Regen. 2001-10-24 21:49:07 +00:00
augustss
5bd2b33be2 Add a PS/2 adapter. 2001-10-24 21:48:38 +00:00
augustss
1f93717101 Some more paranoia tests when entering the interrupt routine. 2001-10-24 21:04:04 +00:00
augustss
80d988187f If we are the console and we have DDB then events must not be delivered
from the interrupt routine since this will enter the USB interrupt
processing recursively during polling.
Now ukbd can be used as console keyboard for DDB!
2001-10-24 21:02:18 +00:00