Commit Graph

2168 Commits

Author SHA1 Message Date
mycroft b15cb82a2d Further cleanup of toggle handling. Now that we use EHCI_QH_DTC, we don't
need to fiddle with the TOGGLE bit in the overlay descriptor, so minimize
how much we fuss with it.
2004-06-23 06:45:56 +00:00
mycroft dbee7a2507 In the "seemed like a good idea until I found the fatal flaw" department...
Attempting to read a maximum-size string descriptor causes my kue device to go
completely apeshit.  So, go back to the original method, but allow the device
to return a shorter string than it claimed.
2004-06-23 06:27:54 +00:00
mycroft 1bce39942b Whoops, use the correct value for the maximum string descriptor length. 2004-06-23 05:23:19 +00:00
mycroft ef77780b63 Yes, some devices return incorrect lengths in their string descriptors. Rather
than losing, do what Windows does: just request the maximum size, and allow a
shorter response.  Obsoletes the need for UQ_NO_STRINGS, and therefore these
"quirks" are removed.
2004-06-23 02:30:52 +00:00
mycroft a20e630437 Fix an error in a debug printf(). 2004-06-22 22:00:11 +00:00
mycroft 7c3a6504d0 Adjust a couple of comments to make it clear WTF is going on. 2004-06-22 18:27:46 +00:00
mycroft 60208395fd Update comment. 2004-06-22 18:05:18 +00:00
mycroft a995be9908 Fix a printf() error. 2004-06-22 12:21:04 +00:00
mycroft a31a65fb9f Remove comment about the data toggle being borked. 2004-06-22 09:46:46 +00:00
enami 8bafaf56a7 As the ehci_idone() now uses the variable `epipe' unconditionally, always
declare it (in other words, make this file compile w/o EHCI_DEBUG).
2004-06-22 09:16:56 +00:00
mycroft 7a2cdd24f9 Fix a stupid bug in ehci_check_intr() that caused use to try to complete a
transaction that was still running.  Now ehci can handle multiple devices
being active at once.
2004-06-22 08:55:25 +00:00
mycroft 4114710563 Oops. Remove a couple of printf()s. 2004-06-22 07:40:19 +00:00
mycroft 941901b304 Failure to properly mask off UE_DIR_IN from the endpoint address was causing
OHCI_ED_FORMAT_ISO and EHCI_QH_HRECL to get set spuriously, causing rather
interesting lossage.

Suddenly I get MUCH better performance with ehci...
2004-06-22 07:20:35 +00:00
mycroft 46d9c14fee Set the data toggle correctly, and use EHCI_QTD_DTC. This fixes problems with
my ALi-based drive enclosure (it works now, rather than failing to attach).
Also seems to work with a GL811-based enclosure and an ASUS enclosure with a
CD-RW, on both Intel and NEC controllers.

Note: The ALi enclosure is currently very SLOW, due to some issue with taking
too long to notice that the QTD is complete.  This requires more investigation.
2004-06-22 05:25:10 +00:00
augustss 79295fa58d Remove change accidentally committed by tls. 2004-06-14 13:52:55 +00:00
tsarna 4605dd7457 Add calibration support to uep driver.
Untested, still need a userland utility to calibrate with.
2004-06-12 17:52:41 +00:00
mycroft 738ef9dc5d Fix an unimportant typo. 2004-06-12 16:02:42 +00:00
petrov 3936b06424 Initialize restartcnt. from FreeBSD. 2004-06-11 17:25:47 +00:00
jdolecek 849c8f1904 attach to Sitecom USB to serial cable
patch submitted in PR kern/25510
2004-06-05 08:41:43 +00:00
jdolecek 3173ee1a05 regen:
add Sitecom USB to serial cable
info submitted in PR kern/25510
2004-06-05 08:40:10 +00:00
jdolecek 80ce2a5588 add Sitecom USB to serial cable
info submitted in PR kern/25510
2004-06-05 08:39:31 +00:00
grant 52620d764c regen 2004-05-30 09:28:48 +00:00
grant cd624764ba add 2nd vendor ID for Chicony Electronics (0x0c45) and add Chicony
TwinkleCam USB camera (0x600d).
2004-05-30 09:27:56 +00:00
tsarna 6cf367d31d "uep" a driver for USB eGalax touch-panels. These are commonly found on
Xenarc, Liliput, etc. small touchpanel LCD displays.

TODO:
- manpage
- calibration support (make hpc's tpcalib stuff more MI?)
- On i386 and other xfree-ish xservers, (currently-uncomitted) patches
  are needed for X to honor wscons absolute mouse position events.
2004-05-24 23:48:36 +00:00
tsarna b20d882c63 regen 2004-05-24 19:02:19 +00:00
tsarna a0645ac0f8 Add IDs for eGalax USB touchpanel controllers.
Descriptions are not very good because the only documentation I have
says "the VID and PID may be one of these combinations", without any
additional information about the differences or even model names.
2004-05-24 19:00:42 +00:00
martin 16cb7d6f69 Make sure that we call uplcom_set_line_state() to get consistent state
between our idea of flow controll settings and the chips one.
In uplcom_set_line_state use the same value as the manufacturer suggests,
since the previously used (umodem based) values do not seem to work.
It is not completely clear what happened here - either the "not calling
uplcom_set_line_state" due to luck prevented the non working state to
be discovered or there are variants of the chip that need the old values.
During testing none such chips have been found - if they ever apear we
might have to make this function more intelligent, depending on the chip
in use.
2004-05-20 09:23:33 +00:00
jdolecek 958daa19cd add support for USB_GET_DEVICEINFO and USB_GET_STRING_DESC ioctls,
with same meaning as for ugen(4)
2004-05-08 11:41:19 +00:00
itojun 300aa0dcd5 use bounded string ops (snprintf, strl*) 2004-04-23 17:25:25 +00:00
itojun aca4c091d3 sprintf -> snprintf 2004-04-22 00:17:10 +00:00
martin 90aca47286 Initialize sc_rts and sc_dts to 0, instead of -1, as suggested in
PR kern/21043.
2004-04-09 19:06:52 +00:00
matt f8bf8392a4 Regen. 2004-04-08 05:36:30 +00:00
matt ebe3577cee Add Dell BC02 Bluetooth USB Adapter 2004-04-08 05:36:00 +00:00
matt e31defb1fb Regen. 2004-04-07 18:11:31 +00:00
matt 6e500a5352 Add Dell's vendor code 2004-04-07 18:11:07 +00:00
tls 05e1bf3ec9 MAXBSIZE->MAXPHYS -- this mysteriously broke all *kinds* of stuff when
MAXBSIZE had been reduced by the user (e.g. transfers from umass disks).
2004-03-22 14:55:42 +00:00
augustss 26b7762c08 Regen. 2004-03-15 11:16:43 +00:00
augustss ae2960eaf0 Add some devices. From FreeBSD. 2004-03-15 11:16:23 +00:00
augustss 92bc86cdb6 Add Epson Perfection 1670 scanner 2004-03-15 11:09:23 +00:00
augustss eaf85ed85e Regen. 2004-03-15 11:08:53 +00:00
augustss fd28ddd148 Add Epson Perfection 1670 scanner 2004-03-15 11:08:34 +00:00
augustss da2d21f6ee Set the device address before reading the device descriptor.
This makes certain non-conforming devices work.
Suggested by Peter Burnett in kern/24716.
2004-03-15 10:35:04 +00:00
drochner 04325221da regen 2004-03-12 13:32:00 +00:00
drochner ff0d2298c2 add Canon EOS300d 2004-03-12 13:31:28 +00:00
martin ce925f4f4f Interrupt descriptors might become invalid while being processed in
uhci_check_intr - so remember their next pointer before calling it.
Patch provided by Matthew Orgass in PR kern/24542.
2004-03-02 16:32:05 +00:00
drochner 835771a879 On disconnect, set the "subdev" pointer to NULL, otherwise
free()d memory will be referenced through
usbd_add_dev_event(USB_EVENT_DEVICE_DETACH)->
usbd_fill_deviceinfo()
later.
might need more review, but at least it doesn't crash on
amd64 anymore
2004-02-25 21:52:59 +00:00
augustss 187630511a Add a serial adapter. From PR 24482 2004-02-19 01:12:05 +00:00
augustss 84fc0b7421 Regen. 2004-02-19 01:11:13 +00:00
augustss 6f5601f100 Add a serial adapter. From PR 24482 2004-02-19 01:10:42 +00:00
augustss 7cbb919e9d Fix pasto. 2004-01-28 22:37:50 +00:00