Commit Graph

49 Commits

Author SHA1 Message Date
n_hibma
cae922e49c Add a comment about the fact that adding an ID doesn't actually do anything. 2001-02-06 14:59:03 +00:00
n_hibma
c00900a9f3 Add some ids from NetBSD. 2001-02-05 11:02:50 +00:00
n_hibma
7ce6ba54d5 * Correct a broken entry
* Add the id for the Rio 800 USB.
Submitted by:	Wesley Morgan <morganw@chemikals.org>
2001-02-05 11:00:13 +00:00
n_hibma
a3510062b5 Nikon E990 and Nomad MP3 player Ids.
Submitted by:	pete@altadena.net
2001-01-18 00:15:49 +00:00
n_hibma
c25ef508dc Add a few Ids. From NetBSD. 2001-01-03 11:45:03 +00:00
n_hibma
80a80a08ce Sone -> Sony
Submitted by:	Hiroyuki Aizu <aizu@jaist.ac.jp>
2000-11-03 15:19:00 +00:00
n_hibma
95f62ef43c Sync with NetBSD 2000-10-25 10:13:47 +00:00
n_hibma
090b95e0cb Add the Sony MSC Memory Stick Adaptor (in the Sony PCS laptops) 2000-10-20 00:29:21 +00:00
wpaul
c0345f1c25 Add vendor ID for Kingston Technology and add device ID for
KNU101TX USB ethernet adapter. (Yes, another one.)
2000-10-10 23:23:54 +00:00
n_hibma
f2b5910f00 Add HP PhotoSmart C500 id.
PR:	kern/21841
Submitted by:	josh@zipperup.org
2000-10-08 21:31:39 +00:00
n_hibma
c6c89ef633 Sync with NetBSD. More ids, more! 2000-10-07 11:10:53 +00:00
n_hibma
279764097c Zyxel keyboard Id 2000-10-07 11:01:54 +00:00
n_hibma
d3d06a3e7c Additional Ids 2000-10-05 23:09:48 +00:00
wpaul
b7ef169503 Add new device ID for the D-Link DSB-650 USB ethernet adapter. This is
a pegasus device, which has product ID 0xABC1. I'm not sure why they
changed it; there's already an entry for a DSB-650TX.
2000-09-06 19:28:27 +00:00
gehenna
7f7dfca294 Add product ID (Prolific ATAPI-4 Bridge Controller).
Reported by: "K.Sumitani" <sumitani@bd2.hnes.nec.co.jp>
2000-09-05 16:00:55 +00:00
n_hibma
a9f667eb59 Fix typo's 2000-09-05 12:26:37 +00:00
n_hibma
0f6874ce0d Loads of scanner Ids. 2000-09-05 12:24:05 +00:00
n_hibma
269d974fe8 Add the id for the Sony memory sticks. 2000-09-04 15:29:42 +00:00
gehenna
9a83783c97 Add vendor IBM product USB CD-ROM Drive 2000-08-26 05:06:40 +00:00
n_hibma
2b03443c13 New ids
Submitted by:	Scott Long
PR:		18897
2000-08-06 23:26:58 +00:00
n_hibma
4d4350910d Some new ids, from NetBSD 2000-08-06 23:22:13 +00:00
n_hibma
f370c89b06 Lots of new device Ids. From NetBSD. 2000-07-17 09:55:34 +00:00
n_hibma
c8cb25b539 InSystem USB Cable (IDE adapter)
Submitted by:	"Sean O'Connell" <sean@stat.duke.edu>
2000-06-08 19:26:16 +00:00
n_hibma
0f40505a4f New entries (Mike Meyer) 2000-05-25 22:27:55 +00:00
n_hibma
1d71eedbee Add Alcor Keyboard with built-in hub and its keyboard. 2000-05-09 20:43:37 +00:00
n_hibma
33847a1a54 Sync with NetBSD 2000-05-07 19:44:16 +00:00
n_hibma
b19d3db251 Add the EzLink adapter Id 2000-05-01 20:26:12 +00:00
wpaul
4a56212456 Add entry for SmartBridges SmartLink USB ethernet adapter. 2000-04-14 14:43:34 +00:00
n_hibma
0530877f50 Add Zip 250 2000-04-06 10:16:24 +00:00
n_hibma
b04e4f380c Add Freecom + product; Update NetBSD's copyright 2000-04-03 14:47:43 +00:00
n_hibma
2037798219 Sync with NetBSD: Add a few id's and correct numerous typo's 2000-04-03 00:07:43 +00:00
jmb
090fde9a76 Add support for the LinkSys USB10T network adapter that
contains the ADMtek Pegasus AN986 USB chipset.  The
	adapter supports both 10BaseT and 100BaseT (including
	full-duplex).  The product code for these adapters is
	0x2206.
2000-04-02 12:43:34 +00:00
wpaul
dfc69b97fc Add vendor/product ID for two more KLSI-based devices, including a
USB ethernet adapter being handed out by @Home.
2000-03-29 19:44:48 +00:00
gehenna
0d7595813a Add ID (Keisokugiken Corp. HKS-0200 USBDAQ) 2000-03-29 15:07:20 +00:00
wpaul
305ad48765 Add device ID for LinkSys USB10T ethernet adapter (0x2202). 2000-03-21 15:18:51 +00:00
gehenna
da51afc18d Add 22 vendor IDs. 2000-03-20 19:49:20 +00:00
gehenna
a680e52b62 Add 80 vendor IDs. 2000-03-20 18:30:04 +00:00
n_hibma
c90a664a70 Add Y-E Data floppy drive. 2000-03-15 21:53:09 +00:00
gehenna
e03f01682d Add Corega FEther USB-TX.
Submitted by:	iwasaki
Approved by:	jkh
2000-03-09 16:28:58 +00:00
n_hibma
0ea7dddb88 Correct the entry for the Kodak DC290.
Submitted By:	Oliver Fromme <olli@dorifer.heim3.tu-clausthal.de>
2000-01-28 10:26:29 +00:00
wpaul
d5c9bbfbf2 More USB ethernet tweaks:
- Sync ohci, uhci and usbdi modules with NetBSD in order to obtain the
  following improvements:
        o New USBD_NO_TSLEEP flag can be used in place of UQ_NO_TSLEEP
          quirk. This allows drivers to specify busy waiting only for
          certain transfers (namely control transfers for reading/writing
          registers and stuff).
        o New USBD_FORCE_SHORT_XFER flag can be used to deal with
          devices like the ADMtek Pegasus that sense the end of bulk OUT
          transfers in a special way (if a transfer is exactly a multiple
          of 64 bytes in size, you need to send an extra empty packet
          to terminate the transfer).
        o usbd_open_pipe_intr() now accepts an interval argument which
          can be used to change the rate at which the interrupt callback
          routine is invoked. Specifying USBD_DEFAULT_INTERVAL uses the
          value specified in the device's config data, but drivers can
          override it if needed.
- Change if_aue to use USBD_FORCE_SHORT_XFER for packet transmissions.
- Change if_aue, if_kue and if_cue to use USBD_NO_TSLEEP for all
  control transfers. We no longer force the non-tsleep hack for
  bulk transfers since these are done asynchronously anyway.
- Removed quirk entry fiddling from if_aue and if_kue since we don't
  need it anymore now that we have the USBD_NO_TSLEEP flag.
- Tweak ulpt, uhid, ums and ukbd drivers to use the new arg to
  usbd_open_pipe_intr().
- Add a flag to the softc struct in the ethernet drivers to indicate
  when a device has been detached, and use this flag to perform
  tests to prevent the drivers from trying to do control transfers
  if this is the case. This is necessary because calling if_detach()
  with INET6 enabled will eventually result in a call to the driver's
  ioctl() routine to delete the multicast groups on the interface,
  which will result in attempts to perform control transfers. (It's
  possible this also happens even without INET6 support enabled.) This
  is pointless since we know that if the detach method has been called,
  the hardware has been unplugged.
- Changed watchdog timeout routines to just call the driver init routines
  to initialize the device states without trying to close and re-open the
  pipes. This is partly because we don't want to frob things at interrupt
  context, but also because this doesn't seem to work right and I don't
  want to panic the system just because a USB device may have stopped
  responding.
- Fix aue_rxeof() to be a little smarter about detecting when a double
  transfer is needed. Unfortunately, the design of the chip makes it hard
  to get this exactly right. Hopefully, this will go away once either
  Nick or Lennart finds the bug in the uhci driver that makes this ugly
  hack necessary.
- Also sync usbdevs with NetBSD.
2000-01-20 07:38:33 +00:00
wpaul
499ef83f97 Bunch of updates:
- Add vendor/device ID for Corega USB-T ethernet adapter to necessary
  places so that it will work with the kue driver.

- Add vendor/device ID for CATC Netmate devices for driver to be added
  soon.

- Get really crazy about netisr stuff: avoid doing any mbuf allocations
  or deallocations at splbio/splusb.

- Fix if_aue driver so that it works with LinkSys USB100TX: you need
  to flip the GPIO bits just the right way to put the PHY in the right
  mode.
2000-01-13 20:13:58 +00:00
n_hibma
1f5f1389c1 Add Sun keyboard and NetChip 2000-01-10 22:31:01 +00:00
wpaul
a0e2d7af15 Add the vendor/device IDs for the LinkSys USB100TX.
Note: the .INF file for LinkSys's driver says the vendor ID is 0x66b,
however this does not agree with the vendor ID listed for LinkSys in
the company list from www.usb.org. In fact, 0x66b doesn't seem to appear
in the company list at all. Furthermore, this same vendor ID crops
up in some of the D-Link .INF files. Frankly I don't know what the heck
is going on here, but I need to add 0x66b to usbdevs and call it
something, so here we are.
2000-01-08 07:32:48 +00:00
wpaul
c448dd1fa7 Add the vendor and device IDs for a whole bunch of additional USB
ethernet adapters that are supported by the aue and kue drivers.
There are actually a couple more out there from Accton, Asante and
EXP Computer, however I was not able to find any Windows device
drivers for these on their servers, and hence could not harvest
their vendor/device ID info. If somebody has one of these things
and can look in the .inf file that comes with the Windows driver,
I'd appreciate knowing what it says for 'VID' and 'PID.'

Additional adapters include: the D-Link DSB-650 and DSB-650TX, the
SMC 2102USB, 2104USB and 2202USB, the ATen UC10T, and the Netgear EA101.
These are all mentioned in the man pages, relnotes and LINT.

Also correct the date in the kue(4) man page. I wrote this thing
on Jan, 4 2000, not 1999.
2000-01-07 22:18:49 +00:00
wpaul
8285675d99 Correct the vendor ID for KLSI: it's actually 0x5e9. 0x3e8 is the
vendor ID for Aox Inc, which makes the controller engine and/or
firmware for the KLSI chip.
2000-01-05 18:25:53 +00:00
wpaul
a0156fbe84 Add device driver support for USB ethernet adapters based on the
Kawasaki LSI KL5KUSB101B chip, including the LinkSys USB10T, the
Entrega NET-USB-E45, the Peracom USB Ethernet Adapter, the 3Com
3c19250 and the ADS Technologies USB-10BT. This device is 10mbs
half-duplex only, so there's miibus or ifmedia support. This device
also requires firmware to be loaded into it, however KLSI allows
redistribution of the firmware images (I specifically asked about
this; they said it was ok).

Special thanks to Annelise Anderson for getting me in touch with
KLSI (eventually) and thanks to KLSI for providing the necessary
programming info.

Highlights:
- Add driver files to /sys/dev/usb
- update usbdevs and regenerate attendate files
- update usb_quirks.c
- Update HARDWARE.TXT and RELNOTES.TXT for i386 and alpha
- Update LINT, GENERIC and others for i386, alpha and pc98
- Add man page
- Add module
- Update sysinstall and userconfig.c
2000-01-05 04:27:24 +00:00
wpaul
b39a79861d This commit adds device driver support for the ADMtek AN986 Pegasus
USB ethernet chip. Adapters that use this chip include the LinkSys
USB100TX. There are a few others, but I'm not certain of their
availability in the U.S. I used an ADMtek eval board for development.
Note that while the ADMtek chip is a 100Mbps device, you can't really
get 100Mbps speeds over USB. Regardless, this driver uses miibus to
allow speed and duplex mode selection as well as autonegotiation.
Building and kldloading the driver as a module is also supported.

Note that in order to make this driver work, I had to make what some
may consider an ugly hack to sys/dev/usb/usbdi.c. The usbd_transfer()
function will use tsleep() for synchronous transfers that don't complete
right away. This is a problem since there are times when we need to
do sync transfers from an interrupt context (i.e. when reading registers
from the MAC via the control endpoint), where tsleep() us a no-no.
My hack allows the driver to have the code poll for transfer completion
subject to the xfer->timeout timeout rather that calling tsleep().
This hack is controlled by a quirk entry and is only enabled for the
ADMtek device.

Now, I'm sure there are a few of you out there ready to jump on me
and suggest some other approach that doesn't involve a busy wait. The
only solution that might work is to handle the interrupts in a kernel
thread, where you may have something resembling a process context that
makes it okay to tsleep(). This is lovely, except we don't have any
mechanism like that now, and I'm not about to implement such a thing
myself since it's beyond the scope of driver development. (Translation:
I'll be damned if I know how to do it.) If FreeBSD ever aquires such
a mechanism, I'll be glad to revisit the driver to take advantage of
it. In the meantime, I settled for what I perceived to be the solution
that involved the least amount of code changes. In general, the hit
is pretty light.

Also note that my only USB test box has a UHCI controller: I haven't
I don't have a machine with an OHCI controller available.

Highlights:

- Updated usb_quirks.* to add UQ_NO_TSLEEP quirk for ADMtek part.
- Updated usbdevs and regenerated generated files
- Updated HARDWARE.TXT and RELNOTES.TXT files
- Updated sysinstall/device.c and userconfig.c
- Updated kernel configs -- device aue0 is commented out by default
- Updated /sys/conf/files
- Added new kld module directory
1999-12-28 02:01:18 +00:00
n_hibma
051d4a9d4b Add usbdevs and friends. 1999-11-18 18:02:44 +00:00