Commit Graph

210 Commits

Author SHA1 Message Date
cgd 21598de043 use machine/conf.h instead of sys/conf.h and/or machine/cpuconf.h 1997-04-07 06:09:00 +00:00
cgd 059aaedd65 clean up NetBSD RCS ID strings, include machine/options.h 1997-04-06 22:31:45 +00:00
cgd aca6fadc11 clean up NetBSD RCS ID strings 1997-04-06 22:30:21 +00:00
is 07b064e02e New ARP system, supports IPv4 over any hardware link.
Some of the stuff (e.g., rarpd, bootpd, dhcpd etc., libsa) still will
only support Ethernet. Tcpdump itself should be ok, but libpcap needs
lot of work.

For the detailed change history, look at the commit log entries for
the is-newarp branch.
1997-03-15 18:09:08 +00:00
thorpej 4042a48848 Update for new 53c9x driver. 1997-02-27 01:27:54 +00:00
thorpej 2c223871dd Add a front-end for the MI 53c9x driver, called "asc", which is the
name used by Digital UNIX (formerly DEC OSF/1).
1997-02-27 01:19:40 +00:00
thorpej 4878198b5c Remove this driver; it is now obsolete. 1997-02-27 01:17:56 +00:00
thorpej d502e68402 Fill in sc_link.max_target 1996-12-10 21:27:16 +00:00
cgd e4f6e48c7d kill the last vestiges of __BROKEN_INDIRECT_CONFIG. 1996-12-10 19:33:51 +00:00
cgd e9abc8540f remove all traces of __BROKEN_INDIRECT_CONFIG (except in shared drivers) 1996-12-08 00:22:08 +00:00
cgd 8b6a32d1c1 update these so they compile whether or not __BROKEN_INDIRECT_CONFIG
is defined.
1996-12-05 01:39:27 +00:00
mycroft 7cec90e7ea Fix a race condition in tcds_scsi_isintr().
Also, remove the annoying and bogus `empty FIFO of N' message.
1996-12-04 22:35:08 +00:00
cgd 30b636bd09 implement bus_space_copy_*(). 1996-12-02 22:19:32 +00:00
cgd 256cf234a1 move barrier operation definition closer to the top of the bus space ops
structure.  In the implementations, allow the barrier op to be inlined.
1996-12-02 07:07:18 +00:00
cgd 54ba942f79 implement bus_space_set_multi_* and bus_space_set_region_* operations. 1996-12-02 06:46:49 +00:00
cgd e6bafb00d6 declare the single-datum read and write methods as inline, so that
the multi and region methods can inline them.
1996-12-02 06:12:39 +00:00
pk f5f35b104f Sync with sparc port:
>Pay attention to DMA errors as reported by DMAINTR() returning -1. If this
>happens reset everything.
>
>Re-schedule a timeout when first attempting to abort an operation.
>Cancel any queued timer events before re-scheduling a timeout, so esp_abort()
>can be called from other places besides the timeout handler.
1996-11-27 21:38:35 +00:00
cgd e29fc4fb1d sync up with pk's commit to the sparc port:
>One control block per target is insufficient if you have a full complement
>of targets attached and access those simultaneously (like in a ccd(4) array).
>We (now) allocate (somewhat arbitrarily) three per target.
>Noticed by Marshall Midden.
1996-11-24 04:21:30 +00:00
cgd 7b52699cfd catch up with wscons frame buffer attachment, mmap, and ioctl
interface changes.
1996-11-19 05:23:07 +00:00
pk 336790c5a2 Sync with sparc revision 1.61:
Add explicit casts to `%l*' formatted arguments.
1996-11-16 23:17:18 +00:00
cgd c8201bca4d Add short delays after accessing registers, so that the z8530's settle
times are respected.  This solves the duplicated characters problem.
1996-11-16 00:40:14 +00:00
cgd 70147216ec Include a PMAGB-BA in the list of built-in devices only if SV_GRAPHICS
is set in the RPB's rpb_variation field.  This fixes a bug where machines
(e.g. the 3000/900) would see that they could touch memory where a built-in
PMAGB-BA, assume that it was there, and panic later because the memory they
were accessing didn't look like PMAGB-BA registers (because it wasn't).
1996-11-15 23:59:00 +00:00
cgd 6c9cb4aa9b compile cleanly with:
-Werror -Wall -Wstrict-prototypes -Wmissing-prototypes -Wcast-qual
1996-11-13 21:13:04 +00:00
cgd c55c19e5b1 -Werror -Wall -Wstrict-prototypes -Wmissing-prototypes -Wcast-qual cleanups. 1996-11-12 21:00:33 +00:00
cgd 1b03f1bca7 update for new bus.h macros. bus_io_* and bus_mem_* integrated into
single bus_space_* framework.  Unfortunately, bus_space_{read,write}_*
operations still imply barriers.  That will change soon.
1996-10-23 04:12:13 +00:00
cgd 2f614ee518 update for new bus.h 1996-10-22 21:34:19 +00:00
cgd 6d917387e4 there is no TC I/O space, so in the new bus.h world order there
is no tc_bus_io.c.
1996-10-22 21:15:45 +00:00
jonathan 0d1085302d alpha_mb() -> tc_mb(), for alpha/pmax convergence, even tho the tc_mb()
interface in tc_machdep.h is obsolete.
Change "#if 0" around  pmax rcons mouse-redirection to "#ifdef HAVE_RCONS"
1996-10-16 05:07:57 +00:00
cgd caa0b41652 spaces -> tabs where appropriate, some (minor) KNF (it needs much more),
kill spaces at EOL.
1996-10-16 04:07:16 +00:00
cgd 99ffca7953 more updates from jonathan. kill scc_tty array and needs-count 1996-10-16 03:53:31 +00:00
cgd 862e0d2653 various bits of cleanup, from jonathan stone, to make this and the pmax
driver slowly converge.
1996-10-16 00:03:02 +00:00
mycroft 7f28c2392c Increase the maximum number of ECBs. 1996-10-15 21:31:37 +00:00
mycroft d2f275101a Minor cosmetic change. 1996-10-15 21:30:19 +00:00
christos 8d9699acda backout previous kprintf change 1996-10-13 02:59:55 +00:00
christos 946833855f printf -> kprintf, sprintf -> ksprintf 1996-10-10 23:51:21 +00:00
mycroft 4cd799d5a9 Remove unused variable. 1996-09-28 03:37:36 +00:00
mycroft 3729419cc8 * Bitbucket extra status bytes rather than barfing.
* Add copyright.
1996-09-28 03:16:56 +00:00
mycroft e097189e2b Restructure code more like aic6360 driver. Also:
* Check for some errors during reselect.
* Don't recognize MESSAGE PARITY ERROR.  A target is not allowed to
send it.
* Check the size of a SDTR.
1996-09-28 02:10:55 +00:00
thorpej 15516a9a89 - Add some missing prototypes and kill an unused label.
- Add some missing SPARC_DRIVER stuff.
- Make SPARC_DRIVER automatic.

This driver now compiles as-is and works on both the SPARC and Alpha.
1996-09-27 21:37:17 +00:00
mycroft be1172e37b Fix dangling pointer in debugging message. 1996-09-27 20:21:38 +00:00
mycroft 00089386d6 If we get an unexpected disconnect while issuing a REQUEST SENSE, do a reset. 1996-09-27 19:55:41 +00:00
mycroft 3075e1443b Functional changes:
* Handle message retransmissions and partially sent messages correctly.
* Make sure we clear ATN after the last message is sent.
* Do the right thing if the target initiates negotiation for async mode
after having negotiated sync mode.
* Fix some cases where we set ATN with no message queued, or schedule a
message without setting ATN.
* Issue a REQUEST SENSE after an unexpected disconnect, per SCSI spec.
* Fix abort handling in a number of cases.
* Recognize selection timeouts better (to speed up probing).
1996-09-27 19:36:34 +00:00
cgd 17264a54f2 s/k0segtophys/ALPHA_K0SEG_TO_PHYS/ 1996-09-15 17:16:24 +00:00
cgd 7ba205c37e Sync the 53c94 SCSI driver with the sparc version. Update the DMA code to
match the interfaces required by the driver.
1996-09-09 18:10:35 +00:00
mycroft b3eac79b64 tty stop functions really should return void, not int, and certainly not both. 1996-09-02 06:43:16 +00:00
cgd 71ad30d0e9 (1) set scsi_link channel to either the appropriate channel (if a
multi-channel driver), or to SCSI_CHANNEL_ONLY_ONE if a
    single-channel driver.
(2) use scsiprint() rather than a locally-defined autoconfig print
    function, and kill any locally-defined print function.
1996-08-28 18:59:15 +00:00
cgd 2a73ef60b7 change cfprint_t type definition to take a const char *, rather than
a char *, because that's what was really intended, and because
if the print function modifies the string, various things could become
unhappy (so the string should _not_ be modified).
1996-08-27 21:53:46 +00:00
cgd e59fad87f5 OLD_PMAP -> NEW_PMAP 1996-08-20 22:38:26 +00:00
cgd 9905bce8a5 (1) Clean up interrupt handling slightly. 1996-07-14 04:06:27 +00:00
cgd 3986cf9624 make this compile with pmap work in progress 1996-07-11 03:33:25 +00:00
cgd 0cefc7ef74 clean and update for new defintions, prototypes, etc. 1996-07-09 00:53:48 +00:00
cgd 386aeb320f clean up copyright notices 1996-06-13 18:31:49 +00:00
cgd f4e69ce47d fix pasto in last commit. 1996-06-11 21:28:31 +00:00
cgd bbdf2df9b0 since bus_mem_subregion() can return failure, don't even bother to try
to handle the case where subregion offset isn't a multiple of 8.
1996-06-11 21:20:08 +00:00
cgd d714189d53 implement bus_mem_subregion() and bus_io_subregion(). 1996-06-11 21:16:21 +00:00
cgd 56db5baced print slot number as decimal, not hex 1996-06-05 01:32:00 +00:00
cgd 666c7f6fd4 interrupt counters for TurboChannel systems. 1996-06-05 00:30:48 +00:00
cgd 2d03e599c7 don't depend on being able to read the IMR. Apparently, it doesn't
work (as documented in the DEC 3000/[3-9]00 System Programmer's Manual)
in some of the older 3000/500 systems.
1996-06-04 19:02:16 +00:00
cgd c6dd609e7f gross hack to get around the fact that there are currently devices with
common back-ends that live on multiple very-different busses (e.g. PCI and
TC), which need bus-specific DMA mapping support.  As a nice side effect,
this will allow the especially nasty (vtophys(va) | 0x40000000) expressions
to go away in favor of less nasty bus-specific function calls.
1996-06-03 20:18:48 +00:00
cgd 729d7a8aa8 only do tty_attach() for first tty of each chip; that's the only real tty. 1996-06-03 19:43:31 +00:00
cgd 6e6fc14f32 add tty_attach() calls where appropriate 1996-05-30 18:44:30 +00:00
cgd 5e29c383e2 add wbflush() calls in strategic places. These really shouldn't be
here, and there should be a generic 'bus' interface to do memory
read/write barriers.
1996-05-20 03:14:07 +00:00
cgd 4145f89f54 TurboChannel bus_mem_* functions. bus_mem_{read,write}_8, and
bus_mem_read_{1,2} are not yet supported for sparse space.
1996-05-18 00:00:51 +00:00
cgd 0307c36933 bus_io_* functions. These have no meaning on the TurboChannel, since
it's a memory-mapped bus and has no I/O space.  They all are
fancy wrappers around panic().
1996-05-17 23:59:31 +00:00
cgd 84b37ec80d set up a bus_chpiset_tag_t, and pass it to the TC code 1996-05-17 23:58:43 +00:00
cgd 7c1754fdff add a bit of clarafication in a comment, and change the interrupt
handling code so that if a given interrupt is disabled (and therefore
can't have caused the actual I/O interrupt), its handler won't be
called even if its bit is set in the interrupt register.
1996-05-02 21:56:46 +00:00
cgd 49c46e1789 Preliminary CFB support. Does not work as machine's console (for two
reasons: it won't attach as console, and there's currently no way to do
keyboard input on TC machines), and has no real RAMDAC (colormap, cursor,
etc.) support.  Digital UNIX does not support CFB frame buffers in the
Alpha, but they appear to work OK (with an appropriate monitor) in my
3000/300.
1996-05-01 23:25:00 +00:00
cgd cb0eb158e7 fix the test for option slot interrupts. If a given interrupt is
disabled (and therefore can't have caused the actual I/O interrupt),
don't try to call its handler even if its bit is set in the interrupt
register.
1996-05-01 23:19:50 +00:00
cgd b65a5bbdfc preliminary SFB support. Does not work as machine's console (for two
reasons: it won't attach as console, and there's currently no way to do
keyboard input on TC machines), and has no real RAMDAC (colormap,
cursor, etc.) support.
1996-05-01 21:15:46 +00:00
cgd f22c1ccb83 clean up setting of the default tty cflag. don't do the "delay if
high bit set" thing.
1996-04-29 14:48:25 +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 576c769331 clean up copyrights and RCS IDs 1996-04-12 06:07:05 +00:00
cgd ba87ccc479 update for latest MI TC and SCSI code, and clean up in the face of
config changes.
1996-04-12 01:31:43 +00:00
thorpej 08607bc611 New device attachment scheme:
- split softc size and match/attach out from cfdriver into
	  a new struct cfattach.

	- new "attach" directive for files.*.  May specify the name of
	  the cfattach structure, so that devices may be easily attached
	  to parents with different autoconfiguration semantics.
1996-03-17 01:03:02 +00:00
mycroft 9d9a70a5a2 Fix #includes. 1996-02-02 18:05:36 +00:00
cgd a5c7435308 update for new turbochannel configuration code. 1995-12-20 00:43:20 +00:00
cgd ec7644f74f update to include most of pk's changes to the sparc esp driver.
rework TC configuration code.
1995-12-20 00:40:21 +00:00
cgd 175729032f rename these more appropriately 1995-12-20 00:12:52 +00:00
cgd c87e761abf these have been renamed 1995-12-20 00:11:15 +00:00
cgd 1ebd4658b5 these are going to be made machine-independent 1995-12-20 00:10:40 +00:00
cgd 17f70e1910 portability definitions for machine-independent TC configuration code. 1995-12-20 00:09:29 +00:00
cgd e6dc5f55db update for am7990var.h, am7990.c changes 1995-11-25 01:31:09 +00:00
cgd deb4082f80 wholesale update from my NetBSD/Alpha source tree. Includes:
Support for AXPpci CPUs,
	Support for AlphaStation 600 CPUs,
	new boot block structure, which requires an 'installboot'
	    program and works a lot like the NetBSD/sparc boot blocks.
1995-11-23 02:33:17 +00:00
cgd 0f14e95f52 replace bogus tcl with tch, thanks to briggs 1995-09-05 15:07:05 +00:00
cgd 207c4ddca2 MB -> wbflush 1995-08-03 00:52:29 +00:00
cgd ffb2012cee MB -> wbflush 1995-08-03 00:52:00 +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 2b71eae2c7 note that most of dev/ic's contents have changed names 1995-06-28 04:30:30 +00:00
cgd da6d5a140a update to use new paths for MI lance driver 1995-06-28 02:30:25 +00:00
cgd 6d04247fc7 update to use machine-independent lance driver 1995-06-28 01:48:12 +00:00
cgd 2a6abc91f8 update for (old) new tty changes 1995-06-28 01:06:35 +00:00
cgd 7a275b5901 update for new clock interrupt handling 1995-06-28 01:03:57 +00:00
cgd 71fa065268 deal with renamed header file. 1995-04-22 12:41:05 +00:00
cgd 97cd254342 console putc returns void 1995-04-22 12:35:17 +00:00
cgd 610d597217 adjust for networking code changes 1995-04-22 12:34:15 +00:00
cgd 72632df1e2 they've moved. 1995-04-19 09:00:29 +00:00
mycroft c9a66fce20 Use global 8530 defs. Needs more work. 1995-04-11 03:41:04 +00:00
jtc 71ab4ed9dc KERNEL -> _KERNEL 1995-03-28 18:13:48 +00:00
cgd 93d789f4a5 cleanup, add some comments, and (oh yeah!) look at interrupt bits 1995-03-24 14:59:37 +00:00
cgd 0d22f2407b make bpf work, by appending ether header before mtap, then discarding it. 1995-03-24 14:57:12 +00:00
cgd f2619698ac deal reasonably with the 3000/300's console (annoying engineers!) 1995-03-24 14:52:24 +00:00
cgd 91a475f398 print out mode (slow vs. fast) 1995-03-24 14:49:28 +00:00
cgd dd5a5290f2 update from my local tree; better CPU configuration, support for 3000/300. 1995-03-08 00:38:44 +00:00
cgd c9c62fc738 Follow suggestions put forth by Roger Ivie, and be a bit more careful
about setting and clearing bits in the CIR.
1995-03-03 01:38:56 +00:00
cgd e6e80015b0 use charles's cleaner message input code 1995-03-03 01:37:22 +00:00
cgd f877346baf don't reset the chip when setting paramters 1995-03-03 01:36:38 +00:00
cgd 504990e332 fill up device switches, clean up a couple of mistakes. 1995-02-27 16:36:07 +00:00
cgd 4594aa0317 and with 0x1fff, rather than 0x1000 1995-02-16 02:36:35 +00:00
cgd 85854cb4ad preliminary Alpha support. note that NOT ALL OF THE MODIFICATIONS TO
THE REST OF THE KERNEL ARE IN THE TREE YET.  Also, some of this is
_incredibly_ hack-ish, etc., but it works.
1995-02-13 23:06:39 +00:00