Commit Graph

64 Commits

Author SHA1 Message Date
Justin T. Gibbs 6d1dd577f3 Add tagged queueing support. Right now, we only allow two tagged
commands per target.  I could have followed the route of the ncr driver
and gone to great lengths to get the SCSI subsystem to support more, but
I think I'll use the time saved to help Julian and Peter make tagged
queuing a better handled generic feature.  This also includes some comment
and enum clean up and a possible fix for the hanging PCI controllers.
1995-02-22 01:43:25 +00:00
Justin T. Gibbs cfa2e9e703 Keep track of when we actually are awaiting a reply to an SDTR or WDTR
message instead of relying on the fact that we are scheduled to send them.
The old method worked 99.9% of the time, but someone reported some periferals
that did MSG_REJECT at odd times (sometimes before we could send an SDTR
or WDTR) that we would construe as the response to an SDTR or WDTR message.
This also removes a possible race condition where after a bus reset (the
result of a command time out not during intial probe time), we might queue
two commands both requesting SDTR, WDTR or both.
1995-02-03 17:15:12 +00:00
Justin T. Gibbs b11c81e076 Set the current transfer parameters directly after a mesg reject for either
Wide or Sync negotiation attempts as we do in all other phases of negotiation.
1995-01-27 17:37:05 +00:00
Justin T. Gibbs bd524f1b07 Initialize SIMODE1, SCSIID, and SXFRCTL1 in ahc_init instead of at each
reconnection/selection with a target.
1995-01-22 00:48:39 +00:00
Justin T. Gibbs 87cf6d44c7 Add $Ids. Use DMA for downloading SCBs to the sequencer. Implement SDTR,
WDTR, and message reject handlers so they don't need to exist in the
sequencer.  All three of these cases are not on the critical path, so it
makes little sense to use up precious sequencer ram for them.
1995-01-16 16:33:47 +00:00
Justin T. Gibbs 01ce9c8620 Point include to i386/scsi 1995-01-13 02:27:08 +00:00
Justin T. Gibbs deefdf55f5 Generic support for the entire aic7x70 line of adaptors. No one else
came up with a directory place ment more me, so now we have i386/scsi.
1995-01-13 02:24:31 +00:00
Justin T. Gibbs 53a69701bc Handle both channels of Twin channeled devices. Respect the configuration
values for syncronous negotiation.  The 284x series adaptors can now be
supported without the Bios being enabled.  If you disable the Bios on the
274x series adaptors, all configuration parameters revert to the default
since there is no way to retrieve them.
1994-12-31 19:31:56 +00:00
Justin T. Gibbs c21818c866 Put the sequencer into FASTMODE during initialization. I can now
get up to 8m/sec write performance out of a pd2100 with this driver.
1994-11-29 23:06:54 +00:00
Andreas Schulz e4c5063e0b Changed the MAX_SLOTS constant from 8 to 16. The EISA bus can have up
to 16 slots.
1994-11-25 22:25:15 +00:00
Justin T. Gibbs 88d9617c20 Register with devconfg so we show up in lsdev. 1994-11-18 20:34:30 +00:00
Justin T. Gibbs 771c42f405 Change the include for the sequencer program to point back to the
right place:

include "../../sys/gnu/misc/aic7770/aic7770_seq.h"
1994-11-18 09:14:14 +00:00
Jordan K. Hubbard 1bb8699814 Whoops - this one's my fault. Put back my changes for seqprog[]. 1994-11-18 09:03:09 +00:00
Justin T. Gibbs 09faa0cc64 My port of Julian's 1742 driver to work with the Linux aic7770 sequencer
code.
1994-11-17 20:22:31 +00:00