Commit Graph

5671 Commits

Author SHA1 Message Date
thorpej e293024ffa This is the long-awaited "new Tulip driver", a complete, from-scratch
rewrite of the driver for the DECchip 21x4x Ethernet chips, and a variety
of clones.

Currently, the driver supports the Winbond 89C840F (this works pretty
well), and the Lite-On PNIC (e.g. NetGear PCI boards), however Lite-On
support may be broken [I may simply have a busted test board].

Eventually, support for the Macronix and ASIX chips will filter into
this driver, and then, slowly, support for the genuine DEC chips,
and maybe even the DE-425 EISA model.
1999-09-01 00:32:41 +00:00
ad 78d4510ba0 Pass color value through ri->ri_devcmap before writing. 1999-08-31 10:11:52 +00:00
bouyer 7c1c212662 If we are using UDMA mode > 2 and get a DMA error, downgrade to UDMA mode 2
first: maybe we incorrectly guessed the cable type.
1999-08-30 12:58:58 +00:00
bouyer 8e49b58de0 Add support for Intel 810 chipset (ICH/ICH0).
While I'm there merge back piix_channel_map into piix_chip_map.
1999-08-30 12:49:21 +00:00
thorpej dea48ccdf9 Oops, back out stuff I didn't mean to commit. 1999-08-30 01:05:08 +00:00
thorpej a138de1eb5 Add detach goo; still needs work in the `scsibus' and further layers. 1999-08-30 01:04:31 +00:00
augustss 7a3bd0ab27 Add some missing request codes. 1999-08-29 22:45:41 +00:00
thorpej dd611fa302 Set openings to 1; only one command may be queued with the device at
a time.
1999-08-29 20:41:12 +00:00
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
bouyer 52068f73ce Add support for the Promise Ultra/33 and /66 pci IDE controller. In addition to
chip-dependant code this required the following changes:
- Instead of attaching the device in a generic way with some chip-dependant
  routines, use a chip-dependant attach routine with some common code
  factored out. The code is marginally bigger, but this allows the CMD64x
  flag hack to go away.
- For chips that report per-channel 'irq triggered', test this before calling
  wdcintr() for the native-pci irq case (compat intr can't be shared),
  as wdcintr() has no good way to know if a irq was for it or not, and
  ends up with irq loss. XXX for chips that don't have this feature irq sharing
  will not work properly !
- add my copyrigth notice (could have been done some time ago I think :)

There are still some issues to be solved with the Promise controller and
ATAPI devices.
Many thanks to Paul Newhouse for shipping me 2 Ultra/33 boards for doing this
work.
1999-08-29 17:20:10 +00:00
bouyer 4819ee1cf1 Add definitions of the DMA mode control registers. They should be used
by pciide, but I have yet to find how to map them.
1999-08-29 17:06:43 +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
thorpej 61f3c9356e If scsipi_make_xs() fails, make sure to flag the buffer as error'd,
if provided, and biodone() it.  Callers of scsipi_command() expect
this to be done.
1999-08-28 22:28:35 +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 64c7328230 Regen. 1999-08-28 09:22:58 +00:00
augustss d0fbee34df Add a bunch of i810 devices. From Paul Shupak <paul@plectere.com>. 1999-08-28 09:18:08 +00:00
thorpej 299c0b1d83 Regen. 1999-08-27 23:27:39 +00:00
thorpej e1b0108ce6 Add Samsung Semiconductor KS8920 10/100 Ethernet. 1999-08-27 23:25:36 +00:00
is d8c7407afe Factor out arc_storelladdr(), and use that instead of arc_ifattach() in
the bah_reset() function.
This makes the last change work without deconnecting all the other interfaces
from the interface list.
1999-08-27 19:23:19 +00:00
thorpej 456af6d558 Reduce the number of transmit fragments to 16. 1999-08-27 19:21:32 +00:00
thorpej 513feda9ab - Include the RXE (receive error) interrupt in the interrupt enable mask,
and consider it to be like an RCC (receive copy complete).  The RCC
  code path has always checked for bad received packets.
- Trim the CRC length off the recived packet length; the EPIC/100 always
  includes the CRC in the packet.
- Improve fatal error reporting.
1999-08-27 19:13:00 +00:00
thorpej 43c0128089 Small consistency nit. 1999-08-26 22:44:29 +00:00
thorpej f2a165de01 Make monochrome attribte allocation a bit more obvious. 1999-08-26 21:48:11 +00:00
thorpej f0629e4b90 Change the way the default foreground and background colors are chosen:
require the front-end to initialize rc_deffgcolor and rc_defbgcolor (both
new members), and override these only if RASTERCONSOLE_{FG,BG}COL are
set in the kernel configuration file.
1999-08-26 20:48:09 +00:00
is 8679b79192 Only use ifp->if_addrlen after initializing it.\
Problem detected by Andreas Johansson.
1999-08-26 20:44:50 +00:00
hannken f04bd56be1 Make `sc_ops->sdo_flush' synchronous. The flags `SDF_FLUSHING' and
`SDF_DIRTY' were never reset because `sddone' doesn't get called from
synchronous scsi commands.
1999-08-26 09:28:17 +00:00
mrg 387650fb8b do not install these headers. they are large (~1.8M) and useless to userland. 1999-08-26 07:58:58 +00:00
nisimura 94073f1fd9 One more ioctl() fix. Most of WSDISPLAYIO_xxx were never been called when
no wsmux device is installed.
1999-08-26 06:37:42 +00:00
oster b1615831d2 Nuke some unused code which, were it enabled, might be useful for
performance measurement, but which would cause data corruption.
1999-08-26 02:40:27 +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
thorpej 90b9deda72 When padding short packets on transmit, don't include the CRC length
in the computation.  kern/8194.
1999-08-25 22:41:42 +00:00
augustss 6516d0b239 Fix an ioctl() problem. From nisimura@itc.aist-nara.ac.jp (Toru Nishimura). 1999-08-25 21:05:21 +00:00
augustss e0e1fbbe36 Regen. 1999-08-25 20:34:56 +00:00
bouyer d6c3ef56b4 Guard pool_get()/pool_put() with splbio()/splx(). Fix kern/8245. 1999-08-25 17:08:20 +00:00
augustss 02a79dc13e Add Multitech MT5634ZBA. From FreeBSD. 1999-08-25 16:28:12 +00:00
ad 9a61ce5bff When clearing the entire display, point to the start of the framebuffer,
not start of console output. Also, do not advance by ri_delta every row.
1999-08-25 08:45:25 +00:00
nisimura de9efb01d3 - Fix an error in cursor image manipulation. I learned a pair of Bt431
were populated in reverse order from PMAG-A MX ...
1999-08-25 07:56:22 +00:00
nisimura 0bdb76e5cf - 24bit per pixel TX framebuffer occupies 0x600000. 1999-08-25 02:02:22 +00:00
ross 3844ce8324 Spelling. 1999-08-25 00:59:08 +00:00
soren aa550d38fb Regenerate. 1999-08-24 21:32:25 +00:00
soren fa181849a2 Add Intel i740. 1999-08-24 21:32:04 +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
tron 766b5fef17 Regen. 1999-08-24 17:48:31 +00:00
tron 7a80808434 Add Allied Telesis LA-PCM (NE2000 compatible) and Contec C-NET(PC)C
(MB8696x based) pcmcia ethernet cards. Patches supplied by
Kawamoto Yosihisa in PR kern/8260 and kern/8261.
1999-08-24 17:47:44 +00:00
rh 5cfe8783f9 Regen. 1999-08-24 12:47:20 +00:00
rh 416c42cc34 Add AdLib MSC 32 Wave PnP board (wss audio device). 1999-08-24 12:46:55 +00:00
ad 7f2b1ba8f2 - Change the semantics of rasops_init slightly
- Re-name rasops_setfont to rasops_reconfig
- Add some new run-time 'features'
- Bring all run-time 'features' under control of rasops_info::ri_flg
- Some cosmetic changes
1999-08-24 11:07:31 +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
pk 65cfdf2877 Disable inclusion of debugging code by default.
Turn compile-time flag I82586_DEBUG into a boolean switch.
1999-08-23 12:12:42 +00:00
pk 9fceb1947d Do not report "spurious interrupts"; this is a relic of the PC-only
days of this driver.
1999-08-23 12:00:11 +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 5d8adfb5a2 Disable interrupts early. 1999-08-21 21:35:36 +00:00
augustss a293a6cc73 Make sure not to call tsleep() from suspend/resume routine. 1999-08-20 16:42:38 +00:00
mouse 1705bbe96b Get rid of ugly vertical bars which occurred when
character-cell boundaries != byte boundaries.
("width" (despite the poor name) should be computed based on the
*old* value of bg, not the *new* one.)
Fixes PR 8221.
1999-08-20 06:46:44 +00:00
sommerfeld be5fe633b8 clean up attach messages slightly. 1999-08-20 03:36:59 +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
ad afb0c7b853 Make this compile. Patch from Simon Burge. 1999-08-19 11:20:34 +00:00
tron f625e72668 Regen. 1999-08-19 08:06:50 +00:00
tron 93f86e5ed5 Recognize a 3Com 3c509 Combo configured in EISA mode. Fixes PR kern/8234
by Thomas Pfaff.
1999-08-19 08:06:31 +00:00
matt fd59bba7cb after bus_dmamem creating some memory, zero it out. This has stopped
my alpha from getting COMMAND FAILED on random boots.
1999-08-19 00:43:45 +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
drochner a47874ac23 correct a comment 1999-08-17 16:15:05 +00:00
augustss 3016e1ebe0 Make some small changes to make it compile on OpenBSD. 1999-08-17 16:06:20 +00:00
drochner f61d8fd937 regen 1999-08-17 09:42:14 +00:00
drochner c8aabedc83 -mention a location where the old PCI database can still be found
-add Alteon Gigabit Ethernet
1999-08-17 09:40:25 +00:00
thorpej e71ad5a0ac The CCB already contains its DMA address, so no need to recompute it
over and over.
1999-08-17 02:09:47 +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 f7c5edea20 Mention mux # when ignoring it for the console. 1999-08-16 23:22:22 +00:00
mcr 03946f957a Added Solidum Systems PCI vendor ID and Device IDs 1999-08-16 21:36:39 +00:00