Commit Graph

1443 Commits

Author SHA1 Message Date
christos 3c0096ff79 gcc -Wall delinting: unused variables, assignments inside if's and missing
arguments in printf statements.
1996-04-19 00:02:29 +00:00
christos d7b610dca6 Fix 3c590 to use the new pci interface; the pci compat code changes were
slightly biffed.
1996-04-19 00:01:19 +00:00
cgd 720c148692 remove unnecessary header inclusion (machine/autoconf.h) and now-bogus comment.
also, trim spaces at ends of lines, etc.
1996-04-18 01:12:41 +00:00
cgd f8073d3675 restructure to take advantage of config's (relatively) new 'attach'
specifiers.  Many #ifdefs and much other nastiness removed.
1996-04-18 00:50:11 +00:00
cgd d7d306aeb7 change LANCE copy & zero functions' names to start with amd7990_, and
remove their 'integrate' (usually defined to be 'static') keywords.
when lance drivers are split up by attachment, more than one file will
reference the copy/zero functions (i.e. not just the file that pulls in
am7990.c... and eventually inclusion of am7990.c should go away entirely).
1996-04-18 00:25:11 +00:00
cgd 17731baa0d fix copyrights 1996-04-17 22:22:32 +00:00
cgd 71c7924099 clean up clock handling: clock drivers are now seperate from the
chip-independent clock code.  'clock' has been renamed 'mcclock'  'clock'
has been renamed 'mcclock' (since it's a driver for that particular
clock, and since eventually there may be another clock chip driver),
and now attaches via seperate match/attach functions to both TC and ISA.
This removes a whole lot of #ifdefs...
1996-04-17 22:01:16 +00:00
cgd a610e9d471 include <sys/termios.h> to make comvar.h happy 1996-04-15 18:55:23 +00:00
cgd b6549d493d define and export the global variable "comconscflag", the default tty
'cflag' for the console.  Normally set to TTYDEF_CFLAG, may be
overridden by machine-dependent console attachment code, as necessary.
(Alpha uses it to set cs8 -parenb.)  Files including comvar.h now
need to include <sys/termios.h>, because comconscflag is of type
tcflag_t.
1996-04-15 18:54:31 +00:00
leo 7ff219ef0d Add some prototypes. 1996-04-12 08:30:09 +00:00
cgd 432b9ff657 add support for the alpha 1996-04-12 06:34:36 +00:00
cgd 51e85d07b9 update for addition of a machine-dependent cookie as the first argument
to isa_intr_{,dis}establish().
1996-04-11 22:27:59 +00:00
cgd e6456e7285 on non-i386 systems, include <machine/intr.h> (per charles's proposal on
tech-kern (?)), to get the IPL_* and IST_* types.  pass the machine-dependent
cookie given at attach time on to sub-devices, so they can use it to access
the interrupt functions properly.
1996-04-11 22:25:44 +00:00
cgd a391172983 include a machine-specific header from ARCH/isa/isa_machdep.h, to define
the isa_chipset_tag_t type, and to define or prototype:
	isa_attach_hook()
	isa_intr_establish()
	isa_intr_disestablish()
i.e. the machine-dependent functions to be used my MI ISA code.
Remove prototypes for the latter two functions from this file.
1996-04-11 22:20:50 +00:00
cgd 01c4e7fb64 include raster_op.c and raster_text.c if 'raster' is defined, as well
as if 'rasterconsole' is defined.  Alpha uses 'raster' to pull in the
raster text and operation code, but doesn't use this console emulator,
etc.
1996-04-11 21:54:38 +00:00
cgd 789a455ab4 if no DDB, define Debugger() to be a panic. 1996-04-10 23:01:13 +00:00
gwr 32d12d3be4 Make the ring size configurable in the tty driver.
Make the pseudo-interrupt functions return void.
Call the tty layer at spltty (to be safe).
1996-04-10 21:44:35 +00:00
mycroft 0609135a66 Add explicit return types. 1996-04-10 19:03:46 +00:00
cgd 4889b6bcc2 use the new interfaces for interrupt attachment, etc. 1996-04-09 22:47:00 +00:00
cgd d645bb042d make the EISA code look a bit more like the PCI code, in the way
the bus is configured, interrupts are handled, etc.  machine-dependent
header (machine/eisa/eisa_machdep.h) defines eisa_chipset_tag_t and
eisa_intr_handle_t types, and the following functions:
	eisa_attach_hook()
	eisa_maxslots()
	eisa_intr_map()
	eisa_intr_string()
	eisa_intr_establish()
	eisa_intr_disestablish()
Don't define the interrupt establish/disestablish functions directly
in terms of the ISA functions any more (on some wacked out systems,
there can be a difference).
1996-04-09 22:46:11 +00:00
jonathan 57fd0e266b Fixes for -Wall -Wmissing-prototypes:
include <sys/systm.h> to get a prototyped declaration of printf().
	include <machine/autoconf.h> for port-specific typedefs.
	Remove unused variables.
1996-04-09 20:50:06 +00:00
cgd f85f062d77 spaces vs. tabs 1996-04-09 20:07:16 +00:00
pk 696daec742 Make this compile if LEDEBUG id defined. 1996-04-09 15:21:59 +00:00
thorpej 43411d2e96 Convert to use <machine/bus.h>. 1996-04-09 00:46:15 +00:00
jonathan 282688d407 Fixes for -Wall -Wmissing-prototypes:
remove unused variable "xfer" from the copy{to,from}buf_gap2() functions.
1996-04-08 20:11:46 +00:00
jonathan 45b229da22 fixes for -Wall -Wmissing-prototypes:
prototype the forward declaration of lewritereg().
1996-04-08 20:09:56 +00:00
jonathan 8ae2ddf4ad fixes for -Wall -Wmissing-prototypes:
add "return (0);" to cnstop()'s emtpy body.
1996-04-08 19:57:30 +00:00
mycroft 740637ad71 If we dequeue a packet due to excessive collisions, make sure we check
to see if the queue length has dropped to 0.
1996-04-08 19:02:19 +00:00
ragge a24af7a7c2 Added prototypes to everything. Made all files compile with -Wall. 1996-04-08 18:32:26 +00:00
ragge 86c328d230 Drivers for DZ11/DZV11/DZQ11 serial cards.
Written (mostly) by Ken Wellsch.
1996-04-08 17:22:20 +00:00
cgd 80efcebba5 kill some pasted spaces. 1996-04-06 02:04:00 +00:00
mycroft 78746c0d27 Regen. 1996-04-04 21:47:52 +00:00
mycroft 691dea75ae Add some NCR chips. 1996-04-04 21:46:33 +00:00
cgd 402f77d443 remove tricky open-coded variants of config_found(), by using the
child device pointer now returned by config_found().  (previously,
the code played games to get that pointer; now they are unnecesary.)
1996-04-04 07:08:10 +00:00
mycroft 9c6e05d835 Minor optimization, and do a CLRCH after (re)selection just to be safe. 1996-04-03 15:58:13 +00:00
mycroft b82447e3e1 * Change message priorities so that ABORT comes after IDENTIFY.
* Add an ACB_RESET flag, so that a BUS DEVICE RESET can be queued within the
driver.
* If ACB_ABORT or ACB_RESET is set during reselection, schedule a message and
assert ATN.
* Optimize aic_datain_pio(), aic_dataout_pio() and aicintr() somewhat.
* Schedule a timeout only when we select the target, so that commands can't
time out prematurely.
1996-04-03 10:33:45 +00:00
mycroft 70f35ac052 Don't wait for a command complete interrupt when enabling mailbox out
interrupts.
1996-04-03 09:45:45 +00:00
mycroft f0d8cbb1cb Don't wait for the host adapter to be idle before enabling or disabling
mailbox out interrupts.
1996-04-03 08:48:46 +00:00
mycroft 5e078e5ec8 Implement ncr_print(). 1996-04-03 08:44:15 +00:00
thorpej 52fee18c6f New SCSI media changer driver, written from scratch by me. Some
influence from the old driver (written by Stefan Grefen) and from
an autochanger driver written by the Systems Programming Group at the
University of Utah Computer Science Department (currently residing
in src/sys/arch/hp300/dev/ac.c).
1996-04-03 00:25:21 +00:00
cgd babc8db2c1 fix inverted sense of tests in DE500 media select function. (Would
auto-detect as 100Mbps if 10Mbps, 10Mbps if 100Mbps.)
1996-04-01 19:37:54 +00:00
mycroft d0742ed3c5 Several things:
1) If we get an unexpected disconnect, issue a REQUEST SENSE, as recommended
by the SCSI-2 spec.  If the target created a contingent allegiance condition,
this will clear it.  Also, if it happened while sending a SDTR or WDTR message,
disable negotiation for that target.
2) Since some lame devices still don't deal correctly, make sure we deassert
ATN if our last message out is interrupted.  If we get a MESSAGE PARITY ERROR,
we'll reassert ATN anyway.  This should ensure that we never have to send a
MESSAGE NO OPERATION.
3) Set AIC_ABORTING only when actually sending a BUS DEVICE RESET or ABORT,
so we get better error detection.
4) Other internal reorganization of no consequence.
1996-04-01 07:24:37 +00:00
jtk 55960650f7 add include file for function prototypes 1996-03-31 22:50:11 +00:00
pk 2f3ec93250 Various cleanup; mostly trailing spaces/tabs. 1996-03-31 22:38:29 +00:00
mycroft 004f5e8d39 Fix a slight biff with 16-bit DMA in last change. 1996-03-31 20:51:43 +00:00
christos b8e757d588 - remove unused variable
- add missing argument to printf statement
1996-03-30 23:08:29 +00:00
christos e1930da21b Remove dependencies to dev_conf.h and the file itself. 1996-03-30 23:05:46 +00:00
christos 1e2c047be7 - Don't use dev_conf.h
- Remove unnecessary prototypes
- Fix ioctl arguments
- Don't use kprintf(...TO_LOG...); directly. This does not set the log
  priority, and uses priority of the previous message. Use log() with %:
1996-03-30 22:51:23 +00:00
christos 94d26d3017 - Eliminate scsi_conf.h
- Fix prototypes
- Fix PR/2248 [Problems with HP scanjet...]
1996-03-30 21:47:00 +00:00
christos beec8ba94c Eliminate scsi_conf.h. 1996-03-30 21:44:50 +00:00
mycroft 778f21db6a Use `{in.out}b(iobase + ...' rather than including the base address in
the register definitions.
1996-03-30 16:13:24 +00:00
mycroft 72f4fb5692 Fix return type of wds_sense(). 1996-03-30 07:40:11 +00:00
mycroft 78681855e4 This version is deprecated. 1996-03-30 05:36:32 +00:00
cgd 5c2768088c make sure that chipset tags are used properly (because the alpha cares),
and include <machine/intr.h> on the alpha, for interrupt information.
(i386 will probably switch to this eventually.)
1996-03-30 05:10:29 +00:00
mycroft 59e1daefcd Working WD7000 and TMC-7000 driver, from Julian Highfield, with additional work by me.
Needs some refinement, but it works.
1996-03-29 20:53:30 +00:00
mrg 1180bee580 eliminate unused variables. 1996-03-29 14:50:12 +00:00
mycroft fc8683fbaa Eliminate random warnings. 1996-03-29 00:24:58 +00:00
mycroft 5c3bc6f120 Use %p as appropriate. 1996-03-29 00:11:42 +00:00
mycroft 15fd04d5a4 Really implement ahcprint(). 1996-03-28 22:39:08 +00:00
mycroft 44baed59ef Fix the mailbox unlock code for CF and CP. 1996-03-28 18:19:05 +00:00
cgd 80ed7f1dc8 remove inappropriate an potentially confusing comments ("unnecessary?") from
the pa_device and pa_function members of the pci_attach_args structure.
1996-03-28 02:16:23 +00:00
cgd 87328287b7 modify these to provide a new, better-specified PCI interface
(soon to be documented on mailing lists; eventually in section 9 manual
pages), most importantly:
	(1) support interrupt pin swizzling on non-i386 systems with
	    PCI-PCI bridges (per PPB spec; done, but meaningless, on i386).
	(2) provide pci_{io,mem}_find(), to determine what I/O or memory
	    space is described by a given PCI configuration space
	    mapping register.
	(3) provide pci_intr_map(), pci_intr_string(), and
	    pci_intr_{,dis}establish() to manipulate and print info about
	    PCI interrupts.
	(4) make pci functions take as an argument a machine-dependent
	    cookie, to allow more flexibility in implementation.
1996-03-27 04:08:24 +00:00
cgd d37d07a75b modify these to use the new PCI interfaces:
(1) use pci_{io,mem}_find(), to determine what I/O or memory
	    space is described by a given PCI configuration space
	    mapping register, and bus_{io,mem}_map() to map it.
	(2) use pci_intr_map(), pci_intr_string(), and
	    pci_intr_{,dis}establish() to manipulate and print info about
	    PCI interrupts.
	(5) make pci functions take as an argument a machine-dependent
	    cookie, to allow more flexibility in implementation.
1996-03-27 04:06:53 +00:00
cgd dbdbd735b8 Update these (as minimally as possible) to work with new PCI interfaces:
(1) make pci functions take as an argument a machine-dependent
	    cookie, to allow more flexibility in implementation.
(use of other PCI functions, etc., left unchanged.)
1996-03-27 04:03:05 +00:00
cgd 4b535677ab fix pasto: sdminphys -> cdminphys in comment. 1996-03-27 01:11:41 +00:00
mycroft f20498187e SDUNIT -> CDUNIT in last. 1996-03-27 00:48:50 +00:00
cgd 72060dc6fa add definitions for the BIST/Header Type/Latency Timer/Cache Line Size
configuration space register, and use it to determine whether or not
a given PCI device uses multiple functions.
1996-03-27 00:13:50 +00:00
mycroft 5ed22a9852 Put back dk_establish() for now. 1996-03-26 22:22:19 +00:00
mycroft 5f57f43753 Increase *OUTSTANDING.
Remove old dk_establish() garbage.
Support the `ancient' bit in both drivers.
1996-03-26 20:32:06 +00:00
mycroft 60a21c451b Format police. 1996-03-26 17:06:46 +00:00
gwr 639d64d73b Allow the machine-dependent code to define a fast comparsion function
for ethernet addresses via the macro ETHER_CMP. (see sun3/dev/if_le.c)
Add a comment explaining the LANCE_REVC_BUG work-around section.
1996-03-26 14:54:56 +00:00
jonathan 2bd6015194 Fixup after the "New device attachment scheme": change {mainbus,tc,ioasic}cd
to {mainbus,tc,ioasic}_cd.

Change ioasic config name from "lance   " to "lance". Correct for
pmaxes, perhaps not for Alphas.

Boots and runs under load on a 5000/200. Hangs during boot on an ioasic
decstation; pmax  autoconfig needs fixing.

Add Decstation-3100 baseboard support (untested).
1996-03-26 13:44:07 +00:00
mycroft 8d60d04ffa Remove dead variables. 1996-03-25 07:11:12 +00:00
mycroft 3ab38e9ad4 Display the right sync period for fast devices. 1996-03-25 00:18:09 +00:00
mycroft dac7f9a885 Fix up a couple of printf()s. 1996-03-24 22:23:56 +00:00
mycroft e2f1ed6ef2 Various, including:
* Display as much revision info as we can get.
* Fix a race condition that could cause interrupts to be lost.
* Handle `out of mailbox' conditions (much) more gracefully.
* Schedule timeouts more safely.
* Add diagnostic code to (correctly) detect if a CCB times out before its
outgoing mailbox is emptied.
1996-03-24 22:20:41 +00:00
mycroft caeb897758 Fix trivial oversight in last. 1996-03-24 07:36:11 +00:00
mrg 2c329c900b %d -> %ld in a few places... 1996-03-24 01:26:57 +00:00
gwr daef0ae82a The ramdisk is now a pseudo-device. 1996-03-22 23:02:02 +00:00
cgd caf3bddd6f make this a little bit closer to the pcivar.h header; no reason to
be gratuitously different in some places.  (just cosmetic changes.)
1996-03-22 03:31:33 +00:00
cgd 780657a591 don't export eisa_cd. Drivers shouldn't need it, and, indeed, if they
do, they're probably doing thing the Wrong Way.
1996-03-22 02:43:54 +00:00
gwr 3143afbd6a Fix typo 1996-03-21 22:37:26 +00:00
scottr 3166ff9f2f Add a SDEV_NOLUNS quirk for the Epson OMD-5010 removable MO cartridge drive. 1996-03-21 03:29:40 +00:00
is ab622e51f5 - Zeroth version of M68060 support (dont want to cause emulation traps for
the "Fast Assembler Version of the copy loop)
- Yet another sanity check included: initialize unused receive buffers to
  zero sender id; and test for sender hardware id of zero in the receiver.
  Gives us better error messages in case flaky hardware causes spurious
  receive interupts.
1996-03-20 13:28:50 +00:00
mycroft 78de5226a1 lto3b -> _lto3b 1996-03-19 03:28:45 +00:00
mycroft e819063285 Define a full set of [234][bl]tol() and lto[234][bl]() conversion functions,
inlined.
Use sized types in protocol structures.
Make the definition of scsi_sense_data less ugly.
1996-03-19 03:05:15 +00:00
gwr 79eb9fbf61 Deal with devices that are slow to get off the bus. 1996-03-18 23:09:02 +00:00
gwr 4e6633ab9a Fix two bugs pointed out by Leo Weppelman:
(1) Did not initialize cs->cs_rr0 anywhere
(2) Have to read rr1 before the data it applies to
1996-03-18 23:06:02 +00:00
ragge 8fa15eb73f Ubareset are now possible, devices that wants it now set it up
during autoconfig. ifubareset (if_reset) no longer used, actually
it's just a normal ubareset and is now handled like that.
1996-03-18 16:47:24 +00:00
hpeyerl 9785218963 Fix for NEC D3847 1.6gB drive which reported itself at lun[1-7]. 1996-03-18 16:19:58 +00:00
cgd b55176ea0c since this driver tries to block its interrupt with spltty(), it must
attach that interrupt with IPL_TTY.
1996-03-18 09:14:32 +00:00
jonathan 5bccfd6764 Additional fixes to complete the NetBSD/1.1B config changes:
Add new device-attach struct cfattach asc_ca and struct cfdriver asc_cd.
Change cfdriver references from "XXXcd"  to "XXX_cd".
1996-03-18 01:39:47 +00:00
ragge 6275c70064 Convert all devices according to the changes to config. 1996-03-17 22:56:15 +00:00
jonathan 3175cdba0b Additional fixes to complete the NetBSD/1.1B config changes:
change tc_submatch() to compile with the new device-attach scheme:
the TC bus uses a 'submatch' function which checks device locators
and then calls a match function.
Instead of calling cf->cf_driver->cd_match(), we now need to call
cf->cf_attach->ca_match().
1996-03-17 22:09:17 +00:00
jonathan d1c70894b8 Additional fixes to complete the NetBSD/1.1B config changes:
Rename the extern declaration of `tccd' and `ioasiccd' in
src/sys/dev/tc/{tvar.h,ioasicvar.h", respectively, to be
`tc_cd' and `ioasic_cd', to match the 1.1B-style definitions.
1996-03-17 21:37:45 +00:00
cgd b5c1728e22 clean up <machine/bus.h> changes a bit; no real functional change.
prototype lpt_port_test().
1996-03-17 13:40:29 +00:00
cgd 179f65d15e Add #ifdef's at the right places, on NCOM_ISA and NCOM_COMMULTI, to
only include the relevant code in the probe & attach functions.  Still
one probe and one attach function, with #ifdefs, but this is a step
in the right direction and saves a few hundred bytes (ooh, ahh!).
1996-03-17 13:38:14 +00:00
cgd 94907fa254 adjust to deal with expression support for optional file specs 1996-03-17 13:21:09 +00:00
cgd 9d4db41a9f change the name of com's attachment to commulti, and provide flags
for that and the isa attachment in com.h (in addition to the flag for
the presence of 'com' itself).
1996-03-17 07:30:25 +00:00
pk 12bcc82160 Parentheses are your friends. 1996-03-17 02:06:50 +00:00