Commit Graph

322 Commits

Author SHA1 Message Date
Nick Hibma
16fd39fc59 Dereference a pointer (print int instead of pointer value) 2000-04-03 22:28:13 +00:00
Nick Hibma
673ef6fe3a Numerous fixes brought in by Lennart Augustsson from NetBSD:
- Request the maximum number of LUNs on a device if it is
  a Bulk-Only device.

- Handle NO_TEST_UNIT_READY case for SCSI

- Add NO_START_STOP quirk for LS-120

- Fix a KASSERT which was the wrong way around.

- Kickstart the LS-120 with the infamous LS-120 specific command of
  which no one knows what it doesn, apart from the fact that it appeared
  in the Linux code someday.
2000-04-03 22:19:44 +00:00
Nick Hibma
cdb51d12a6 OpenBSD has a broken debugger that does not grok static. Use a
#define Static  static

that the OpenBSD folks can define it to be empty if they like.
2000-04-03 20:58:30 +00:00
Nick Hibma
329cac9cb7 Regen. 2000-04-03 15:15:50 +00:00
Nick Hibma
3a8acc3059 Add Freecom + product; Update NetBSD's copyright 2000-04-03 14:47:43 +00:00
Nick Hibma
540d9130cc Add a hack to cam that makes the cam_xpt available to the rest of the
kernel. Justin agress that there is no other reasonable alternative to
do automatic rescans on connect.

The problem is that when a new device attaches to a SIM (SCSI host
controller) we need to send a XPT_SCAN_BUS command to the SIM using
xpt_action. This requires however that there is a peripheral available
to take the command (otherwise xpt_done and later bomb). The RESCAN
ioctl uses the same periph.

This enables a USB mass storage drive to do an automatic rescan on
connection of the drive.

The automatic dropping of a CAM entry on disconnection was already
working (asynchronous event).

The next thing to do is find someone to commit a change to vpo to do the
same thing. Just port umass_cam_rescan and friends across to that
driver.

Approved by:   gibbs
2000-04-03 11:11:12 +00:00
Nick Hibma
3768ac3452 Sync with NetBSD: Add a few id's and correct numerous typo's 2000-04-03 00:07:43 +00:00
Nick Hibma
c7de838d37 Sync with NetBSD: Keep the bit position even when the report descriptor says POP. 2000-04-02 23:15:08 +00:00
Nick Hibma
526e193e18 Shoot. Did a compile in the wrong directory and missed this compiler
error.

Could someone pass me the pointy hat, please?
2000-04-02 22:04:18 +00:00
Nick Hibma
767fd36c73 Remove a static variable, a uniquifier for a SCSI command. It might have
produced inadvertently failed transfers in the case were multiple
Bulk-Only devices are connected and a command is prepared at the same
time.
2000-04-02 21:59:27 +00:00
Nick Hibma
b5cf22188d I got the CAM numbers (path id's, buses, unit numbers) and newbus
unit numbers all wrong. This did not show up because most of them where
zero anyway.

Use a separate buffer for command transforms instead of fiddling with
the existing cdb_bytes.

Take CAM_CDB_POINTER into account. Nobody is using it, but someone might
in the future.

Be more picky about what to accept in the UFI command set.

First attempt at implementing the ATAPI command protocol transforms.
This should at least make Imation Superdisk and other e-Shuttle based
devices show as attached. Maybe they even work to some extent.
2000-04-02 16:59:16 +00:00
Jonathan M. Bresler
4c9805fafa 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
Jonathan M. Bresler
0fe00f48d0 if USB support is not compiled into the kernel,
and has not been loaded via a kldload,
	running usbd(8) will autoload the "usb.ko" kld.

	thanks to Peter Wemm for enlightening me on the
	differences between kldfind(2) and modfind(2).
2000-04-02 06:28:40 +00:00
Bill Paul
c57afb7f7e Regenerate. 2000-03-29 19:46:41 +00:00
Bill Paul
554d5470ef 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
Masahide MAEKAWA
de06b995e0 Regen. 2000-03-29 15:08:02 +00:00
Masahide MAEKAWA
c4fdea33fb Add ID (Keisokugiken Corp. HKS-0200 USBDAQ) 2000-03-29 15:07:20 +00:00
Nick Hibma
a0e14f58d9 Revert to a static value for the timeout. The timeout was supposedly
to be based on the transfer speed, but I got it all wrong. The by far
biggest factor in the timeout is the start of a removable device, which
is about 2 seconds anyway.

Prodded by: Lennart Augustsson
2000-03-28 17:38:00 +00:00
Nick Hibma
20c206fd53 The REQUEST SENSE command is 6b not 16b. Use the struct scsi_sense to
indicate that we are working with that command.

Some corrected/added comments.
2000-03-26 01:39:12 +00:00
Bill Paul
b485fb175f Regenerate usbdevs files.
Also add device entry in if_kue.c for the LINKSYS USB10T adapter.

Also add calls to bpfdetach() in detach routines.
2000-03-21 15:20:41 +00:00
Bill Paul
695ddaa54a Add device ID for LinkSys USB10T ethernet adapter (0x2202). 2000-03-21 15:18:51 +00:00
Masahide MAEKAWA
ae562b99a0 Regen. 2000-03-20 19:49:50 +00:00
Masahide MAEKAWA
91441023d8 Add 22 vendor IDs. 2000-03-20 19:49:20 +00:00
Masahide MAEKAWA
bdc8d7478e Regen. 2000-03-20 18:30:34 +00:00
Masahide MAEKAWA
3935d591c6 Add 80 vendor IDs. 2000-03-20 18:30:04 +00:00
Nick Hibma
bc51947397 The completely rewritten USB Mass Storage driver. It supports the following
devices:

Tested:
   Zip 100 USB drive
   Y-E Data USB floppy drive

Untested: (let me know whether or not it works!)
   TEAC USB floppy drive
   Zip 250 USB drive
2000-03-18 17:33:41 +00:00
Nick Hibma
31bfa89e41 Get rid of the last remnants of powerhook abuse. 2000-03-18 14:54:54 +00:00
Bill Paul
726fcd3955 Add another device/vendor code combination to support yet another
KLSI-based device (Skymaster DHU-0404).
2000-03-18 01:36:37 +00:00
Nick Hibma
e2dbd15f2e Please welcome the URio driver. Written by
Iwasa Kazmi <kzmi\@ca2.so-net.ne.jp>
2000-03-16 09:16:14 +00:00
Nick Hibma
e557a32190 Add the TD's to the hash when they are created not when they are used.
This makes it possible to handle the done queue even when the end of tail
TD has ended up on the done queue as well (the xfer in this case is NULL
but the next field is valid, so we simply skip that element.

Make sure we mark all the handled transfers as handled.

Stop using powerhooks. They are a NetBSD-ism.
2000-03-15 22:27:24 +00:00
Nick Hibma
d0ba6675ce Add an ID for the SiS 5571.
Remove the unnecessary use of parent.
2000-03-15 22:26:17 +00:00
Nick Hibma
330dc9152d powerhooks no longer used 2000-03-15 22:15:21 +00:00
Nick Hibma
49d89e0791 Make the makefile work properly. 2000-03-15 22:13:50 +00:00
Nick Hibma
8be178756c Do not use the powerhooks at all, instead of abusing and empty #define. 2000-03-15 22:12:47 +00:00
Nick Hibma
799c4480f9 Never stop the control pipe 2000-03-15 22:09:53 +00:00
Nick Hibma
bf20c30848 Regen. 2000-03-15 22:04:01 +00:00
Nick Hibma
c7c6f59635 Add Y-E Data floppy drive. 2000-03-15 21:53:09 +00:00
Nick Hibma
14a069312d Update the e-mail address to a valid one. 2000-03-15 21:50:41 +00:00
Masahide MAEKAWA
c62c0f3f76 Add vendor/device ID for Corega FEther USB-TX.
Submitted by:	iwasaki
Approved by:	jkh
2000-03-09 16:35:21 +00:00
Masahide MAEKAWA
45c784a50b Regen. 2000-03-09 16:29:49 +00:00
Masahide MAEKAWA
ceb48d11a3 Add Corega FEther USB-TX.
Submitted by:	iwasaki
Approved by:	jkh
2000-03-09 16:28:58 +00:00
Nick Hibma
290c9a02c3 Fix flushing of the clists before deleting them. Stops the machine
from panicing when disconnecting a USB Wacom Graphire tablet.

jhk approved the fix some time ago, but I forgot to actually commit the
thing.

Reported by:	Dirk van Gulik <dirkx@webweaving.org>
Approved by:	jhk
2000-03-02 16:01:53 +00:00
Nick Hibma
5e78bf3190 Move the warning on wrong IRQ values to the right place, before any
resource allocation is attempted.

It will present the user with a message that he has to switch on USB
support in his BIOS.
2000-02-20 14:22:44 +00:00
Nick Hibma
8f9683e20c Correctly handle the conversion from virtual to physical addresses. The
problem was basically (for offset > 4096):

	vtophys(addr) + offset != vtophys(addr + offset)

Also, use TD's with a maximum size of 4k instead of 8kb for OHCI
controllers.

This problem occurs in drivers that use large transfer sizes:
umass, host2host and ethernet with jumbo frames.
2000-02-10 18:50:19 +00:00
Nick Hibma
4f2e8d6383 Add PCI Id's for i810 chipsets.
PR:		16517
Submitted by:	SAKIYAMA Nobuo <sakichan@lares.dti.ne.jp>
Approved by:	jhk
2000-02-07 12:50:33 +00:00
Nick Hibma
3a119ee1e2 Don't use tsleep when cold booting. It is called before bus->use_polling
is initialised by usb_init.

This might solve problems with some controllers not being initiliased
properly, because a delay was effectively a tsleep that returned
immediately.

Approved by:	jhk
2000-02-06 14:59:00 +00:00
Nick Hibma
ef4da90333 Disable the generation of SMIs (System Management Interrupts). Always set
the PIRQD bit.

This fixes the problem of uhub0 hanging forever during boot when USB
keyboard support is switched on in the BIOS on motherboards with Intel
chipsets (UHCI).

Approved by:	The Sheep
2000-02-06 14:52:27 +00:00
Nick Hibma
b70b9ce019 Commit missing bits, forgotten when committing support for suspend/resume
for USB.

Call uhci_power when suspending and resuming.

Approved by: The One.
2000-02-04 10:18:37 +00:00
Nick Hibma
9a69e6509a bus_release_resource is spellt like bus_release_resource not like
bus_delete_resource.

Fixes a problem when the probe succeeded, but the attach failed. The
release of the resources was done inproperly.

Approved by:	jkh
2000-01-31 14:05:21 +00:00
Nick Hibma
5a250db943 Get the KASSERT right. 2000-01-29 18:53:42 +00:00