Commit Graph

2577 Commits

Author SHA1 Message Date
perry 69fbaa747d updates from FreeBSD via Dave Huang <khym@bga.com> 1997-09-23 02:27:43 +00:00
mjacob 2896e07556 Allow SDOUTSTANDING to be defined elsewhere (e.g., config file). 1997-09-20 18:56:30 +00:00
cgd e8733ec0da mark scsipi_make_xs() as potentially unused, so that this can be
compiled with -Wunused without optimization/inlining enabled.
Also, make it a little bit closer to KNF.
1997-09-19 23:53:33 +00:00
mjacob 38ea6714c9 New microcode release (1.02) from qlogic for the 2100. 1997-09-19 14:15:54 +00:00
mjacob 4be590238f Another couple NOMODESENSE drives. 1997-09-19 14:08:48 +00:00
enami 82625dc61e Cosmetic Changes; make coding style closer to other part of this file.
(This version is identical with version 1.109 except whitespace changes.)
1997-09-19 01:17:37 +00:00
enami a0c4d0c2e6 Add new ioctl OSCIOCREPROBE and OSCIOCIDENTIFY to support binary
compatibility with NetBSD 1.2.
1997-09-19 00:59:49 +00:00
is 718fb97e11 Support for the upcoming NetBSD/Amiga Hypercom driver family:
* support chip clocks != COM_FREQ, by introducing sc_frequency (for the
  mainline code) and adding a frequency parameter right after the rate
  parameter to comcnattach() and com_kgdb_attach().
- Make com_isa and com_multi initialize sc_frequency to COM_FREQ.
- Make i386/machdep.c and alpha/dec_xxx.c call com*attach() with the freq.
  parameter.
* supio_attach_args get two more fields: a sc_ipl and a sc_arg, both ints.
- com_supio uses the first for interupt establishment (all childs will, as
  soon as they exist) and the 2nd for sc_frequency.
- drsupio passes sc_ipl alway as 5, and for the "com"s, sc_arg as 16*115200
- hyper will pass sc_ipl as 6, and sc_arg as 16 * 460800
1997-09-16 20:34:23 +00:00
bouyer b342ad4ea3 Regen. 1997-09-15 15:08:34 +00:00
bouyer cc58dfb1b7 Add some of Compaq's network products. 1997-09-15 15:02:36 +00:00
augustss 1cdcb2d362 Get rid of `register'. 1997-09-14 09:03:33 +00:00
augustss 7bc1f9d060 Recognize SB AWE64 Gold. 1997-09-13 13:37:28 +00:00
enami 0f0563f57f Declare TCVERBOSE by defopt in files.tc. Include opt_tcverbose.h in tc.c. 1997-09-13 08:52:23 +00:00
enami 4d15bd0b78 Declare SCSIVERBOSE by defopt in files.scsipi. Include opt_scsiverbose.h
in scsi_base.c and st.c.
1997-09-13 08:51:15 +00:00
enami 377e2c7b82 Declare PCIVERBOSE by defopt in files.pci. Include opt_pciverbose.h
in pci_subr.c.
1997-09-13 08:49:50 +00:00
enami 7f3eb8e4fb Declare EISAVERBOSE by defopt in files.eisa. Include opt_eisaverbose.h
in eisa.c.
1997-09-13 08:48:59 +00:00
mjacob f762783999 Wierd- well, what isn't with devices? Anyway, the type code for the ISP
chip on AlphaStation 500 is 2- which wasn't handled, and bad things happened
because the default case wasn't sane. Both are corrected now.
1997-09-13 05:18:30 +00:00
thorpej 4f7a116064 Add missing "break;" statements in the code that determines the
media setup by the Alpha SRM console software.

From Ross Harvey <ross@teraflop.com>.
1997-09-12 22:40:02 +00:00
drochner 8f33476972 Make console on multiport cards more likely to work (obvious bug,
fix still untested).
Closes PR kern/4095 by enami tsugutomo.
1997-09-12 13:31:10 +00:00
drochner daf8124106 regen 1997-09-12 11:05:20 +00:00
drochner e4c20d6210 another graphics chip... 1997-09-12 11:04:36 +00:00
augustss 78b5eb1f52 Create DMA maps on ordinary GUS (non-MAX) cards. Now it should work again. 1997-09-12 10:27:10 +00:00
mycroft 761c2e275a Fix bogus comment. 1997-09-12 05:20:52 +00:00
mycroft 0310453204 The 501 uses 16 ports, and has a wider range of possible I/O address. 1997-09-10 05:40:23 +00:00
mycroft 03ac1f4a46 Oops. Fix a teensy error in the previous. 1997-09-10 03:31:31 +00:00
mycroft 7d0a127a3c If we select a 32k window on the DEPCA, make sure to switch to the lower 32k
chunk.
1997-09-10 03:05:39 +00:00
mjacob acd1b90617 Some formatting cleanup, and for the ISP2100, the flags hadn't being set
quite right, but things worked okay anyhow.
1997-09-10 02:18:19 +00:00
mjacob 3772f94daf (for the 2100) The flags weren't set in the right place, but things worked
anyway. Wierd. Also, a bit of cleanup.
1997-09-10 02:17:22 +00:00
mjacob 18430b4e5e For the 2100- the flags weren't quite right- but things worked anyway. Wierd. 1997-09-10 02:16:13 +00:00
pk ca07d14b0f Add SDEV_NOLUNS to another CD-ROM player. 1997-09-09 21:56:01 +00:00
mycroft fa0b187898 Make `hashkey' unsigned. 1997-09-09 18:56:15 +00:00
bouyer 8178ae5997 Uses PLAY_MSF instead of PLAY for the CDIOCPLAYTRACKS ioctl. This avoid a int16
overflow in the PLAY cbd when the resquested track(s) are more than 65535
blocks long. Submitted by t-nkyma@tcp-ip.or.jp in PR kern/4092.
1997-09-09 09:07:43 +00:00
augustss 25baf39689 Change the way we determine what interrupt routine to use to make
it work when drq8 == drq16.
1997-09-09 00:57:10 +00:00
mycroft 9c76fe8e78 Recognize any of the memory configurations allowed by the EE16 setup program,
and a few more that I can't test.  Something is still wrong with the mapping of
16k boards, though.
1997-09-07 10:16:07 +00:00
augustss 4d51c802c6 Bus-ify GUS driver. 1997-09-06 14:31:34 +00:00
augustss 25b465a80c Bus-ify the GUS driver. 1997-09-06 14:23:13 +00:00
augustss ffcdaf144d Move around splaudio() to (hopefully) get rid of some rare race conditions.
Add a missing call to round_blocksize.
Add some MIDI stuff that will be used in the future.
1997-09-06 01:14:48 +00:00
scottr 1acea33632 Fix a couple of field references missed during the scsipi merge. 1997-09-05 17:57:19 +00:00
bouyer a5aece0adc Don't attach worm devices to the CD driver. This is a private hack, and should
never have been there !
1997-09-05 16:45:25 +00:00
bouyer 5d5b3c641f Restore indentation of SCSIVERBOSE output. 1997-09-05 08:36:40 +00:00
thorpej 7e062e8a4e Enable use of bus_dmamem_mmap(). 1997-09-05 01:48:33 +00:00
thorpej 8a24374ad3 Convert this driver to use bus_dma. 1997-09-04 03:39:09 +00:00
bouyer 702b60b0c1 Add a map to wdc_softc to track the already known devices to prevent them to
be probed several times. This fixes the "ATAPI CD probed as wd drive" problem.
Thanks to Geoff Wing <mason@primenet.com.au> for testing this on his hardware.
1997-09-03 07:57:51 +00:00
thorpej 693b3e7262 Nuke the idea of <machine/options.h>. It completely defeats the purpose
of fine-grain option dependencies.
1997-09-02 13:17:47 +00:00
mikel 06ecebc8c0 add missing argument to LPRINTF() declaration; from Geoff Wing in PR 4072.
I also made inclusion of LPRINTF() dependent solely on the symbol
  LPTDEBUG, initialized lptdebug variable to 0 instead of 1, and
  matched arguments to format strings in LPRINTF() calls.
1997-09-02 01:37:19 +00:00
thorpej e531f18c8b Pull the SMC91Cxx single-chip Ethernet driver core down from the marc-pcmcia
branch.  It is also needed by and ISA front-end.
1997-09-02 00:10:55 +00:00
jonathan f6914cd0c8 Remove '#ifdef alpha' around bus_space_tag_t uses and includes. 1997-09-01 08:09:28 +00:00
pk d4afe94f7c Finish work-around for the re-select bug on ESP100s by dealing with
"illegal command" interrupt apparently caused by writing to the chip
while a re-selection is in progress.
1997-08-31 23:09:58 +00:00
augustss 420b75952f Insert a sanity check so we get a panic instead of a kernel page
fault if the DMA map is missing.
1997-08-30 17:33:49 +00:00
augustss 7886f60e81 Make SB full duplex. Ooops, I forgot this in the last commit. 1997-08-30 10:45:32 +00:00
mycroft 8c578dc960 Pass down bus_dma_tag_t's as appropriate (per Jason's bus_dma code). 1997-08-30 06:53:57 +00:00
mycroft 73e975d161 Pass the I/O and memory enable flags through the bridge. 1997-08-30 06:51:07 +00:00
mycroft f77eaf96e2 Pull in new file. 1997-08-30 06:48:57 +00:00
mycroft aae78d29c3 Don't export pci_*_find() any more. 1997-08-30 06:48:24 +00:00
mycroft e2bb22033b Remove pci_*_find() from here. 1997-08-30 06:47:44 +00:00
mycroft 5da739c6b8 * Rewrite pci_io_find() and pci_mem_find() using my original pci_map_io() and
pci_map_mem(), with appropriate changes for bus_space.
* Add extra arguments for use by pci_mapreg_*(), and make the functions
static.
* Rewrite pci_mapreg_info() and pci_mapreg_map() as wrappers around
pci_*_find(), using the documented interface.
1997-08-30 06:46:58 +00:00
augustss e72ff15736 Substantial rewrite of the SB driver to make it do full duplex on an SB16.
Because of the braindead design of the SB the input and output have to
use different precisions (8 and 16 bits).  It is possible to set the driver
to use 8 bits on both and it will the emulate 8 bits on the output by
expanding it to 16 bits.
1997-08-29 21:41:36 +00:00
bouyer 87219fa0e6 Added a quirk entry for the SANYO CRD-254P (from OpenBSD), and
one for the MATSHITA CR-574 (from Josef Wulf <wulf@ping.net.au> via OpenBSD).
1997-08-28 14:02:31 +00:00
bouyer 9f3695bff9 Change an ATAPI_DEBUG2->ATAPI_DEBUG. This debug message is needed when
looking what's the autoconfig do on strange harware, and ATAPI_DEBUG2 is
for debuging data transfers (and is really verbose once the machine has booted
from an IDE disk).
1997-08-28 11:05:01 +00:00
thorpej 22880d02f4 Regen: added SMC83C170 entry. 1997-08-28 00:24:23 +00:00
thorpej b7a3500cd3 Add an entry for the SMC 83C170 "EPIC/100" Fast Ethernet chip. 1997-08-28 00:12:44 +00:00
augustss 5752a55af4 Zap drq2 if unused. 1997-08-28 00:02:12 +00:00
augustss a79408b6c7 Change match routine to use "audio" as the ROM name. 1997-08-27 22:42:23 +00:00
augustss c58d387b0f Fix prototype for amd7930_set_params. 1997-08-27 22:33:59 +00:00
thorpej d2a9d1970d Don't deference a bad pointers if you try to open an audio device that's
not configured.
1997-08-27 18:54:28 +00:00
is 25c05417ed Make this work with __GENERIC_SOFT_INTERRUPTS. 1997-08-27 18:00:13 +00:00
bouyer 6f3bab1f59 Merge scsipi branch in the mainline. This add support for ATAPI devices
(currently only CD-ROM drives on i386). The sys/dev/scsipi system provides 2
busses to which devices can attach (scsibus and atapibus). This needed to
change some include files and structure names in the low level scsi drivers.
1997-08-27 11:22:52 +00:00
augustss a50d4ba893 XXX Add a drq2 locator for the ISA bus. Many sound cards need
two DMA channels to do e.g. full-duplex.  This allows
a way of specifying the second channel in a sane way.
THIS IS TEMPORARY.  The drq2 locator will go away when
the locator system has been changed to allow multiple
values per locator.
1997-08-26 19:26:38 +00:00
augustss 955e1e9119 Make sure audio device starts in half-duplex mode and document the fact. 1997-08-26 19:03:55 +00:00
thorpej f26fad2f33 Add missing call to vndunlock(), per PR #3811, enami tsugutomo. 1997-08-26 18:12:58 +00:00
jonathan 752582ba69 Set KERNEL_RCSID to identify previous change. 1997-08-26 02:38:47 +00:00
jonathan 6cd95f2a55 rewrite and hand-tune copy_gap16 loops:
* hoist code to deal with  fragments of a 16-byte chunk outside
    main copy loop.
  * over 98% of dynamic calls are 2-byte-algnied but not 4-byte-aligned
   (due to 14-byte Ether headers).  kernel bcopy is poorly tune for this.
   Replace bcopy() with  inline code tuned to  minimize accesses
   to DMA buffers, which aren't uncached on mips.

Tested on 5000/240 (3MAXPLUS) and 3000/700 (sandpiper) (mjacob@feral.com)
1997-08-26 01:27:12 +00:00
thorpej 782324102f Use if_media to change media type, not IFF_LINK*. 1997-08-25 22:39:55 +00:00
augustss 9de64894e9 Fix the "non-broken" indirect configuration so it might actually work. 1997-08-25 22:17:25 +00:00
thorpej b2c3b768d3 - Add RCS tags that got lost.
- Fix a couple of typos in PCI space configuration.
1997-08-25 19:03:44 +00:00
thorpej 9c690ec9a6 Add RCS tags that got lost. 1997-08-25 19:02:19 +00:00
thorpej a2a13689fd Merge with 970703 snapshot of Matt Thomas's de driver. 1997-08-25 18:56:46 +00:00
augustss cd7e93c44d Add mute and channels swap to the mixer capabilites. 1997-08-24 23:50:40 +00:00
augustss 0bb9a48c65 Give names to some more mixer registers. 1997-08-24 23:24:51 +00:00
augustss 6616d47838 - Change audio_hw_if a little: set_param now sets the play and record modes
at the same time instead by using two different calls.  This enables
  it to check more easily if the combined mode is all right.
- Improve the error checking in audio.c.
- Add a new audio property, AUDIO_PROP_INDEPENDENT, show if the
  play and record settings are independent.
- Fix some buglets in audio.c.
1997-08-24 22:31:23 +00:00
augustss 4d74b89725 Add trivial conversions between 8 and 16 bits. 1997-08-24 22:20:24 +00:00
augustss 785dcbd7f5 Remove indirect brokenness. 1997-08-24 20:06:34 +00:00
augustss 48d839e594 Improve error message. 1997-08-24 20:03:51 +00:00
scottr 27f30774af Conditionalize DEBUG printf on dp8390_debug. Pointed out by Jonathan
Stone.
1997-08-24 15:22:28 +00:00
drochner 8188be767e Check for KGDB port == console port in a consistent way. 1997-08-24 09:40:16 +00:00
drochner f4e17ffbfe Use the new com_is_console() to decide if the port is already initialized.
XXX shouldn't the attach() use the existing handle if present???
1997-08-23 14:06:17 +00:00
drochner 7ac5d81dbd Use the new com_is_console() to decide if the port is already initialized. 1997-08-23 14:03:54 +00:00
drochner d36e668737 clean up the serial console / KGDB attachment:
-put all early console / KGDB initialization into 1 exported function
  (com_*_attach()) each, dont use global variables anymore
-use the passed tcflag_t for port settings instead of hardwiring 8N1
-at autoconfiguration attach time, decide if the attaching device is
  already console / KGDB by comparing bus tag and base addr (cgd's wish)
-export a function "com_is_console()" for use by driver frontends for
  this comparision
-delay setting of cn_tab->cn_dev until autoconfiguration attach
  to get the minor number right
-delete unused comcnprobe() and comcninit()
1997-08-23 14:01:32 +00:00
drochner d8453956fc regen 1997-08-23 13:45:11 +00:00
drochner 91c75e9870 Add one more graphics chip. 1997-08-23 13:44:06 +00:00
thorpej 12ef0b5d17 Merge the FreeBSD-current-970823 version of the "fxp" driver, adds support
for more PHYs.  Closes PR #3953.
1997-08-23 09:28:13 +00:00
mjacob e349ac7eb5 If SCSIVERBOSE is enabled, call the routine to print out detailed sense
information.
1997-08-20 18:20:12 +00:00
mjacob e919735e35 Add in (enabled by SCSIVERBOSE option since it adds a fair amount of string
gup to the kernel) more detailed SCSI error printing, based off of final
SCSI-2 specification. This will also print out things like progress indicator
errors, and will also dump out additional sense bytes that haven't been decoded.

Also, turned the error message 'DELAYED' to 'DEFERRED' since that's more
accurate.
1997-08-20 18:19:12 +00:00
mjacob 77116c198a Add in prototype for routine to print SCSI errors in detail. 1997-08-20 18:11:37 +00:00
augustss 8fdd7cab62 Convert WSS driver to use non-broken indirect configuration. 1997-08-20 15:26:25 +00:00
augustss 332ad95e76 Change the MI audio driver so it attaches to the MD driver in the
normal way.  This requires adding a line to the config files to
get audio to work again.
1997-08-19 23:49:33 +00:00
augustss f78dfdfe6e Avoid munging audio_defaults. 1997-08-19 23:35:44 +00:00
augustss e5b75f05d4 Make a slight change to when blocksize, hi- and lo-water marks are
recalculated.  The new semantics is more intuitive(?) and makes Doom
work :-)
1997-08-18 23:20:09 +00:00
augustss 34085fae66 Implement /dev/audioctl. It behaves much like /dev/sound, but only
allows ioctl() and can be opened at any time.
1997-08-18 21:19:02 +00:00
mjacob 4aa2f7013c A few more SDEV_NOLUNS entries- one tape drive (SONY Beta/VHS) and a couple
of PCMCIA card readers (one as T_DIRECT, the other as T_PROCESSOR).
1997-08-17 16:25:11 +00:00
drochner 570688abef Bring back the "comconsattached" flag. It is necessary for starred
com devices (on non "__BROKEN_INDIRECT_CONFIG" ISA).
1997-08-16 08:33:08 +00:00
mjacob ee328c6f18 This fibre channel disk doesn't support the geometry page. 1997-08-16 01:05:51 +00:00
mjacob 50d4bdf35c Merge foo. 1997-08-16 00:56:52 +00:00
mjacob 695bb7c37e Addition of PCI Qlogic ISP2100 (Fibre Channel) support meant a slight
change in f/w layout.
1997-08-16 00:30:37 +00:00
mjacob 24add65376 Major rework to support Qlogic ISP2100 (Fibre Channel PCI card). Also now
able to read SXP registers (instead of panicing). Probably have done a bit
of setup overkill- we now alloc some scratch memory for the 2100 that I thought
I would need for the Port database, but so far I haven't needed to retrieve
the port database. Well, early days yet.
1997-08-16 00:28:10 +00:00
mjacob 9de423f255 Add in PCI_PRODUCT_QLOGIC_ISP2100. 1997-08-16 00:25:43 +00:00
mjacob 14a7730c16 *Major* differences to support the Qlogic 2100 (Fibre Channel PCI), as well
as being able to do microdifferentiation of the ISP SCSI chip; a couple of
bug fixes, and the beginnings of some watchdog support.
1997-08-16 00:22:11 +00:00
mjacob 7540ed1699 Differences necessary to support the Qlogic 2100 (Fibre Channel PCI
Card)
1997-08-16 00:20:28 +00:00
mjacob 49d40727ff Defines and structures necessary to support the Qlogic 2100 (Fibre Channel
PCI card); Some additional defines to try and manage various flavors of
the SCSI host adapters (parameters for various SYNC modes).
1997-08-16 00:18:36 +00:00
mjacob 2c7696de16 Additional defines and structures necessary to support the Qlogic ISP 2100
Fibre Channel PCI card.
1997-08-16 00:16:40 +00:00
explorer f1947d6a44 add SDEV_NOLUNS for my scanner (UMAX S-6E) 1997-08-14 22:17:32 +00:00
drochner 8aa62d76fc Regen with new RCS ID. (thanks, Bernd) 1997-08-14 16:31:13 +00:00
drochner b426bd9be3 -Export variables needed for system console initialization.
-Enable line break interrupt for DDB on a serial console.
-Share initialization code between DDB and KGDB.
1997-08-14 16:15:15 +00:00
drochner e588696c8e Include some more stuff. 1997-08-14 15:41:49 +00:00
jtk 0076beb284 fix multi-port serial drivers to reflect recent changes to com driver for console/kgdb 1997-08-13 21:26:52 +00:00
drochner d5998780c0 KGDB improvements:
-Separate KGDB port initialization and softc related stuff to allow
 KGDB to be attached in early system startup, before autoconfiguration.
-Export the variables needed by md code to hand-craft bus tag/handle.
-Fix initialization to enable interrupt by line break.
-Call DDB/KGDB at line break (move DDB call from the softirq handler
 to the hard handler because it should work without a tty attached too).
1997-08-12 17:25:43 +00:00
mikel 32407c5e4f don't forget to unmap read port in match routine, if successful; also
ensure sc_ncards is initialized
short-circuit probing for cards once first is found in match routine
add support for !__BROKEN_INDIRECT_CONFIG
1997-08-12 07:38:10 +00:00
mikel 29b21e4e57 add symbol for LFSR length 1997-08-12 07:34:34 +00:00
augustss 8f096d087f Implement delivery of SIGIO on changes to /dev/mixer. 1997-08-11 01:38:12 +00:00
augustss b99285b1e4 Round mixer values correctly when setting them.
This is important for the OSS emulation since OSS
uses a different range of values for the mixer.
1997-08-11 01:08:13 +00:00
jonathan 1e10e23444 Add back ia->iobase to initializer macros for softc device-register offsets. 1997-08-08 09:38:18 +00:00
augustss 9a770a177f Make setting the audio block size sticky.
Change the calculated block size to correspond to 50 ms of sound
(was 20 ms, it seems needlessly small).
1997-08-08 00:03:26 +00:00
augustss e04b361dd6 Add A-law support and fix bug on opening GUS max.
From Feico Dillema <dillema@spam.aurum>.
1997-08-07 22:48:10 +00:00
christos b73326ecdd GC unused connector finding code. This has moved to epconfig(). 1997-08-07 19:46:22 +00:00
scottr 6b1b87f213 spltty() does not drop the SPL; use splx() instead. 1997-08-07 19:22:45 +00:00
augustss a425e37505 Add a 'return 1' that got lost in the last commit. 1997-08-07 12:14:39 +00:00
augustss 3c6f8bc89e Restructure a little to make sure AUDIO_FLUSH restarts the looping DMA. 1997-08-06 23:08:26 +00:00
fair aae99e192d %x -> 0x%x 1997-08-06 07:39:59 +00:00
mikel d3174941cd don't clobber bus_space_{,un}map macros 1997-08-06 04:52:29 +00:00
jonathan ab87c23f0b Use <bus.h>. 1997-08-05 01:13:50 +00:00
augustss 3bcc377a4c Implement a function to test if a drq is taken and use it
in two drivers.  There are still many drivers left to fix...
1997-08-04 22:13:32 +00:00
augustss 1fea370221 Get rid of `register'. 1997-08-04 19:05:27 +00:00
augustss 37d4460397 Get rid of `register'. 1997-08-04 18:47:16 +00:00
fair c27c286843 %x -> 0x%x 1997-08-04 10:00:11 +00:00
augustss c392128002 Audio:
* Make it possible to use software assisted encodings that expand the
  sample size.
* Use 16 bits per sample when emulating mulaw coding on the SB.
* Prepare for SB16 without CT1745 mixer.
1997-08-04 09:29:51 +00:00
augustss affc3adbc9 Use gusmax_get_props instead of gus_get_props for gusmax. 1997-08-04 09:16:42 +00:00
fair 623ad5f899 trivial change for PR#3815 1997-08-04 08:16:49 +00:00
fair be20028837 trivial change for PR#3815 1997-08-04 07:16:49 +00:00
fair cc7e70b188 %x -> 0x%x 1997-08-04 06:55:22 +00:00
fvdl 70c89b79f4 Regen. 1997-08-03 23:41:05 +00:00
fvdl c98a1885a9 Add a few VIA Apollo chipset IDs 1997-08-03 23:40:27 +00:00
mikel 7826bcb58c add support for generic SBs by matching compatIDs 1997-08-03 08:31:00 +00:00
mikel 6dde5e2db7 add support for generic COM devices by matching compatIDs 1997-08-03 08:24:07 +00:00
mikel 93c4fda873 add support for compatible device IDs 1997-08-03 08:12:21 +00:00
pk cf02802b04 Add `nop' commands to chain with the `xmit's. 1997-08-01 20:33:03 +00:00
pk 4fea3b463a Provide an alternative method of transmitting frames that avoids sending
a command to the 82586 for every frame to be transmitted. Instead, a
single command sets off the execution of a chain of commands consisting
of alternate XMITs and NO-OPs, where the link fields in the NO-OPs are
set to loop back onto themselves until the next XMIT is ready to go.
This trick found on a Linux WEB page.

All this induces reasonable transmission performance in my old multibus
adapter. The receiver performance is still abysmal..
1997-08-01 20:04:40 +00:00
leo b9906e7600 Use DISKUNIT macro to encode md's unit in the minor number. 1997-08-01 19:38:30 +00:00
augustss 3bef8402d3 Implement FIONBIO in audio_ioctl. 1997-08-01 17:04:00 +00:00
augustss 658656bb99 Audio changes:
- Change the way attach and open works to allow multiple audio
	  devices.
	- Split the mulaw.c file into two to avoid dragging in mulaw
	  convertsion when they are not needed.  Add 16 bit alaw/mulaw tables.
	- Change the way audio properties are gotten.
	- Recognize more versions os SoundBlaster.
1997-07-31 22:33:08 +00:00
augustss cf8a170732 Don't panic when creating a bus dma map for a taken dma channel,
it can happen during probing.
1997-07-31 22:20:47 +00:00
matt aef82b4aed Add the ISA inteface for the lc (LEMAC, EtherWORKS III) driver. 1997-07-31 21:58:19 +00:00
matt f80c1355fe The bus-independent parts needed to support the DEC
EtherWORKS III cards (LEMAC): the DE203/DE204/DE205
1997-07-31 21:54:58 +00:00
jonathan 2f459bf1d8 Initialize local variable 'j' in eeprombusy() to pacify gcc -O (not -O2)
on i386.
1997-07-30 18:26:23 +00:00
pk c589871dc6 Arrange to turn off future sync-mode negotiation after experiencing a
timeout while in a data phase.

Replace XS_STUFFUP with XS_TIMEOUT, so we get a second chance after
recovering.
1997-07-30 12:01:53 +00:00
pk 09109c38a1 Maintain a copy of the configuration flags in our `softc'. 1997-07-30 11:48:32 +00:00
pk 2c3cf06107 If state is NCR_CLEANING, do not schedule commands until reset is complete. 1997-07-29 22:26:01 +00:00
pk 7250d56f4a Some more cleanup and synchronization with ISA version.
Also make a start at using bus_* macros (just bus_barrier() for now).
1997-07-29 20:24:46 +00:00
pk 8c535d8cfe No need to send two copies to the bpf tap when sending. 1997-07-28 22:35:49 +00:00
pk a07a88cdcb Bring over assorted changes applied to the ISA ie driver over time.
Fix some inaccuracies in the ring-scan code.
1997-07-28 22:26:12 +00:00
augustss a63034762b Audio: Remove the machine dependant code I put in audio.c by mistake.
This adds another method to audio_hw_if.  Also remove a field from
audio_hw_if that was not read-only.
1997-07-28 20:56:05 +00:00
mhitch 0ae3de1a27 Use direct DMA with the IOASIC ASC SCSI interface. DMA buffering can be
re-enabled with ASC_IOASIC_BOUNCE.
All DMA buffered processing is now done in the bus-specific DMA routines
in asc_ioasic.c and asc_tc.c.
Disable several informational messages dealing with non-empty FIFO conditions,
but allow enabling with ASC_DIAGNOSTIC for troubleshooting.
1997-07-28 19:39:22 +00:00
mjacob 002c218565 Kudos and thanks to Mark Brinicombe (mark@causality.com): bug in waiting for
RISC_INT to be set after stuffing a mailbox.
1997-07-28 18:56:36 +00:00
augustss d5b1561c91 Temporary fix to make it compile on non-i386. 1997-07-28 09:28:04 +00:00
augustss f6cd87f322 audio: Minor cleanup and enable looping DMA for PSS and PAS. 1997-07-28 01:31:50 +00:00
augustss d58bc6796f audio: Simplify handling of AUDIO_SETFD and committing of encoding mode. 1997-07-27 23:51:48 +00:00
augustss 63decd9438 Fix divide by 0 bug in audio driver. 1997-07-27 23:06:04 +00:00
augustss 9745684ebe Changes to the sudio system:
- It is now possible to handle devices that want "looping" DMA,
    e.g. the SoundBlaster correctly.  The WSS and SB drivers use this.
    To do this several new methods were introduced in audio_hw_if.
  - Different silence handling (forced by previous change).
  - The audio driver can now be mmap()-ed, but due to problems in
    the VM system only for writing for now.
  - The OSS (Linux) audio emulation takes advantage of some of the
    new features.
1997-07-27 01:16:32 +00:00
augustss 36ff661ec7 Make PAS audio work again.
From John F. Woods, PR #3859.
1997-07-25 01:42:20 +00:00
thorpej a0d7686340 RCS id police. 1997-07-23 18:45:03 +00:00
thorpej 6dce360f0e Fix an oversight and a typo. 1997-07-23 18:42:40 +00:00
pk 4459db6815 Kill a bogon in timeout loop. 1997-07-23 12:00:12 +00:00
bouyer f50739b7b5 Back out previous change. This was for bouyer-scsipi, and not for the trunk. 1997-07-23 10:50:29 +00:00
bouyer 4022e46acf Forgot a scsi->dev/scsipi. 1997-07-23 07:41:56 +00:00
pk 32aa713950 First cut at a MI i82586 chip driver. 1997-07-22 23:31:58 +00:00
pk 1e39126631 Relax `DMA terminal count' check to exclude any selection state to avoid
triggering the message when merely probing targets.
1997-07-22 18:55:20 +00:00
jonathan 7d9e8102ad Use new <dev/dec/clockvar.h> and and <dev/dec/mcclokvar.h>.
Garbage-collect original headers from sys/arch/alpha.
1997-07-22 18:50:52 +00:00
jonathan 787738a4f7 Move sys/dev/tc/mcclockvar.h -> sys/dev/dec/mcclockvar.h.
Update pmax clock code.
1997-07-22 07:51:33 +00:00
jonathan 8a06989908 pathname typo. 1997-07-22 04:48:35 +00:00
jonathan 064c4e515c Create sys/dev/dec and cleanup sys/dev/tc:
* Move clockvar.h (header file for generic clock code) to sys/dev/dec.
* Move if_le_dec.c with DEC padded LANCE-dma (pmax/pmax, ioasic, vax 3400)
  to sys/dev/dec.  Remove from sys/dev/tc.
* Declare attribute le_dec_subr in /sys/dev/dec/files.dec,
  use if_le_dec.c when it's defined.
* Move  IOCTL asic declaration from pmax and Alpha MD machine
  files to sys/dev/tc/files.tc.
* move TurboChannel and ioasic if_le attachments from pmax and Alpha machine
  config files to /sys/dev/tc/files.tc.  Add le_dec_subr attribute.
* Add if_le_dec attribute to if_le_ibus (pmax ds3100 pmax) LANCE attachment.
1997-07-22 04:32:13 +00:00
jonathan 38e9259a81 Garbage-collect __BROKEN_INDIRECT_CONFIG from /sys/dev/tc 1997-07-22 03:44:29 +00:00
jonathan 4631885e91 Kill __BROKEN_INDIRECT_CONFIG on pmax.
Based on a patch from Chris G. Demetriou, December 1996.
1997-07-21 05:39:02 +00:00
pk e3680b0e26 config.new => config 1997-07-20 20:33:08 +00:00
pk 7d0e8e2116 config.new => config 1997-07-20 20:32:14 +00:00
pk 013ac04cfb config.new => config 1997-07-20 20:30:46 +00:00
pk e1616d211e While processing DISCONNECTs, take note of the transfer count reaching
zero. We use this later when the COMPLETE message comes in to set the
final residual count to zero. The flag is reset if the target resumes
a data phase. This obsoletes the `AUTOSAVE' quirk (for this driver).
Also, avoid overwriting the residual count if a SENSE was appended to
the current transaction.
1997-07-20 16:46:17 +00:00
pk a4ae679706 Declare `ncr53c9x_dmaselect'. 1997-07-20 16:24:00 +00:00
pk 2b8fb4cacd Propagate SCSI status byte back to higher levels. 1997-07-19 21:54:16 +00:00
cgd 8f43428a7f regen for new pcidevs 1997-07-19 10:41:57 +00:00
cgd d2bdd55b3a clean up a few entries, fix the entry for the TI PCI1130 so the device
is properly named, add entries for the TI PCI1131 and PCI2030.  also note
that you shouldn't always believe everything you read.
1997-07-19 09:54:09 +00:00
cgd 429a941288 don't expect/provide pci_decompose_tag to be a MI, public function. It
wasn't intended to be to begin with, and uses of it (e.g. the one in the
'de' driver) are quite likely to be incorrect.
1997-07-19 09:49:39 +00:00
fvdl 3dd82f1394 Work around possible race condition with 2 drives on one controller
in wd_get_parms. PR 3773, from Onno van der Linden (onno@simplex.nl)
1997-07-18 00:26:22 +00:00
jtk 37f9c6bd88 use locator defines in "locators.h" to index cf_loc[] 1997-07-17 01:17:45 +00:00
jtk a541bca95a use locator defines in "locators.h" to index cf_loc[]
still to be done and/or decided not to be done: replace all
TCCF_*_UNKNOWN uses in tc code with the native names from locators.h
1997-07-17 01:12:41 +00:00
jtk 024b25a651 use locator defines in "locators.h" to index cf_loc[]
still to be done and/or decided not to be done: replace all
EISA_UNKNOWN_SLOT uses in eisa code with the native names from
locators.h
1997-07-17 01:08:46 +00:00
jtk c0f08c42a8 use "locators.h" defines for indices for cf_loc[] and default values 1997-07-17 01:01:06 +00:00
jtk 26414c7820 use locator defines in "locators.h" to index cf_loc[]
still to be done and/or decided not to be done: replace all *UNK uses in
isa code with the native names from locators.h
1997-07-17 00:58:48 +00:00
perry 797652981e More CD quirks, from Dave Huang (pr-3843) 1997-07-17 00:46:50 +00:00
leo bacc863c24 Add atari. 1997-07-15 08:40:02 +00:00
augustss 8727da130b In the name of backwards compatibility AUDIO_ENCODING_LINEAR has been
renamed AUDIO_ENCODING_SLINEAR and AUDIO_ENCODING_LINEAR reverts to the
NetBSD 1.2 sematics.  A kernel with COMPAT_12 defined will accept
AUDIO_ENCODING_LINEAR and treat it as before, without COMPAT_12 it
will be rejected.
1997-07-15 07:46:04 +00:00
kleink 4193b52786 Do not compile in satlink unconditionally; from Thorsten Frueauf
<frueauf@ira.uka.de> in PR port-i386/3864.
1997-07-14 21:09:07 +00:00
hpeyerl d1f899bc4c Satellite receiver driver for ISA cards from PlanetConnect by Jason and
Herb for Canada Connect Corp.
1997-07-13 19:09:46 +00:00
perry 57e0b3811a regen 1997-07-12 16:53:10 +00:00
perry 2bf925fe32 add a couple of new device codes (from Jason Wright, pr 3853) 1997-07-12 14:41:05 +00:00
jtk 8a210e82b2 fix mixer goof on GUS max 1997-07-09 03:03:21 +00:00
cgd 5c2a76b304 fix static inline functions' prototypes so they're correctly marked
'inline' as well as static.  mark prototypes for static inline functions
as possibly unused (with __attribute__ ((unused))), to avoid generating
warnings when compiling without optimization but with most ports'
default warning flags.  Clean up prototype list spacing, and make it more
consistent.
1997-07-07 22:52:17 +00:00
cgd 6ac982f2a0 mark prototypes for static inline functions as possibly unused (with
__attribute__ ((unused))), to avoid generating warnings when compiling
without optimization but with most ports' default warning flags.
1997-07-07 22:45:34 +00:00
is 3040e9247c * Command code definitions for the Dallas Semiconductor series of chips which
connect to their 1-wire bus like the DS2404 "EconoRAM Time Chip"
- and -
* Interface function definitions for this kind of chips. Currently only
low-level byte_read and _write, implenented as inline functions.
This functions take a struct ds_handle * (also defined here), which contains
pointers to bit-read/write and reset functions.
Eventually, prototypes for memory-access functions should go here, and the
1-wire bus should be made a BSD auto-configuration bus.
1997-07-06 22:22:01 +00:00
thorpej 2252d1317b Add support for remote serial KGDB. 1997-07-05 20:52:40 +00:00
phil a8597d8143 Report actual disksize on finding a disk.
(From: der Mouse  <mouse@Rodents.Montreal.QC.CA>)
1997-07-02 03:51:25 +00:00
cjs 312218482a Add QUIRK_NOTAGS quirk to disable tagged command queuing for particular
drives. Add a quirk entry for HP C372x drives with QUIRK_NOTAGS. Also,
print quirks being used if quirks other than QUIRK_NOSYNC are being used.
1997-07-01 00:41:43 +00:00
kleink d72a3b2da1 Leftover from last commit: require us to be initialized when a DIOCGDINFO
ioctl(2) is issued; the uninitialized disklabel pointer might get dereferenced
otherwise.
1997-06-26 16:28:34 +00:00
thorpej 4cea35eb42 In ccdioctl(), consolidate checks for "open for writes" and "initialized". 1997-06-26 04:25:50 +00:00
thorpej 8ad2b19321 In vndioctl(), consolidate checks for "open for writes" and "initialized",
and cover all of the cases we're supposed to cover.
1997-06-26 04:16:31 +00:00
thorpej d69ef9b761 Remove an outdated comment that is not true with the Mach VM system. 1997-06-26 04:06:57 +00:00
thorpej 2eaa922149 Do not print "esp0: !TC [intr ...]" messages if:
(a) The interrupt is a RESEL interrupt, and
	(b) our state is SELECTING.
This condition can occur in perfectly normal operation if we are using
DMA to select the target and we are interrupted by another target
reselecting us.  Per discussion with Paul Krannenburg.
1997-06-26 00:27:25 +00:00
hannken 5d4f988920 Adjust the number of ccbs allocated during initialization.
Every ccb locks 64k of memory for dma buffers.
Instead of AHA_CCB_MAX ccbs using 1MByte only sc_link.openings ccbs
per device are allocated. Thus we now use only 128KByte per device present.
1997-06-25 13:30:59 +00:00
thorpej ca84057878 Correct Intel Triton MX PCI IDs, from Tom Yu <tlyu@mit.edu>, PR #3478. 1997-06-24 06:20:24 +00:00
kml 0953486d37 Added definitions for Essential Communications RoadRunner HIPPI and
Gigabit Ethernet interfaces.
1997-06-24 05:04:10 +00:00
thorpej 84166e5151 foosize()'s return value is in DEV_BSIZE units; adjust the size obtained
from the disklabel accordingly.
1997-06-24 00:28:36 +00:00
thorpej a9710d488d Three changes to ofdsize():
- If the partition is already open, skip the open/close step.  (Sync
  with other disk drivers.)
- foosize()'s return value is in DEV_BSIZE units; adjust the size obtained
  from the disklabel accordingly.
- Pass correct arguments to ofdopen() and ofdclose().
1997-06-24 00:27:18 +00:00
thorpej efde490942 foosize()'s return value is in DEV_BSIZE units; adjust the size obtained
from the disklabel accordingly.
1997-06-24 00:20:44 +00:00
thorpej e06bb29b00 Two changes to ccdsize():
- If the partition was previously open, don't do the open/close steps.
  (Sync with other disk drivers.)
- foosize()'s return value is in DEV_BSIZE units; adjust the size obtained
  from the disklabel accordingly.
1997-06-23 23:59:53 +00:00
thorpej 5029dd336b Add full disklabel and partition support to the vnd driver, allowing much
greater flexibility in its use.  Additionally, add support for "geometry
emulation".  This allows the "geometry" of the "disk" to be specified
at config time, providing near-perfect emulation of disklabel-less floppies,
CD-ROMs, etc., including non-512-byte sectors.  If a geometry is not
specified at config time, a default based on 1M cylinders will be used.
1997-06-23 21:03:55 +00:00
cjs d152627095 Make this work again; the code to avoid attaching a 3c509 in P&P mode
didn't map in the port properly, and it was only luck that it worked
on anything at all.
1997-06-23 05:25:40 +00:00
mjacob 68d184dc19 Hmm- seriously funny and sad bug: you need to directly establish the
clock rate for this board on Alpha/PCI systems. Under x86/PCI, the
board f/w will correctly tell you "I'm running at 60Mhz", so the code
that preserved that across a board reset (which would drop the chip
back to 40Mhz) worked fine. On the 8200, the chip was saying "I'm 40Mhz"-
which wasn't true. This turned out to be okay as long as you didn't have
any FAST or UltraFast targets- In fact, setting the chip to 40Mhz allowed
you to run up to 8Mhz SCSI. Unfortunately you die bigtime on the devices
that go faster than that. The fix here is to only use what the chip tells
you the clock rate is in the cases you don't really know (sbus is the
only case where this could be different, although with 66Mhz PCI coming up,
this may change).
1997-06-22 19:57:06 +00:00
jonathan 046c2a56df Clone Alpha ``cpu-independent'' clock API headers into sys/dev/tc/,
to share them with pmax.
1997-06-22 08:02:18 +00:00
jonathan 1f44934407 * Change Sprite MACH_xxx prefix to MIPS_xxx.
* Use standard mips terminology (xxx_KSEG0, xxx_KSEG1) instead of the
  (more meaningful) Sprite names (xxx_CACHED, xxx_UNCACHED).
1997-06-22 07:42:25 +00:00
mhitch 70590de547 Changes for merged mips1/mips3.
Replace MachHitFlushDCache with mips3_HitFlushDCache.
1997-06-21 04:06:11 +00:00
pk 5d4e140e53 Remove spurious line left over in previous commit. 1997-06-18 22:17:14 +00:00
pk f5bf0d3701 wdsize(): only call wdopen()/wdclose() if not already open, per the
current `openmask'.
1997-06-18 20:39:55 +00:00
pk 8303adf18a sdsize(): only call sdopen()/sdclose() if not already open, per the
current openmask.
1997-06-18 20:38:59 +00:00
mikel 379f3b1c05 add device ID for SB AWE64 Value; from William Coldwell in PR kern/3716.
also add comments for some device IDs describing what they match.
1997-06-18 07:19:08 +00:00
cgd 22da43e670 Change expected mapping register type argument for the pci_mapreg_map()
call for the board's memory space to be PCI_MAPREG_MEM_TYPE_32BIT_1M or
PCI_MAPREG_MEM_TYPE_32BIT depending on the board ID.  Also, remove a
bogus extra argument to an interrupt-establishment-error printf.  Problems
pointed out by Jarkko Torppa <torppa@cute.fi> in PR 3753, but fixed slightly
differently than he suggested.
1997-06-17 05:44:22 +00:00
cgd 57f46a9e4a fix several bugs pointed out by Jarkko Torppa <torppa@cute.fi> in PR 3753:
(1) fix a printf format (%x to print int, not %lx).
(2) fix probe of 4th chip/16th channel (used to tell whether or not the
    board is a 16- or 32-port board) by removing an incorrect offset so
    that the code matched its comments. (!!!)
(3) fix storage of chip number in per-channel structure so that it actually
    stores the chip number, rather than the chip offset.  This allows the
    driver to work with more than the first four channels (i.e. with chips
    other than chip number 0, which happens to have an offset of zero). (!!!)
1997-06-17 05:38:10 +00:00
cgd 6b78891053 the port number is the low 5 bits of the minor. That means that it should
be masked with 0x1f (the low 5 bits), rather than 0x0f (the low four bits).
Pointed out by Jarkko Torppa <torppa@cute.fi> in PR 3753.
1997-06-17 05:32:46 +00:00
jonathan 0bca2bff6d include <machine/bus.h>. 1997-06-16 03:46:29 +00:00
mhitch ef2beab3d7 More merged MIPS1/MIPS3 support. 1997-06-15 18:24:05 +00:00
mhitch 0bf6ea4387 DECstation MIPS3 support: wbflush() is cpu-dependent, need declaration from
machine/locore.h.
1997-06-15 18:23:02 +00:00
mycroft 09cad93ce8 Implement a better backpressure mechanism so that data is collected
in the driver's buffer if the tty buffer is full.  If the driver's buffer
becomes full, turn off receive interrupts until it drains a bit.
1997-06-15 11:18:59 +00:00
thorpej 3cb5726461 RCS ID police. 1997-06-14 22:25:11 +00:00
thorpej 47fab5e3ae Make this compile again in light of recent changes to cdio.h 1997-06-14 08:55:14 +00:00
augustss 86ad297c12 Fix a braino in record source selection and a pasto in detecting
16 bit mode recording.
1997-06-13 19:21:59 +00:00
matthias 8033e010bd In case of a SCSI-error print the extended sense information and not
some sort of random garbage.
1997-06-09 19:36:56 +00:00
thorpej da1b5f9021 It's perfectly normal for an older (e.g. pre SCSI-2) device to send
MESSAGE_REJECT in response to SDTR or WDTR.  Because of this, the
printfs that indicate refusal of sync/wide negotiation are unneeded
in normal operation.  In the __NetBSD__ case, disable them by default.
They, like the other extra-verbose ahc driver boot messages, may be
reenabled with "options DEBUG".  The behavior in the !__NetBSD__ case
is unchanged.
1997-06-09 01:51:03 +00:00
thorpej e78f8ce7da Duplicate register mapping logic from Tulip driver. 1997-06-09 01:23:20 +00:00
thorpej 3e023b7681 Fix a slight bogon in merge of this driver; make the device map all of
its space, and pick the space used by default based on what is appropriate
for the CPU we're running on.
1997-06-09 00:34:18 +00:00
thorpej e962c12a08 Fix pasto: sbus -> pci 1997-06-08 22:15:34 +00:00
thorpej 6bf33a7fe3 Merge pdq-970604 update. 1997-06-08 19:47:13 +00:00
thorpej 2f8150954f Correct a couple of typos so that this compiles with TULIP_DEBUG,
per PR 3723, submitted by enami tsugutomo <enami@ba2.so-net.or.jp>.
1997-06-08 18:49:43 +00:00
thorpej cd4fc920b0 Put back Matt Thomas's revision ID, per PR 3723, submitted by
enami tsugutomo <enami@ba2.so-net.or.jp>.
1997-06-08 18:44:02 +00:00