Home | History | Annotate | Download | only in ic
History log of /src/sys/dev/ic/ncr53c9xvar.h
RevisionDateAuthorComments
 1.58  06-Dec-2024  andvar s/suggesion/suggestion/ in comment.
 1.57  01-Jan-2022  andvar fix typos in comments, mainly basicly -> basically.
 1.56  25-Mar-2014  christos kill sprintf
 1.55  31-Jul-2011  jakllsch branches: 1.55.2; 1.55.12; 1.55.16;
simple_lock to mutex conversion.
 1.54  07-Sep-2009  tsutsui Whitespace nits.
 1.53  02-Sep-2009  tsutsui Some backends may use ncr53c9x_abort(), so remove static declaration from
the function and explicitly declare it in ncr53c9xvar.h. Noticed by he@.
 1.52  12-May-2009  cegger struct device * -> device_t, no functional changes intended.
 1.51  28-Apr-2008  martin branches: 1.51.14;
Remove clause 3 and 4 from TNF licenses
 1.50  13-Apr-2008  tsutsui branches: 1.50.2; 1.50.4;
Split device_t/softc for MI ncr53c9x and some related devices,
with various cleanup.
 1.49  04-Jan-2008  ad branches: 1.49.6;
Start detangling lock.h from intr.h. This is likely to cause short term
breakage, but the mess of dependencies has been regularly breaking the
build recently anyhow.
 1.48  04-Mar-2007  christos branches: 1.48.16; 1.48.22; 1.48.28;
Kill caddr_t; there will be some MI fallout, but it will be fixed shortly.
 1.47  11-Dec-2005  christos branches: 1.47.26;
merge ktrace-lwp.
 1.46  04-Feb-2005  perry branches: 1.46.6;
de-__P
 1.45  07-Dec-2004  thorpej branches: 1.45.2; 1.45.4;
Use "struct scsipi_command" in internal command structures so that
we have enough space for 16-byte CDBs.
 1.44  10-Aug-2004  mycroft Constify.
 1.43  02-Nov-2003  wiz Fix some typos. From Tom Cosgrove via jmc@openbsd.
 1.42  24-Mar-2003  pk branches: 1.42.2;
#include <sys/lock.h>
 1.41  04-Feb-2003  pk Make this driver MP-safe by using a single spin lock to guard all its entrances.
 1.40  06-Jan-2003  matt Add multiple inclusion protection.
 1.39  22-Oct-2002  petrov Correct typo in comment(pointed by john heasley <heas@shrubbery.net>).
 1.38  25-Sep-2002  mycroft Additional fixes to make 16 targets work on FAS366.
 1.37  26-Aug-2002  petrov Accept WDTR from device(based on John Heasley patch for SCSI3 drive).
Do not define NCR53C9X_DEBUG.
 1.36  26-Aug-2002  petrov Dispose unused tinfo flags.
 1.35  03-Dec-2001  jdolecek branches: 1.35.8; 1.35.10;
add NCR_VARIANT_NCR53C90_86C01 "NCR53C90 (86C01)"
treat exactly like NCR_VARIANT_ESP100
 1.34  10-Nov-2001  perry trivially rename some macro parameters to avoid lint warnings.
 1.33  25-Apr-2001  bouyer branches: 1.33.2; 1.33.6;
Pull up the thorpej_scsipi branch to main branch.
This is a completely rewritten scsipi_xfer execution engine, and the
associated changes to HBA drivers. Overview of changes & features:
- All xfers are queued in the mid-layer, rather than doing so in an
ad-hoc fashion in individual adapter drivers.
- Adapter/channel resource management in the mid-layer, avoids even trying
to start running an xfer if the adapter/channel doesn't have the resources.
- Better communication between the mid-layer and the adapters.
- Asynchronous event notification mechanism from adapter to mid-layer and
peripherals.
- Better peripheral queue management: freeze/thaw, sorted requeueing during
recovery, etc.
- Clean separation of peripherals, adapters, and adapter channels (no more
scsipi_link).
- Kernel thread for each scsipi_channel makes error recovery much easier
(no more dealing with interrupt context when recovering from an error).
- Mid-layer support for tagged queueing: commands can have the tag type
set explicitly, tag IDs are allocated in the mid-layer (thus eliminating
the need to use buggy tag ID allocation schemes in many adapter drivers).
- support for QUEUE FULL and CHECK CONDITION status in mid-layer; the command
will be requeued, or a REQUEST SENSE will be sent as appropriate.

Just before the merge syssrc has been tagged with thorpej_scsipi_beforemerge
 1.32  21-Apr-2001  tsutsui Clean up ncr53c9x_select():
- Define NCR_F_SELATN3 for sc_features and use it to check if the chip
supports SELATN3 command
- Make conditions of sending messages a bit simpler.
 1.31  29-Mar-2001  petrov fas support added
 1.30  19-Jan-2001  eeh branches: 1.30.2;
Use the SCSIACCEL ioctl() to turn on TAG QUEUEs.
 1.29  20-Dec-2000  eeh Make the driver negotiate sync again and remove some (hopefully) superfluous
DELAY()s.
 1.28  17-Dec-2000  eeh Make sure bits in the flags are disjoint.
 1.27  30-Nov-2000  pk KNF patrol && De-__P().
 1.26  30-Nov-2000  eeh Add TAG QUEUE support to the ncr53c9x driver.
 1.25  13-Nov-2000  pk Define ncr53c9x_ioctl() and use it to start sync negotiation.
 1.24  05-Jun-2000  nisimura Have MI ncr53c9x_attach() the 2nd and 3rd arguments for scsipi_adater
and scsipi_device respectively, with size reduction of ncr53c9x_softc.
Specifying NULL instructs the driver to use default adapter and default
device codes. Every target port has ncr53c9x_attach(sc, NULL, NULL) anyway.
 1.23  29-Mar-2000  simonb branches: 1.23.2;
Remove duplicate ncr53c9x_dmaselect declaration.
 1.22  19-Mar-2000  mycroft For the ESP406/FAS408, add sc_cfg4 and sc_cfg5.
Add a detach routine, and do the addref/delref.
 1.21  18-Mar-2000  mycroft Expose ncr53c9x_init().
 1.20  18-Mar-2000  mycroft Adjust ncr53c9x_intr() prototype.
 1.19  07-Jan-2000  nisimura Remove tinfo_t symbols which result in never used global common variables.
 1.18  22-Sep-1999  mhitch branches: 1.18.2;
Define config register 3 values for NCR53C9x/FAS216.

Add sc_cfg3_fscsi to the softc and use it to set the chip into Fast SCSI
mode for the chips that use it.
 1.17  06-Jan-1999  thorpej branches: 1.17.2;
Changes to NCR53c9x driver necessary to add support for the AMD Am53c974
PCscsi-PCI SCSI controller. From Izumi Tsutsui, PR #6654.
 1.16  19-Nov-1998  thorpej Adapt to the new scsipi_adapter interface.
 1.15  01-Sep-1998  pk Adjust some comments.
 1.14  01-Sep-1998  jeremy Changed inaccurate comment on the sc_freq member of the driver's softc
structure. The frequency is represented in MHz rather than Hz. [PR/6805]
 1.13  26-May-1998  thorpej If we have an NCR53CF9x (indicated by the front-end by setting a flag
in the softc's new "features" word), set FSCSI bit in CFG3 if the sync
period is <= 200ns, or clear it otherwise.
 1.12  04-May-1998  pk Allocate SCSI message buffers in ncr53c9x_attach(), with a provision
for front-ends to override the allocation to avoid alignment
handling in their DMA engines. Note that that ncr53c9x_msgout()
can request a 1 byte DMA transfer that would be difficult to break up.
 1.11  05-Oct-1997  thorpej branches: 1.11.2;
Copyright assigned to The NetBSD Foundation.
 1.10  04-Oct-1997  mhitch Add yet another chip variant: FAS216, used by the amiga Phase5 SCSI boards.
 1.9  27-Aug-1997  bouyer Merge scsipi branch in the mainline. This add support for ATAPI devices
(currently only CD-ROM drives on i386). The sys/dev/scsipi system provides 2
busses to which devices can attach (scsibus and atapibus). This needed to
change some include files and structure names in the low level scsi drivers.
 1.8  30-Jul-1997  pk Maintain a copy of the configuration flags in our `softc'.
 1.7  20-Jul-1997  pk branches: 1.7.2;
Declare `ncr53c9x_dmaselect'.
 1.6  01-May-1997  pk branches: 1.6.2;
Preliminary support for ESP406 and FAS408 variants (from Eric Hvodza; PR#3559)
 1.5  27-Apr-1997  pk Implement target selection using DMA.
To allow a period of testing the variable `ncr53c9x_dmaselect' is used to
enable this feature (default is 0, i.e. the old behaviour).
 1.4  01-Apr-1997  gwr Allow separate control over the "per-target trace" feature
via the NCR53C9X_DEBUG value. Add some padding for m68k.
 1.3  15-Mar-1997  is 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.
 1.2  27-Feb-1997  briggs branches: 1.2.2;
Add the 53c96 variant.
 1.1  27-Feb-1997  thorpej Machine-independent NCR 53c9x SCSI driver, derived from the SPARC/Alpha
versions. Thanks to Chris Demetrious and Paul Krannenburg for the
initial work towards merging the two.
 1.2.2.2  12-Mar-1997  is Merge in changes from Trunk
 1.2.2.1  27-Feb-1997  is file ncr53c9xvar.h was added on branch is-newarp on 1997-03-12 21:22:54 +0000
 1.6.2.5  27-Aug-1997  bouyer Get this compile on sparc.
 1.6.2.4  14-Aug-1997  bouyer Sync with trunk.
 1.6.2.3  30-Jul-1997  bouyer Sync with trunk.
 1.6.2.2  22-Jul-1997  bouyer Sync with trunk.
 1.6.2.1  01-Jul-1997  bouyer Updates for new scsipi subsystem. Actally known to work on i386 and sparc.
 1.7.2.3  14-Oct-1997  thorpej Update marc-pcmcia branch from trunk.
 1.7.2.2  27-Aug-1997  thorpej Update marc-pcmcia branch from trunk.
 1.7.2.1  23-Aug-1997  thorpej Update marc-pcmcia branch from trunk.
 1.11.2.1  18-Jan-1999  cgd pull up rev 1.12 from trunk (PR#5180). (pk)
 1.17.2.1  04-Dec-1999  he Pull up revision 1.18 (requested by mhitch):
Fix the problems in detecting the clock speed on the TCDS Dual
SCSI Option cards, and correctly configure the Fast SCSI interfaces.
This allows installation on the 3000/500 -> 3000/900 Alphas which
have the Fast SCSI interface on the on-board SCSI adapters.
 1.18.2.9  23-Apr-2001  bouyer Sync with HEAD.
 1.18.2.8  21-Apr-2001  bouyer Sync with HEAD
 1.18.2.7  11-Feb-2001  bouyer Sync with HEAD.
 1.18.2.6  05-Jan-2001  bouyer Sync with HEAD
 1.18.2.5  16-Dec-2000  bouyer Gives a single-bit flag for T_TAGOFF.
Report tagged-queuing support to upper layer, so that tagged queuing is
really used. Report QUEUE FULL events to upper layer. Bup per-target
openings to 256 as the driver supports it. Fix handling of T_SYNCOFF.
 1.18.2.4  08-Dec-2000  bouyer Sync with HEAD.
 1.18.2.3  22-Nov-2000  bouyer Sync with HEAD.
 1.18.2.2  20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.18.2.1  19-Oct-1999  thorpej Adapt to scsipi API changes.
 1.23.2.1  22-Jun-2000  minoura Sync w/ netbsd-1-5-base.
 1.30.2.8  07-Jan-2003  thorpej Sync with HEAD.
 1.30.2.7  11-Nov-2002  nathanw Catch up to -current
 1.30.2.6  18-Oct-2002  nathanw Catch up to -current.
 1.30.2.5  27-Aug-2002  nathanw Catch up to -current.
 1.30.2.4  08-Jan-2002  nathanw Catch up to -current.
 1.30.2.3  14-Nov-2001  nathanw Catch up to -current.
 1.30.2.2  21-Jun-2001  nathanw Catch up to -current.
 1.30.2.1  09-Apr-2001  nathanw Catch up with -current.
 1.33.6.1  12-Nov-2001  thorpej Sync the thorpej-mips-cache branch with -current.
 1.33.2.3  10-Oct-2002  jdolecek sync kqueue with -current; this includes merge of gehenna-devsw branch,
merge of i386 MP branch, and part of autoconf rototil work
 1.33.2.2  06-Sep-2002  jdolecek sync kqueue branch with HEAD
 1.33.2.1  10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.35.10.1  22-Nov-2002  tron Pull up revision 1.36-1.39 (requested by martin in ticket #948):
Additional fixes to make 16 targets work on FAS366.
 1.35.8.1  29-Aug-2002  gehenna catch up with -current.
 1.42.2.6  04-Feb-2005  skrll Sync with HEAD.
 1.42.2.5  18-Dec-2004  skrll Sync with HEAD.
 1.42.2.4  21-Sep-2004  skrll Fix the sync with head I botched.
 1.42.2.3  18-Sep-2004  skrll Sync with HEAD.
 1.42.2.2  12-Aug-2004  skrll Sync with HEAD.
 1.42.2.1  03-Aug-2004  skrll Sync with HEAD
 1.45.4.1  12-Feb-2005  yamt sync with head.
 1.45.2.1  29-Apr-2005  kent sync with -current
 1.46.6.2  21-Jan-2008  yamt sync with head
 1.46.6.1  03-Sep-2007  yamt sync with head.
 1.47.26.1  12-Mar-2007  rmind Sync with HEAD.
 1.48.28.1  08-Jan-2008  bouyer Sync with HEAD
 1.48.22.1  18-Feb-2008  mjf Sync with HEAD.
 1.48.16.1  09-Jan-2008  matt sync with HEAD
 1.49.6.1  02-Jun-2008  mjf Sync with HEAD.
 1.50.4.3  16-Sep-2009  yamt sync with head
 1.50.4.2  16-May-2009  yamt sync with head
 1.50.4.1  16-May-2008  yamt sync with head.
 1.50.2.1  18-May-2008  yamt sync with head.
 1.51.14.1  13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.55.16.1  18-May-2014  rmind sync with head
 1.55.12.1  20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.55.2.1  22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")

RSS XML Feed