Commit Graph

5707 Commits

Author SHA1 Message Date
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
augustss 9a0281ff87 Some new ioctl()s for the umodem driver. 1999-08-16 20:27:55 +00:00
augustss aa7264892d Implement a modem driver for the Abstract Control Model, i.e. AT commands.
It is accessible through the usual tty abstraction.
XXX The driver needs better error handling and a special call device.
XXX It also needs more testing.
1999-08-16 20:26:53 +00:00
augustss 290c03447b Change the way transfers are dequeued so thet we know that they
are removed from the queue before being deallocated.
1999-08-16 20:24:33 +00:00
augustss 23fa3682af Remove some, add some. 1999-08-16 20:21:09 +00:00
augustss 72b1f5a4b0 Add more CDC definitions. 1999-08-16 20:20:19 +00:00
augustss 7e4e93390d Change DIAGNOSTIC behaviour a little. 1999-08-16 20:19:55 +00:00
augustss df65083b45 A small roadmap of the USB files. 1999-08-16 20:18:07 +00:00
thorpej a01d72e890 Fix several LP64 problems, and clear up kernel pointer vs. physical
address confusion.  This driver now works on the Alpha.
1999-08-16 02:01:11 +00:00
oster 770de7bb5a Print a error message instead of panicing in rf_RecoveryPQFunc(). 1999-08-15 03:44:46 +00:00
oster d516e7b571 Make these compile with RF_INCLUDE_RAID6. 1999-08-15 02:36:40 +00:00
oster ff6d7dd494 Cleanup a bit. 1999-08-15 02:36:03 +00:00
oster 07cc4855f1 Minor cleanup. No functional changes. 1999-08-14 23:34:18 +00:00
kleink 48f055e09b Add missing MPU interrupt glue. 1999-08-14 22:42:16 +00:00
oster 4ba14d22b0 Fix an 'off-by-one' error in a RF_ASSERT which meant that a reconstruct
would panic in the case where the stripe width was 1 block.
1999-08-14 21:44:24 +00:00
augustss 19570e813c Implement opl at wss. 1999-08-14 21:19:29 +00:00
kleink 7b34e008a9 Forgot to initialize a pointer; from Simon Burge. 1999-08-14 15:05:02 +00:00
augustss b8b1e35ece Some changes from FreeBSD (no functional differences). 1999-08-14 14:49:31 +00:00
augustss 23906f1d41 defopt COMPAT_14 1999-08-14 14:40:08 +00:00
drochner 7317aa4924 make it report the correct ISA port range 1999-08-14 14:32:12 +00:00
tron b6c7adba38 Regen. 1999-08-14 13:43:27 +00:00
tron 3622436247 Add support for 3Com 3CXEM556B-INT as suggested by Noriyuki KOIZUMI in
PR kern/8188.
1999-08-14 13:43:02 +00:00
simonb 6b7eee9252 Initialise "error" in wsmux_detach_sc() before testing if it set. 1999-08-14 11:40:31 +00:00
hwr 4882320d4b Initialize error variable. Should fix spurious init errors.
From Dave Huang in PR 8205.
1999-08-14 11:23:39 +00:00
hwr af827a1284 Remove dulicate "Ethernet" output. From Dave Huang in PR 8206 1999-08-14 11:09:18 +00:00
augustss b23490d39f Implement timeout and abort of requests.
Compute length of short transfers correctly.
1999-08-14 08:56:09 +00:00
oster 740b9848cc Decrease the number of outstanding IO's threashold slightly.
The previous value may have been too high in some instances.
1999-08-14 03:47:07 +00:00
oster 6409e641a6 Remove a 'struct proc *'-passing abomination that's been bugging me
for quite some time.
1999-08-14 03:10:03 +00:00
oster 4a058e82c5 Correct and/or improve detection of bogus row/column values
passed in via ioctls.
1999-08-14 02:41:36 +00:00
ad a7510095cc Pass color index through ri_devcmap; don't assume that it already
matches the device's color map.
1999-08-13 09:45:46 +00:00
oster db2eaf18cf rf_sys.h does not need to be #included in any of these files, and, actually,
is no longer needed at all.
1999-08-13 03:41:52 +00:00
oster 1ec5208866 This file is no longer needed. 1999-08-13 03:31:20 +00:00
oster 1aa6ce1041 Garbage collect rpcc(). 1999-08-13 03:27:46 +00:00
oster 02acd1910a First kick at cleaning up the RF_ETIMER code. New timer handling code
provided by Peter Galbavy via OpenBSD.
1999-08-13 03:26:55 +00:00
oster eca431e87c Nuke configuration of ETimer stuff during main configuration. 1999-08-13 03:25:01 +00:00
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