Commit Graph

833 Commits

Author SHA1 Message Date
cgd
85288c6a61 Include comvar.h, for comprobe1() prototype and for commulti_attach_args.
Remove multiple identical definitions for the arg struct used by multiport
boards' to attach slave com ports.
1996-03-09 01:03:59 +00:00
cgd
a7c6dfe1cd include comvar.h for comprobe1() prototype 1996-03-09 01:02:08 +00:00
cgd
56edbfc4f9 define the common structure used to attach 'com' units as slaves to
multiport cards.  prototype comprobe1(), which is used by multiport card
drivers.
1996-03-09 01:01:33 +00:00
cgd
645d83b763 minor cleanup. mostly: use COM_NPORTS and a new (driver-specific) NSLAVES
macro where appropriate.  No point in hard-coding numbers in multiple places.
At the very least, this makes the drivers slightly easier to diff/understand.
1996-03-09 00:09:04 +00:00
cgd
2c11ad408c convert to use I/O mapping/access macros in <machine/bus.h>.
Mostly mechanical changes, except for probe/attach, which have
to map (and, in the case of probe, unmap) the I/O space that the
chip will use.
1996-03-08 22:17:58 +00:00
cgd
b1d3f7607c remember the bus_chipset_tag_t given by our parent, and pass it on to
children.
1996-03-08 20:36:21 +00:00
cgd
5087096150 pass a bus_chipset_tag_t (defined in <machine/bus.h>) to the bus when
attaching, and to the devices when attaching them.  #include <machine/bus.h>
to make this backward compatible with old #include requirements.
Also, clean up idempotency so that isa/eisa/pci "var.h" headers are
consistent (make them all idempotent).
1996-03-08 20:25:22 +00:00
cgd
acabb62791 the i386 port no longer attaches isa, eisa, and pci at root. 1996-03-04 03:29:12 +00:00
mycroft
d8026ad9ef Oops; switched two bits. 1996-03-01 04:35:27 +00:00
mycroft
f3b29ca5d2 Remove two unneeded `if's. 1996-03-01 04:13:25 +00:00
mycroft
546ad9e88b Add support to the ISA DMA framework for auto-initialize mode.
Add experimental SB16 code, disabled for now.
1996-03-01 04:08:13 +00:00
cgd
3ca5707161 make ISA bus match/attach, and sub-device configuration machine-independent. 1996-02-28 01:43:45 +00:00
scottr
4005c5fd09 Fix typo (PR 2123, from Michael VanLoon) 1996-02-26 22:48:32 +00:00
mycroft
40d57df71a Switch byte order of ID and configuration registers for 14f and 34f. 1996-02-24 05:27:49 +00:00
mycroft
3ec5928403 Keep the terminal count information around, as it's self-clearing. 1996-02-22 06:21:48 +00:00
mycroft
a35f0ac985 Add more debugging code. 1996-02-20 12:13:09 +00:00
mycroft
947cae817e Do not allow the gain to be changed on an original SoundBlaster. 1996-02-20 11:48:50 +00:00
mycroft
015ee926f6 Fix mono volume adjustment. 1996-02-20 11:15:15 +00:00
mycroft
b5f3c5cbdc XXX This is a kluge.
Check to see if the DMA transfer is finished; if not, don't do interrupt
processing.
1996-02-20 04:19:24 +00:00
mycroft
4d6412e7bf Move the terminal count check into a separate function. 1996-02-20 04:17:05 +00:00
christos
cd5249589d if_ep.c: Recognize 3c595 1996-02-19 20:18:40 +00:00
mycroft
5021ab87f1 Update copyright notice. 1996-02-19 15:23:25 +00:00
mycroft
5bc567b0d3 Set IER_ETXRDY before outputting any bytes, to prevent race condition. 1996-02-19 15:09:25 +00:00
mycroft
c011a5eae4 Handle break more correctly.
Make IER_ETXRDY track TS_BUSY.  (Prevents a loop in comintr() if no output
is available.)
Add a bunch of debugging code.
1996-02-19 14:53:03 +00:00
mycroft
760b34026c Declare a variable... 1996-02-18 22:19:44 +00:00
mycroft
ba2ac1b587 Clean this up a bit. 1996-02-18 22:17:37 +00:00
jtk
47286969ae Add bass/treble input filter adjustment controls to SB (Pro) driver 1996-02-18 16:36:44 +00:00
mycroft
e5730c4a73 Fix a race condition where we might stop outputting if a write follows a
flush too closely.
1996-02-18 09:10:15 +00:00
mycroft
203f5d5329 Add some text describing the UART lossage worked around in the previous. 1996-02-17 04:51:41 +00:00
jtk
03f1e1432a fix compile error from gusprobe() cleanup 1996-02-17 04:49:50 +00:00
mycroft
121f6570d7 Drain the transmitter FIFO before changing the baud rate or FIFO depth
registers.  Fixes PR 2046.
Also, if COMCONSOLE is defined, expect CONSPEED to be the baud rate.
1996-02-17 04:04:28 +00:00
jtk
28feffd508 avoid panic'ing when driver gets confused--just spit out a message and
keep going.
Improve error messages to include device name.
use STATIC for function declarations/definitions so it's easier to get a
useful symbol table by flipping a switch.
1996-02-17 03:35:22 +00:00
mycroft
7847c9efee Various:
* Snap the sample rate when setting it, and remember only the time constant.
* Set the time constant when changing between play/record.
* Always return the actual sample rate with AUDIO_GETINFO.
1996-02-16 10:10:21 +00:00
mycroft
19f59bf3c2 Prototype the probe and attach functions. 1996-02-16 08:18:32 +00:00
mycroft
7af4edd731 Various, including:
* Add more delays while writing registers.
* Replace sc_dma{in,out}_inprogress with sc_dmadir.
* Eliminate the need for sc_locked.
* Add more DPRINTF()s.
1996-02-16 08:07:40 +00:00
christos
11d31f7ce7 Hayes ESP patches [from PR database] 1996-02-10 20:23:18 +00:00
mycroft
28bf676a23 Read the 14f/34f registers in 8-bit mode. 1996-02-09 17:38:09 +00:00
scottr
54c51d4393 Document this file better, mostly from John Vinopal
<banshee@gabriella.resort.com>.  Closes PR #1864.
1996-02-05 23:01:50 +00:00
scottr
ae06fdb589 Allow blocksize of NBPG/2 to NBPG for higher sampling rates. From
Lennart Augustsson <augustss@cs.chalmers.se>, closes PR 2013.
1996-02-05 21:32:26 +00:00
jtc
3ae2aedf4d Fix error in copyright notice 1996-02-05 02:18:48 +00:00
jtc
240e22087c Received copyright assignment 1996-02-05 00:10:32 +00:00
thorpej
919f6728ab Accept DIOCEJECT as a synonym for CDIOCEJECT. Implement DIOCLOCK
separately from CDIOCALLOW and CDIOCPREVENT, even though they perform
basically the same function (with a different interface XXX).
1996-01-30 18:28:02 +00:00
mycroft
02317d25bb Make the panic message for ISA clone devices more informative. 1996-01-16 07:52:38 +00:00
christos
d3427703db Hayes ESP support from Michael Van Loon, with minor cleanups. Tested on
a single port ESP card; works great!
1996-01-14 23:44:34 +00:00
thorpej
f08d96426e Oops. Fix RCS id. 1996-01-13 02:06:30 +00:00
thorpej
e422ebca1a Add the "ahe" driver, autoconfiguration support for the aic7xxx-based
Adaptec 2[78]4x SCSI controllers, from Michael Graff <explorer@flame.org>.
Fixes PR #1594 from Noriyuki Soda <soda@sra.co.jp> in a different way.
1996-01-13 02:05:14 +00:00
thorpej
48bb61e0d7 Use WTDBPRINT() instead of DEBUG() for driver debugging printf()s..
Fixes PR #1927, from Erik Bertelsen <erik@arhpc214.uni-c.dk>
1996-01-12 00:54:23 +00:00
hpeyerl
5e81dcd27a Make it a tad more obvious that this is a 3c505 driver. 1996-01-10 18:21:52 +00:00
chuck
75caa8c729 Imported from OpenBSD/FreeBSD:
Add support for the SMC8416 (EtherEZ) ISA ethernet card.
	The 8416 has an 8K shared mem (the old driver assumed 16K
	and failed at attach time).
1996-01-10 16:49:22 +00:00
mycroft
3441f118d5 Make sure we disk_busy() for every transfer we start. 1996-01-08 21:21:56 +00:00
thorpej
5b39541e48 New generic disk framework. Highlights:
- New metrics handling.  Metrics are now kept in the new
	  `struct disk'.  Busy time is now stored as a timeval, and
	  transfer count in bytes.

	- Storage for disklabels is now dynamically allocated, so that
	  the size of the disk structure is not machine-dependent.

	- Several new functions for attaching and detaching disks, and
	  handling metrics calculation.

Old-style instrumentation is still supported in drivers that did it before.
However, old-style instrumentation is being deprecated, and will go away
once the userland utilities are updated for the new framework.

For usage and architectural details, see the forthcoming disk(9) manual
page.
1996-01-07 22:01:38 +00:00
mycroft
b9c37470a0 Fix Ultrastor 24f probe, per Andrew Gillham. 1995-12-26 17:16:55 +00:00
mycroft
3da4b2a160 The IST_* and IPL_* constants are not bus-specific; don't treat them as such.
Change splimp -> splnet in Ethernet, ARCnet, and FDDI drivers.
1995-12-24 02:29:35 +00:00
christos
e159767fed Repeating my mistakes twice... I used sc-> in the pci probe routine
again, and it turned NetBSD in ostype[] to N^CtBSD... Thanks Charles (again)
Also call epstop() in the attach routine to make sure that the pci card
gets reset properly.
1995-12-05 03:30:15 +00:00
jtc
0cd793449e merge in changes from 1.1 release branch 1995-11-30 00:56:23 +00:00
cgd
0f7f390b49 allow bus-specific lance drivers to use machine-independent buffer/descriptor
copy functions, and convert isa and pmax drivers to do so.
1995-11-25 01:23:51 +00:00
christos
d125a07adb My previous changes broke the pcmcia support. For now assume that all non
PCI cards look identical to ISA cards.
1995-11-13 20:50:22 +00:00
christos
e4c4e9cb07 Add support for the 3c59x (pci) cards in the 3c5x9 driver. In addition
add the necessary bits for the 3c589 (pcmcia) card without adding any
of the pcmcia framework.
1995-11-10 19:39:21 +00:00
mycroft
d3c61be30b Convert IRQ, DRQ, and port numbers to int. 1995-11-10 05:01:05 +00:00
mycroft
38a7c4b007 Correct the format of some diagnostics. 1995-11-10 04:41:58 +00:00
mycroft
d8f6a1896b Convert IRQ, DRQ, and port numbers to int. 1995-11-10 04:30:36 +00:00
mycroft
f096f370fb Use SET(), CLR(), and ISSET() macros.
Rename CFCR to LCR, and cache its value.
Check MSR before transmitting, for better flow control.
Preserve LCR_SBREAK inside comparam().
1995-10-15 19:43:04 +00:00
mycroft
3450507404 Make sure we only schedule one timeout to refill the mbuf queue. 1995-10-10 03:11:28 +00:00
mycroft
85285f6ead Add a shutdown hook. 1995-10-07 09:19:13 +00:00
mycroft
86939fd839 Fix typo. 1995-10-04 00:35:07 +00:00
mycroft
393a69d6db Modularize the CCB/MSCP/ACB/ECB handling a little. No functional changes. 1995-10-03 20:58:56 +00:00
thorpej
a47ab73248 memcmp -> bcmp. Fixes PR #1518. 1995-09-26 22:56:54 +00:00
thorpej
26419c5a8b Don't declare Debugger(). It's handled in <sys/systm.h> 1995-09-26 19:31:15 +00:00
hpeyerl
ddbb956f35 fixes a typo, the case where iomem is specified, but iosize is not, and
moves a couple of ee16 specific calls into a 'if ee16' protected block.
From Andrew Gillham <gillham@Digitron.COM>
1995-09-26 13:24:48 +00:00
pk
0fbf2ca04a Make *print() a message if no scsibus was attached. Also, return something
valid.
1995-09-14 20:43:09 +00:00
hpeyerl
abe82a6680 Etherexpress-16 driver collision by Andrew Gillham <gillham@Digitron.COM>. 1995-09-14 12:41:32 +00:00
mycroft
8887de9230 opri --> s 1995-08-12 22:58:01 +00:00
mycroft
240560e9fd ia_irq has not been a power of 2 for a long time... 1995-08-12 22:37:58 +00:00
mycroft
80d7b0695a minphys() functions really should return void. 1995-08-12 20:30:45 +00:00
mycroft
e4413d1a10 Fix another comment. 1995-08-07 14:26:51 +00:00
mycroft
f657f5bf3e Make this interface simplex. It's more efficient, and sidesteps the
problem of receiving our own multicasts in promiscuous mode.  Also, fix
some outdated comments.
1995-08-07 14:16:26 +00:00
mycroft
6567855472 Count collisions and errors better. 1995-08-05 23:53:18 +00:00
mycroft
82b6eec41c Use an intermediate variable to shorten label initialization code.
Make wddump() work on more machines.
1995-08-05 23:50:23 +00:00
mycroft
24a5e56396 Use an intermediate variable to shorten label initialization code. 1995-08-05 23:47:52 +00:00
mycroft
60d2d483ca Turn off the mbi diagnostics completely. 1995-07-29 23:04:54 +00:00
mycroft
a4fcbe857d Don't loop if we're out of CCBs/SCBs/MSCPs. 1995-07-28 22:49:56 +00:00
mycroft
38036ed16e Fix an oversight in the previous. 1995-07-27 05:01:08 +00:00
mycroft
c9f7b2a185 Add PCI-specific configuration for PCnet-PCI. 1995-07-27 04:39:05 +00:00
mycroft
7ba8b413d9 Disable diagnostics related to expected mbi race condition. 1995-07-27 01:00:11 +00:00
mycroft
e8c91e1129 Fix typos. 1995-07-25 05:11:11 +00:00
mycroft
e413887539 Update to use dev/ic/am7990.c. 1995-07-24 18:04:21 +00:00
cgd
830a91b2e9 update SCSI minphys routines' definitions to match standard minphys()
definition and usage.
1995-07-24 07:16:44 +00:00
cgd
a696e525b7 fix function prototypes, usages, to match what the code actually does 1995-07-24 05:54:52 +00:00
mycroft
bdb9d41d7e Fix thinko in packet size diagnostic. 1995-07-24 04:12:45 +00:00
mycroft
2d37aba592 Add missing `break;'. 1995-07-24 02:46:47 +00:00
mycroft
ff82158c19 Fix typo. 1995-07-24 02:43:11 +00:00
mycroft
4f36e42ff4 Various cleanup:
* Use standard function naming conventions.
* Only increment if_ipackets when a packet was actually received.
* Check for excessively large or small packets before trying to read them.
1995-07-24 02:40:38 +00:00
mycroft
413a5efc0c Pass a softc to leget(), not an ifnet. 1995-07-24 02:29:59 +00:00
mycroft
33292f0f88 Fix typos. 1995-07-24 02:08:13 +00:00
mycroft
7998e5ab4c Various cleanup:
* Use standard function naming conventions.
* Only increment if_ipackets when a packet was actually received.
* Check for excessively large or small packets before trying to read them.
1995-07-24 02:02:45 +00:00
mycroft
b5699db68d Rename new xmit_busy back to txb_inuse. 1995-07-23 23:42:47 +00:00
mycroft
799910cb2c Remove txb_inuse. Other stylistic changes. 1995-07-23 22:12:16 +00:00
mycroft
1df91e03ca Remove a noop clearing of IFF_OACTIVE. 1995-07-23 22:09:11 +00:00
mycroft
1199b1b042 Exchange xmit_free for xmit_busy. Add BPF hook to iestart(). 1995-07-23 22:02:20 +00:00
mycroft
317db86dd3 Stylistic changes. 1995-07-23 21:37:51 +00:00
mycroft
9b2ae2a3cd Stylistic changes. 1995-07-23 21:26:48 +00:00
mycroft
4da9a5f814 Stylistic changes. 1995-07-23 21:14:31 +00:00
mycroft
644935b313 Slight rearrangement. Also, force eg_incount to 0 after a reset. 1995-07-23 20:54:23 +00:00
mycroft
ecf259e342 Call epmbufempty() any time the board is stopped. 1995-07-23 20:46:49 +00:00
mycroft
57528ce346 Init functions are always called at splimp(). 1995-07-23 20:36:51 +00:00
mycroft
6bc1cc31f8 Push the copying of the output buffer further down, with the intent of
eliminating it and outputting the mbufs directly.  Make sure the queue drains
even if packets are not failing to transmit.
1995-07-23 20:27:48 +00:00
mycroft
a8ce47fa44 Remove extra spls in el_init(). 1995-07-23 20:11:55 +00:00
mycroft
90da0e3a99 Kill return values in egstart(). 1995-07-23 19:45:42 +00:00
mycroft
3d1d0d928b Update prototypes. 1995-07-23 17:57:39 +00:00
mycroft
a16702ce45 Various:
* Fix ugly looping constructs.
* Add a missing splx().
* Eliminate sc_pktbuf.
1995-07-23 17:50:56 +00:00
mycroft
8593f3a607 Recode elread() and elget() like other drivers. 1995-07-23 17:05:26 +00:00
mycroft
a1a31f853c Fix pasto. 1995-07-23 16:43:40 +00:00
mycroft
9c26c4da18 Always use m_pkthdr.len on output. Panic if M_PKTHDR is not set. 1995-07-23 16:42:49 +00:00
mycroft
465cfd15f0 Always use m_pkthdr.len on output. Panic if M_PKTHDR is not set. 1995-07-23 16:32:33 +00:00
brezak
693043d786 GUS audio driver from John Kohl. 1995-07-19 19:58:09 +00:00
cgd
880567e771 fix from Onno van der Linden for large-file read timeouts on double-speed
drives.  A different read command must be used on double-speed drives.
It boggles my mind that people could design hardware this stupid.
1995-07-10 01:27:24 +00:00
cgd
e574814605 insert missing call to splx() when {aha,bt}_send_mbo() returns null.
from enami@sys.ptg.sony.co.jp.
1995-07-08 00:34:16 +00:00
brezak
4b4b3ee81a Cleanup 1995-07-07 02:19:48 +00:00
brezak
dd3d2e28ed Setup irq correctly (PR#1179) 1995-07-07 02:15:12 +00:00
brezak
0bdd4aa7c2 add support for cs4231 1995-07-07 02:11:45 +00:00
mycroft
9624704e02 Make each disk and tape driver define its own read and write functions.
Deprecate rawread() and rawwrite() completely.  Remove d_strategy from cdevsw to
force the abstraction barrier.
1995-07-05 02:32:53 +00:00
mycroft
7263209ce6 Make each disk and tape driver define its own read and write functions.
Deprecate rawread() and rawwrite() completely.  Remove d_strategy from cdevsw to
force the abstraction barrier.
1995-07-04 07:15:28 +00:00
mycroft
eb99dcc09a Fix a condition where ttywait() wouldn't be woken up. Also, short-circuit
the case of no pending input in compoll().
1995-07-04 06:47:18 +00:00
cgd
2b71eae2c7 note that most of dev/ic's contents have changed names 1995-06-28 04:30:30 +00:00
cgd
bc9de32349 make dump stubs consistent 1995-06-26 05:34:44 +00:00
cgd
2a8d6461a8 implement new-style block device dump routine if __BDEVSW_DUMP_OLD_TYPE
not defined, otherwise use an "not implemented" stub.
1995-06-26 05:16:55 +00:00
cgd
7491d6cbe5 if subdevices specified with wildcarded unit number, config_attach()
can change the cf_unit, so save it before attach and use saved value.
1995-06-26 04:08:04 +00:00
mycroft
d9fc8ef092 Remove check for if_addrlist == 0; if_attach() always puts one address on
the list, so this is a noop.
1995-06-12 00:09:42 +00:00
mycroft
e6c81430d2 Add missing `break;'s. 1995-06-09 18:09:27 +00:00
cgd
da5b5dfa63 make match/attach routines and cfdriver struct mi 1995-06-07 06:46:04 +00:00
cgd
5a29222f9c prototype isascan, spacing 1995-06-07 06:45:44 +00:00
mycroft
4bfd7749ad Various:
* Check for CTS in the correct register.
* Only do a selwakeup() if we output something.
* Don't make assumptions about what TTYDISC does.
1995-06-05 19:08:09 +00:00
mycroft
5b37a8fded Handle BREAK correctly when not entering DDB. 1995-06-04 20:50:14 +00:00
mycroft
38847d04c0 Add an input FIFO, and fix several flow control problems. Based on code from
Felix A. Croes.
1995-06-04 20:39:22 +00:00
jtc
d045544ebd Changed ns82450 to ns8250 and dropped ns82550 from probe console messages. 1995-06-01 21:26:51 +00:00
mycroft
488bc82ac3 Fix multicast filter calculation. 1995-05-28 11:29:46 +00:00
mycroft
addaff473b Only use the `no pending interrupt' bit in the IIR; the other bits
are too unreliable on clone chips.
1995-05-28 03:26:37 +00:00
cgd
3ebc44f6e1 isa softc structs are larger than 'struct device' 1995-05-17 02:07:03 +00:00
cgd
c821cb684a (1) conditionalize debugger usage in comeint with DDB, not COMCONSOLE;
latter would lead to undefined symbols if DDB not defined.
(2) check for break on console, and therefore debugger entry (if ddb
	in kernel) earlier, so that the device doesn't need to be open.
(3) return immediately after breaking into the debugger in comeint().
(4) only do the normal character input routine in comintr if receive
	mask yeilds _EXACLTY_ LSR_RXRDY.  if there's only a receive
	error, or there's a receive error _and_ a received character,
	do comeint().
(former two by me.  latter two from Bob Baron <rvb@cs.cmu.edu>.)
1995-05-12 17:54:41 +00:00
mycroft
8742c18c06 Update for slightly modified ARP handling. 1995-05-10 14:04:14 +00:00
brezak
c68110e043 Remove strings 1995-05-08 22:01:34 +00:00
brezak
05f27a97ce Fix holes in device index space. PR#1028 1995-05-08 17:28:51 +00:00
cgd
1e0c08b206 uncomment cy driver spec; i386 conf.c needs the header file. 1995-05-03 17:09:28 +00:00
mycroft
825d2fee22 Add Masahiro SEKIGUCHI's MB8696[05] driver, ported, with some additional
changes by me:
* Make autoconfiguration work correctly for more models of AT1700.
* Make the debugging code more robust and complete.
* Tweak the output routine for better performance, and to eliminate an ugly
kluge.
Various other style cleanup.  Needs more work.
1995-05-01 02:47:07 +00:00
mycroft
03e77f5565 Tweak the output routine for slightly better performance. 1995-05-01 02:39:30 +00:00
hpeyerl
c9319ad5c4 <break> --> ddb if defined(comconsole).
(if you have a serial console and you hit break, you get ddb).
1995-04-28 00:34:08 +00:00
hpeyerl
686da9ddb7 copyright foo. 1995-04-27 14:50:58 +00:00
mycroft
6bb0f284d0 Turn off some debugging code by default. 1995-04-27 01:46:47 +00:00
brezak
1f4378da60 Fix nits from Mike Long <mike.long@analog.com> PR#996 1995-04-26 21:45:57 +00:00
mycroft
cb856a9a4d Watchdog now takes an int, not a short. 1995-04-19 22:42:51 +00:00