Commit Graph

5537 Commits

Author SHA1 Message Date
oster 5cab826918 Clean up reconstruction accounting a bit. While it worked before, it was
slightly broken in the case where the RAID set did not support reconstruction.
1999-08-13 01:43:33 +00:00
bouyer 59af828a94 Regen. 1999-08-12 09:43:18 +00:00
bouyer 7c3cb9c796 Add Promise Ultra66, change entry of Ultra33 to reflect the fact that can
"only" do ultra/33.
1999-08-12 09:42:11 +00:00
thorpej ae6f518821 Garbage-collect CCDF_SWAP; no longer used, and doesn't make any sense
with the UVM swap code.
1999-08-11 02:44:35 +00:00
thorpej dd5ae858e0 We really only need *one* componenet buffer pool... 1999-08-11 02:41:02 +00:00
oster 33e458640f Garbage collect unused struct rf_test_acc. 1999-08-11 02:20:35 +00:00
oster 31b98d3572 When reporting the status of a component during configuration,
provide more intuitive information about whether a component is clean
or not.
1999-08-10 22:56:20 +00:00
oster 620eda50c7 Don't allow reconstructs, copybacks, or forced failures of components if
using a RAID 0, since RAID 0 can't handle those sorts of things.
1999-08-10 22:46:59 +00:00
oster 0b08c839eb Don't go ape if there is a problem verifying the parity. Note the condition
and inform the user (as opposed to panicing the system!).
1999-08-10 22:19:27 +00:00
oster 49efd10006 Oops. Make minor change that I forgot when adding the parity check ioctl. 1999-08-10 21:41:37 +00:00
oster a3aefdaee3 Add support for easily checking the parity status from userland.
Also: spl protect rf_RewriteParity().
1999-08-10 18:18:30 +00:00
oster a531d8c31e Trying to rebuild parity on a degraded set is bogus, so don't allow that.
Also, check sooner for a RAID 0 set, since rewriting parity makes no
sense there either.
1999-08-10 01:53:26 +00:00
bouyer 26db0bba90 Garbage-collect C_INUSE and C_NEEDDONE. 1999-08-09 09:56:00 +00:00
bouyer 5885dbb878 - use pool(9) for wdc_xfer, instead of managing a free list.
- fix printing of Ultra-DMA modes (shows up when the drive supports highther
  modes than the controller).
- Don't use C_NEEDDONE anymore. We were setting this flag in a possibly
  freed wdc_xfer (this didn't create problems, as it was free'd in the POLL
  case only, while IRQs are blocked, but it's not good practice anyway
  and pool(9) complains about it ;)
1999-08-09 09:55:18 +00:00
bouyer 7eb1fae5d3 Add a missing 'return' in previous commit.
Don't use C_NEEDDONE anymore (it's safe to always call scsipi_done()).
1999-08-09 09:49:48 +00:00
bouyer 7e874499c9 Don't call wddone() from _wdstart(), the ata_wdc system will do it now.
call wd_flushcache() with the proper flags (especially don't set
AT_WAIT | AT_POLL).
1999-08-09 09:48:04 +00:00
bouyer c0da6c9129 Don't use C_NEEDDONE, it's deprecated. 1999-08-09 09:43:11 +00:00
ragge 148c244c15 Driver for the DEC SGEC, Second Generation Ethernet Controller. 1999-08-08 11:41:28 +00:00
augustss 38de172f03 Add usbd_set_hub_feature() and usbd_clear_hub_feature(). 1999-08-07 23:14:17 +00:00
augustss d6331b4ef4 Some new items. 1999-08-07 15:05:46 +00:00
augustss cdfc12a291 Make it possible to open wskbd devices for write (i.e. ioctl) even
if it is already open.
1999-08-07 15:04:35 +00:00
thorpej a8d8fc178f Fix a typo. 1999-08-07 07:36:19 +00:00
thorpej ec368bb906 Fix a problem uncovered by attempting to compile on the Alpha: overrun_buf
was being initialized to a KVA, when we really wanted a DMA address.  Change
the code to allocate the overrun buffer with the control blocks, and
properly initialize overrun_buf.

Note that overrun_buf cannot actually be shared between all boards; DMA safe
memory could vary from bus to bus.

Garbage-collect two functions which are no longer used because of the
above changes.
1999-08-07 07:20:15 +00:00
mycroft 6b33521af9 Increase several timeouts to 30s. 1999-08-07 02:51:51 +00:00
bouyer fae9929734 - Add some debug printf (WDCPROBE) in _wdcreset_wait(), I've needed these
2 times in the past
- Set up timeout per xfer instead of per interrupt. This helps with
  PIO transfer (we would call timeout()/untimout() several times for a
  transfer).
- If we missed an interrupt for a PIO transfer, reset and restart it
  immedialy, don't try to recover and continue. If we missed an interrupt we
  may have lost a read/write cycle on the IDE bus. If this happens 1) we
  corrupt data and 2) we enter an interrupt loop at the end of the xfer, as
  the drive has some more data to read/write, but the host thinks the xfer is
  done.
This last change fix the (or at last some of the) 'lookup after lost interrupt'
some peoples have been experiencing.
1999-08-06 12:00:23 +00:00
cgd 0ef6a875b8 regen for updated pcmciadevs 1999-08-06 06:39:57 +00:00
cgd 1780131e5c add an entry for the IBM EtherJet Ethernet PC Card (cs8920 based) 1999-08-06 06:39:29 +00:00
augustss 03c29debf5 Make this file compile again. 1999-08-05 11:25:47 +00:00
thorpej 191ab2b8e4 Since we have to go through fxp_init() to properly handle IFF_ALLMULTI
anyway, take advantage of this and greatly simplify the programming
of the multicast filter.  This solves the last reported "device timeout"
problem with this driver.
1999-08-05 01:35:40 +00:00
tron 439a6c4942 Add missing prototype for read_tekram_eeprom() to make driver compile if
"options NCR_TEKRAM_EEPROM" is specified in the kernel configuration file.
Patch supplied by Hans Hoppe in PR kern/8141.
1999-08-04 20:51:31 +00:00
ragge d1ffb22ab2 "files" also needed. 1999-08-04 19:13:05 +00:00
ragge 1aa825ae03 Converted to (mostly) MI code. 1999-08-04 19:12:22 +00:00
leo 7bff22bddc Catch a console configuration error. Instead of jumping through cdevsw indexed
on major(NODEV), call panic...
1999-08-04 14:40:54 +00:00
augustss fe98b81a44 Get the dependencies on NWSMUX right (I hope). 1999-08-04 11:26:04 +00:00
augustss 84d5e946e6 Use NMPU not NMIDI around call to mpu_intr. 1999-08-04 10:50:52 +00:00
augustss c1c87dde4a Add another file I forgot in my MPU changes. 1999-08-04 10:46:34 +00:00
nisimura cb6ed03a59 - Replace device node names of zskbd/zsms into lkkbd/vsms, respectively.
No functionality was changed at this moment.
- Apply recent changes in GENERIC to TCWSCONS.
1999-08-04 07:17:50 +00:00
thorpej 5ea625fe90 Almost completely rewrite the receive logic, making it as close as possible
to the EPIC/100 driver's (adjusting for the fact that Intel Ethernet chips
are from Pluto):
* Don't allocate receive buffers until the interface is actually brought
  up, and release all of them if the interface is taken down.
* Add a knob (defaults to off) which will copy an incoming packet to
  a single header mbuf if it is small enough to fit in one, rather than
  burning an entire cluster on it.  Note that this change will be mostly
  moot if/when sbcompress() is changed to handle compressing clusters.

Simplify some of the receive list logic:
* Rather than using a homegrown queue and additional software RX descriptors,
  use an ifqueue to queue receive buffers, and M_{GET,SET}CTX() to hook DMA
  maps and receive buffers together.

Clean up a bit:
* Macroize a bunch of things to make the code a bit easier to follow.
1999-08-04 05:21:18 +00:00
thorpej 11e9392b3e Only tick the MII if we are using it. 1999-08-04 00:17:28 +00:00
thorpej 0ae14b58eb Be a little less selective in the transmit interrupt path. 1999-08-04 00:14:08 +00:00
thorpej f1c6287a6e Use the Interrupt bit in the command block to generate interrupts, rather
than interrupting after every Command Unit Not Active event.
1999-08-03 23:37:14 +00:00
thorpej 1051ab605d G/c a flag. 1999-08-03 23:18:32 +00:00
thorpej 5c2b83a0ad Don't bother with interrupt-driven multicast setup. 1999-08-03 23:18:09 +00:00
thorpej 3012cf91af Completely rewrite the transmit logic, making it look more like the
EPIC/100 driver's.  Also, fix the "all multicast" logic.  Also do some
general cleanup.
1999-08-03 22:43:28 +00:00
oster e0c8203cb3 Nuke unused #define. 1999-08-03 22:07:39 +00:00
drochner f04cb4036f move common support functions for phy drivers from mii.c to mii_physubr.c,
so that they are not includes if no PHY is configured
(avoids code bloat if an interface driver has the "mii" attribute but
mii is not used by the particular version)
1999-08-03 19:41:49 +00:00
thorpej 4bd8f1566c Be a little nicer about memory usage:
* Don't allocate receive buffers until the interface is actually brought
  up, and release all of them if the interface is taken down.
* Add a knob (defaults to off) which will copy an incoming packet to
  a single header mbuf if it is small enough to fit in one, rather than
  burning an entire cluster on it.  Note that this change will be mostly
  moot if/when sbcompress() it changed to handle compressing clusters.
1999-08-03 17:25:51 +00:00
augustss dbb71e4b35 Add the file I forgot at the previous MPU changes. 1999-08-03 00:27:27 +00:00
augustss 208dad78d1 Get data toggle right for short bulk transfers.
(XXX This code needs to be rewritten.)
1999-08-02 23:35:55 +00:00
augustss caffcd4895 Another debug message. 1999-08-02 19:49:50 +00:00
augustss 2d4d29a1fa Test return values the right way. 1999-08-02 19:36:48 +00:00
augustss 094852eb36 Change it so that a pipe can be open RW instead of just R or W.
This makes close() work properly, but it is still not ideal.  Perhaps
there should be different device nodes for input and output on to
and endpoint with the same number?
Pay attention to the SHORT_XFER_OK ioctl().
1999-08-02 19:32:56 +00:00
augustss d2db832909 Do abort of transfers in a sane way. Fixes PR 8041. 1999-08-02 19:30:34 +00:00
augustss 42fb510148 Move the mpu device declaration to conf/files.
Let the mpu device attach at the sb device, and then midi at the mpu.
Update the mpu at eso attachment.
1999-08-02 17:37:41 +00:00
nisimura 9ab80b75b8 - Fix MX framebuffer size which should occupy 2MB in address range.
- Restore 72Hz interrupt service mistakenly ruined in the previous commit.
1999-08-02 06:00:40 +00:00
nisimura e78e58a7b8 - Fix TX 8bpp framebuffer size, which occupies 2MB.
- Rework CX RAMDAC register access like as other TC framebuffers.
1999-08-02 04:19:03 +00:00
matt f7141a0ffb The Tadpole 3GX uses a modified Sun Mouse protocol. Instead of
sending 5 bytes per sample, it sends 3 omitting the 2nd set of
dx/dy updates.  You can distinguish between the two forms since
the first byte of 5-bytes seq will be 0b10000xxx which a 3-byte
will have 0b10001xxx.  This changes allows the Xsun server to
run unchanged on the Tadpole 3GX (ignoring for now that the
colormap is still broken).
1999-08-02 01:50:27 +00:00
matt 825e233d2e Allow the mouse baud rate to be patched (rather than forcing a recompilation
of the kernel).  Also, if the mouse baud rate is 0, say the mouse the isn't
there (so a terminal may be attached in its place).  Make debugging mouse
problems much easier.
1999-08-02 01:44:22 +00:00
augustss cbf1f6f1b9 Move the MPU driver isa/ to ic/.
(I didn't move it in the repository because the revision history
is very short and uninteresting. :)
1999-08-01 18:05:39 +00:00
augustss 0c0dc211d4 Make an MPU attachment to ISA. Used for old Roland cards. Written
by me and gson@araneus.fi (Andreas Gustafsson).
1999-08-01 17:53:39 +00:00
ragge 6ca9b225e7 Add a timeout-routine that checks if transmit logic dies, and reset it
in that case. This is not uncommon when the interface is heavy loaded.
1999-08-01 15:25:41 +00:00
scw ba922d31d8 Re-work the Tx side to avoid calling into the tty layer at
interrupt time. This was the cause of the 'mmu fault' panics
seen by several people, as the Tx interrupt is at a higher
priority that spltty().
1999-08-01 09:35:05 +00:00
veego 9baa857f5b Regen. 1999-08-01 08:32:48 +00:00
veego 9657de4af2 Add an entry for the TI PCI1211 PCI-CardBus Bridge.
From the cardbus patches.
1999-08-01 08:32:08 +00:00
augustss b6b44d6809 Eliminate the need for needs-count for wsmux. This should make
wsdisplays work properly again.
1999-07-30 20:52:27 +00:00
thorpej fff1639c50 GRR! Kludge around the extremely annoying wsmux configuration lossage
by removing the "| wsdisplay" from the wsmux.c file declaration.  This
will cause any kernel which includes wsdisplay but not wsmux explicitly
to fail to link, but at least those of us with multiple wsdisplays on
a single machine can build kernels again.
1999-07-30 20:42:16 +00:00
nisimura c03616646c - Fix TX 66Hz interrupt handling. Verified ok with PMAG-JA as an 8bpp
console.  XXX troubles in cursor color.
- Typo in comments of MX.
1999-07-30 16:23:43 +00:00
bouyer 2917356cae Guard tsleep() with a while (!(wdc_c->flags & AT_DONE)) {}, as suggested by
Constantine Sapuntzakis confirmed by Bill Sommerfeld. Although nothing is
supposed to call wakeup on this without setting AT_DONE, it's good practice to
do it this way (the process may be waken up by a setrunnable() call).
1999-07-30 14:59:10 +00:00
augustss 09e76a1645 Remove two items that are done. 1999-07-30 11:40:19 +00:00
thorpej 76dcbfad36 Regen. 1999-07-29 20:58:19 +00:00
thorpej 8548b384f5 Add some Initio SCSI controller IDs. 1999-07-29 20:56:55 +00:00
augustss 3d3f77c49e Add the wsmux pseudo device. 1999-07-29 18:20:02 +00:00
bouyer a81c366fed Bump MAX_START to 256, so that the ncr driver can work with more than 5
devices on the same bus. See PR kern/6347 for details.
1999-07-29 10:00:34 +00:00
soren 7220690fb8 Regen. 1999-07-28 22:38:00 +00:00
soren 4341d92cb3 Correct Acard device names.
Add and update a few IBM devices.
Add Toshiba and NEC devices in Portege 3K's.
1999-07-28 22:36:10 +00:00
drochner 36e00c28de fix the previous fix 1999-07-28 10:03:02 +00:00
christos fb4ecab492 make these compile again s/#endif/#else/
again, it is impossible for me to make sure that they work.
1999-07-28 06:35:06 +00:00
castor 0a1820a4e7 regen 1999-07-27 17:55:00 +00:00
castor 424a28aa79 Add vendor ID for Geocast 1999-07-27 17:52:59 +00:00
thorpej d6c9ec0a2e Make this "should work" on big endian systems. 1999-07-27 00:55:34 +00:00
thorpej b73b84643f Add support for the SMC 83c175. Also, print out the chip rev when
we attach.
1999-07-27 00:37:34 +00:00
thorpej f48807a678 Regen. 1999-07-27 00:24:06 +00:00
thorpej b5dc3f5708 Add product ID for the SMC 83c175 Fast Ethernet chip. This is a cousin
of the SMC 83c170 which also supports CardBus.
1999-07-27 00:23:47 +00:00
explorer 8fa3d8be55 make the JVC 2626 match more than one version, since all seem to be
returning errors on the LUN probe.
1999-07-26 22:43:13 +00:00
ad e6216650d8 Use unsigned integer to hold font bits in putchar(). [This looks like the
source of glyph corruption].
1999-07-25 17:36:40 +00:00
augustss 4047458551 More DIAGNOSTIC messages. 1999-07-24 01:40:19 +00:00
hwr f6bf685b94 Regen. 1999-07-22 20:58:18 +00:00
hwr baf7e04902 Insert a space in New Media Corporation. Fixes kern/7817 by Lloyd Parkes. 1999-07-22 20:56:38 +00:00
thorpej 40d9e23179 Define the Volume Tag format. 1999-07-22 17:43:53 +00:00
ad a41907cbf8 - Style nits
- Kill some of the dainbramage in variable-depth copycols()
1999-07-21 19:19:03 +00:00
oster 5cef006d40 Need to splbio()/splx() protect some of the reconstruction stuff.
Without this, we have potentially bad interatctions with the pool
code.
1999-07-21 03:15:26 +00:00
drochner 963921febe regen 1999-07-20 20:59:03 +00:00
drochner 62adeef8f6 add TI TVP4020 Permedia 2 1999-07-20 20:58:20 +00:00
bouyer 29664a379a The options actually used are RASTERCONSOLE_{FG,BG}COL, not
RASTERCONS_{FG,BG}COL. defopt the rigth ones.
1999-07-20 18:05:15 +00:00
oster ce7cb7114d rf_UnconfigureVnodes() needs to be called in the DO_RAID_FAIL macro. 1999-07-19 01:36:07 +00:00
oster 0c7600ca4e sectorsPerStripeUnit should be larger than 0. If it isn't, simply fail.
(Thanks to Thor Lancelot Simon for noting the problem).
1999-07-19 01:35:19 +00:00
ross 5122ae5f44 Recognize 3c905C. 1999-07-15 18:10:29 +00:00
ross 4dae830922 Regen. 1999-07-15 18:06:39 +00:00
ross 4495d8362a product 3COM 3C905CTX 0x9200 1999-07-15 18:02:08 +00:00
augustss 50eef750e4 Regen. 1999-07-15 14:53:13 +00:00