Commit Graph

260 Commits

Author SHA1 Message Date
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
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
pk
2f3ec93250 Various cleanup; mostly trailing spaces/tabs. 1996-03-31 22:38:29 +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
fc8683fbaa Eliminate random warnings. 1996-03-29 00:24:58 +00:00
mycroft
15fd04d5a4 Really implement ahcprint(). 1996-03-28 22:39:08 +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
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
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
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
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
thorpej
3cd14f7597 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 02:00:30 +00:00
thorpej
5c67e5fad9 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:16:48 +00:00
thorpej
6d9ea4cf59 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 00:43:52 +00:00
christos
bca6f430a9 Make operator precedence explicit by parethesizing. 1996-03-16 23:19:14 +00:00
christos
03b701e393 Bring prototypes into scope and fix compiler warnings. 1996-03-14 19:44:30 +00:00
christos
e023a87a11 Bring prototypes into scope. 1996-03-14 19:05:07 +00:00
cgd
68b00a8e52 RCS Id police 1996-03-14 02:30:30 +00:00
thorpej
94fc5cf4ce Resolve conflicts from merge. 1996-03-11 21:41:28 +00:00
thorpej
2e4812fa65 New snapshot of DEC PDQ-based FDDI driver, from Matt Thomas. 1996-03-11 21:04:02 +00:00
cgd
85286bff2f convert these to use new <machine/bus.h> interfaces. This involved
substantial reworking of the multi-port drivers, as they need to frob
bits in the io-port spaces of their children.  As a result, the
commulti->com attachment interface is substantially more complex.
(This may be fixable in the future by making some of the code common,
but as long as io-port allocation checking is planned, it's necessary.)
1996-03-10 09:01:20 +00:00
cgd
5bfb840114 Fix copyright year 1996-03-09 23:37:14 +00:00
thorpej
f350b1aa9d Fill in the missing pieces and make the NetBSD version of Matt Thomas's
DEFPA FDDI driver actually compile and link.
1996-03-09 03:46:21 +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
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
christos
d318abdbc4 prototypes for ccd audio and ncr5380 1996-03-07 15:00:07 +00:00
mycroft
97fbc0015b Add bit definition for auto-initialize mode. 1996-03-01 22:27:09 +00:00
gwr
950eda2d54 Replace DEBUG with NCR5380_DEBUG and do not define it by default. 1996-03-01 01:42:04 +00:00
gwr
92d99153a3 Kill two mis-matched and unnecessary declarations. 1996-02-28 01:44:17 +00:00
scottr
4005c5fd09 Fix typo (PR 2123, from Michael VanLoon) 1996-02-26 22:48:32 +00:00
cgd
5a1e1bb682 don't need isa/isareg.h or pci/pci{reg,var}.h. 1996-02-25 22:56:30 +00:00
pk
3d182fe265 Use CPU-type macros 1996-02-25 21:53:49 +00:00
gwr
012b23ca17 fix a trace message 1996-02-22 04:06:03 +00:00
gwr
a19a024e59 Do not mark target/LUN busy until we commit to working with it,
after the check for reselections.  (From Matthias Pfaller, PR 2105)
Also improve the selection code WRT concurrent reselection.
1996-02-22 03:10:47 +00:00
mycroft
a35f0ac985 Add more debugging code. 1996-02-20 12:13:09 +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
pk
b9de283ae6 Fix typo; pointed out by jtk. 1996-02-19 10:30:09 +00:00
gwr
e9d6e59c62 Fix two bugs found by Bill Studenmund:
Driver can not use tp->t_sc for its own purposes
Attach should take the unit number from _dev.dv_unit
1996-02-19 04:34:01 +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
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
mycroft
9cbadb3ec2 Remove incorrect comment. From Mike Long, PR 1277. 1996-02-16 08:12:33 +00:00
christos
ee08b72ef4 Hayes ESP register definition 1996-02-10 20:23:40 +00:00