xref: /openbmc/linux/Documentation/scsi/ChangeLog.sym53c8xx (revision 9a87ffc99ec8eb8d35eed7c4f816d75f5cc9662e)
11da177e4SLinus TorvaldsSat May 12 12:00 2001 Gerard Roudier (groudier@club-internet.fr)
21da177e4SLinus Torvalds	* version sym53c8xx-1.7.3c
31da177e4SLinus Torvalds	- Ensure LEDC bit in GPCNTL is cleared when reading the NVRAM.
41da177e4SLinus Torvalds	  Fix sent by Stig Telfer <stig@api-networks.com>.
51da177e4SLinus Torvalds	- Backport from SYM-2 the work-around that allows to support
61da177e4SLinus Torvalds	  hardwares that fail PCI parity checking.
71da177e4SLinus Torvalds	- Check that we received at least 8 bytes of INQUIRY response
81da177e4SLinus Torvalds	  for byte 7, that contains device capabilities, to be valid.
91da177e4SLinus Torvalds	- Define scsi_set_pci_device() as nil for kernel < 2.4.4.
101da177e4SLinus Torvalds	- + A couple of minor changes.
111da177e4SLinus Torvalds
121da177e4SLinus TorvaldsSat Apr 7 19:30 2001 Gerard Roudier (groudier@club-internet.fr)
131da177e4SLinus Torvalds	* version sym53c8xx-1.7.3b
141da177e4SLinus Torvalds	- Fix an unaligned LOAD from scripts (was used as dummy read).
151da177e4SLinus Torvalds	- In ncr_soft_reset(), only try to ABORT the current operation
161da177e4SLinus Torvalds	  for chips that support SRUN bit in ISTAT1 and if SCRIPTS are
171da177e4SLinus Torvalds	  currently running, as 896 and 1010 manuals suggest.
181da177e4SLinus Torvalds	- In the CCB abort path, do not assume that the CCB is currently
191da177e4SLinus Torvalds	  queued to SCRIPTS. This is not always true, notably after a
201da177e4SLinus Torvalds	  QUEUE FULL status or when using untagged commands.
211da177e4SLinus Torvalds
221da177e4SLinus TorvaldsSun Mar 4 18:30 2001 Gerard Roudier (groudier@club-internet.fr)
231da177e4SLinus Torvalds	* version sym53c8xx-1.7.3a
241da177e4SLinus Torvalds	- Fix an issue in the ncr_int_udc() (unexpected disconnect)
251da177e4SLinus Torvalds	  handling. If the DSA didn't match a CCB, a bad write to
261da177e4SLinus Torvalds	  memory could happen.
271da177e4SLinus Torvalds
281da177e4SLinus TorvaldsMon Feb 12 22:30 2001 Gerard Roudier (groudier@club-internet.fr)
291da177e4SLinus Torvalds	* version sym53c8xx-1.7.3
301da177e4SLinus Torvalds	- Support for hppa.
311da177e4SLinus Torvalds	  Tiny patch sent to me by Robert Hirst.
321da177e4SLinus Torvalds	- Tiny patch for ia64 sent to me by Pamela Delaney.
331da177e4SLinus Torvalds
341da177e4SLinus TorvaldsTue Feb 6 13:30 2001 Gerard Roudier (groudier@club-internet.fr)
351da177e4SLinus Torvalds	* version sym53c8xx-1.7.3-pre1
361da177e4SLinus Torvalds	- Call pci_enable_device() as AC wants this to be done.
371da177e4SLinus Torvalds	- Get both the BAR cookies used by CPU and actual PCI BAR
381da177e4SLinus Torvalds	  values used from SCRIPTS. Recent PCI chips are able to
391da177e4SLinus Torvalds	  access themselves using internal cycles, but they compare
401da177e4SLinus Torvalds	  BAR values to destination address to make decision.
411da177e4SLinus Torvalds	  Earlier chips simply use PCI transactions to access IO
421da177e4SLinus Torvalds	  registers from SCRIPTS.
431da177e4SLinus Torvalds	  The bus_dvma_to_mem() interface that reverses the actual
441da177e4SLinus Torvalds	  PCI BAR value from the BAR cookie is now useless.
451da177e4SLinus Torvalds	  This point had been discussed at the list and the solution
461da177e4SLinus Torvalds	  got approved by PCI code maintainer (Martin Mares).
471da177e4SLinus Torvalds	- Merge changes for linux-2.4 that declare the host template
481da177e4SLinus Torvalds	  in the driver object also when the driver is statically
491da177e4SLinus Torvalds	  linked with the kernel.
501da177e4SLinus Torvalds	- Increase SCSI message size up to 12 bytes, given that 8
511da177e4SLinus Torvalds	  bytes was not enough for the PPR message (fix).
521da177e4SLinus Torvalds	- Add field 'maxoffs_st' (max offset for ST data transfers).
531da177e4SLinus Torvalds	  The C1010 supports offset 62 in DT mode but only 31 in
541da177e4SLinus Torvalds	  ST mode, to 2 different values for the max SCSI offset
551da177e4SLinus Torvalds	  are needed. Replace the obviously wrong masking of the
561da177e4SLinus Torvalds	  offset against 0x1f for ST mode by a lowering to
571da177e4SLinus Torvalds	  maxoffs_st of the SCSI offset in ST mode.
581da177e4SLinus Torvalds	- Refine a work-around for the C1010-66. Revision 1 does
591da177e4SLinus Torvalds	  not requires extra cycles in DT DATA OUT phase.
601da177e4SLinus Torvalds	- Add a missing endian-ization (abrt_tbl.addr).
611da177e4SLinus Torvalds	- Minor clean-up in the np structure for fields accessed
621da177e4SLinus Torvalds	  from SCRIPTS that requires special alignments.
631da177e4SLinus Torvalds
641da177e4SLinus TorvaldsSun Sep 24 21:30 2000 Gerard Roudier (groudier@club-internet.fr)
651da177e4SLinus Torvalds	* version sym53c8xx-1.7.2
661da177e4SLinus Torvalds	- Remove the hack for PPC added in previous driver version.
671da177e4SLinus Torvalds	- Add FE_DAC feature bit to distinguish between 64 bit PCI
681da177e4SLinus Torvalds	  addressing (FE_DAC) and 64 bit PCI interface (FE_64BIT).
691da177e4SLinus Torvalds	- Get rid of the boot command line "ultra:" argument.
701da177e4SLinus Torvalds	  This parameter wasn't that clever since we can use "sync:"
711da177e4SLinus Torvalds	  for Ultra/Ultra2 settings, and for Ultra3 we may want to
721da177e4SLinus Torvalds	  pass PPR options (for now only DT clocking).
731da177e4SLinus Torvalds	- Add FE_VARCLK feature bit that indicates that SCSI clock
741da177e4SLinus Torvalds	  frequency may vary depending on board design and thus,
751da177e4SLinus Torvalds	  the driver should try to evaluate the SCSI clock.
761da177e4SLinus Torvalds	- Simplify the way the driver determine the SCSI clock:
771da177e4SLinus Torvalds	  ULTRA3 -> 160 MHz, ULTRA2 -> 80 MHz otherwise 40 MHz.
781da177e4SLinus Torvalds	  Measure the SCSI clock frequency if FE_VARCLK is set.
791da177e4SLinus Torvalds	- Remove FE_CLK80 feature bit that got useless.
801da177e4SLinus Torvalds	- Add support for the SYM53C875A (Pamela Delaney).
811da177e4SLinus Torvalds
821da177e4SLinus TorvaldsWed Jul 26 23:30 2000 Gerard Roudier (groudier@club-internet.fr)
831da177e4SLinus Torvalds	* version sym53c8xx-1.7.1
848b5b8f4cSNick Andrew	- Provide OpenFirmware path through the proc FS on PPC.
851da177e4SLinus Torvalds	- Download of on-chip SRAM using memcpy_toio() doesn't work
861da177e4SLinus Torvalds	  on PPC. Restore previous method (MEMORY MOVE from SCRIPTS).
871da177e4SLinus Torvalds	- Remove trailing argument #2 from a couple of #undefs.
881da177e4SLinus Torvalds
891da177e4SLinus TorvaldsSun Jul 09 16:30 2000 Gerard Roudier (groudier@club-internet.fr)
901da177e4SLinus Torvalds	* version sym53c8xx-1.7.0
911da177e4SLinus Torvalds	- Remove the PROFILE C and SCRIPTS code.
921da177e4SLinus Torvalds	  This facility was not this useful and thus was not longer
931da177e4SLinus Torvalds	  desirable given the increasing complexity of the driver code.
941da177e4SLinus Torvalds	- Merges from FreeBSD sym-1.6.2 driver:
951da177e4SLinus Torvalds	  * Clarify memory barriers needed by the driver for architectures
961da177e4SLinus Torvalds	    that implement a weak memory ordering.
971da177e4SLinus Torvalds	  * Simpler handling of illegal phases and data overrun from
981da177e4SLinus Torvalds	    SCRIPTS. These errors are now immediately reported to
991da177e4SLinus Torvalds	    the C code by an interrupt.
1001da177e4SLinus Torvalds	  * Sync the residual handling code with sym-1.6.2 and now
1011da177e4SLinus Torvalds	    report `resid' to user for linux version >= 2.3.99
1021da177e4SLinus Torvalds	- General cleanup:
1031da177e4SLinus Torvalds	  Move definitions for barriers and IO/MMIO operations to the
1041da177e4SLinus Torvalds	  sym53c8xx_defs.h header files. They are now shared by the
1051da177e4SLinus Torvalds	  both drivers.
1061da177e4SLinus Torvalds	  Remove unused options that claimed to optimize for the 896.
1071da177e4SLinus Torvalds	  If fact, they were not this clever. :)
1081da177e4SLinus Torvalds	  Use SCSI_NCR_IOMAPPED instead of NCR_IOMAPPED.
1091da177e4SLinus Torvalds	  Remove a couple of unused fields from data structures.
1101da177e4SLinus Torvalds
1111da177e4SLinus TorvaldsThu May 11 12:40 2000 Pam Delaney (pam.delaney@lsil.com)
1121da177e4SLinus Torvalds	* version sym53c8xx-1.6b
1131da177e4SLinus Torvalds	- Merged version.
1141da177e4SLinus Torvalds
1151da177e4SLinus TorvaldsMon Apr 24 12:00 2000 Gerard Roudier (groudier@club-internet.fr)
1161da177e4SLinus Torvalds	* version sym53c8xx-1.5m
1171da177e4SLinus Torvalds	- Return value 1 (instead of 0) from the driver setup routine.
1181da177e4SLinus Torvalds	- Do not enable PCI DAC cycles. This just broke support for
1191da177e4SLinus Torvalds	  SYM534C896 on sparc64. Problem fixed by David S. Miller.
1201da177e4SLinus Torvalds
1211da177e4SLinus TorvaldsFri Apr 14 9:00 2000 Pam Delaney (pam.delaney@lsil.com)
1221da177e4SLinus Torvalds	* version sym53c8xx-1.6b-9
1231da177e4SLinus Torvalds	- Added 53C1010_66 support.
1241da177e4SLinus Torvalds	- Small fix to integrity checking code.
1251da177e4SLinus Torvalds	- Removed requirement for integrity checking if want to run
1261da177e4SLinus Torvalds	  at ultra 3.
1271da177e4SLinus Torvalds
1281da177e4SLinus TorvaldsSat Apr 1  12:00 2000 Gerard Roudier (groudier@club-internet.fr)
1291da177e4SLinus Torvalds	* version sym53c8xx-1.5l
1301da177e4SLinus Torvalds	- Tiny change for __sparc__ appeared in 2.3.99-pre4.1 that
1311da177e4SLinus Torvalds	  applies to cache line size (? Probably from David S Miller).
1321da177e4SLinus Torvalds	- Make sure no data transfer will happen for Scsi_Cmnd requests
1331da177e4SLinus Torvalds	  that supply SCSI_DATA_NONE direction (this avoids some BUG()
1341da177e4SLinus Torvalds	  statement in the PCI code when a data buffer is also supplied).
1351da177e4SLinus Torvalds
1361da177e4SLinus TorvaldsSat Mar 11 12:00 2000 Gerard Roudier (groudier@club-internet.fr)
1371da177e4SLinus Torvalds	* version sym53c8xx-1.6b-5
1381da177e4SLinus Torvalds	- Test against expected data transfer direction from SCRIPTS.
1391da177e4SLinus Torvalds	- Add support for the new dynamic dma mapping kernel interface.
1401da177e4SLinus Torvalds	  Requires Linux-2.3.47 (tested with pre-2.3.47-6).
1411da177e4SLinus Torvalds	  Many thanks to David S. Miller for his preliminary changes
1421da177e4SLinus Torvalds	  that have been useful guidelines.
1431da177e4SLinus Torvalds	- Get data transfer direction from the scsi command structure
1441da177e4SLinus Torvalds	  (Scsi_Cmnd) with kernels that provide this information.
1451da177e4SLinus Torvalds
1461da177e4SLinus TorvaldsMon Mar  6 23:30 2000 Gerard Roudier (groudier@club-internet.fr)
1471da177e4SLinus Torvalds	* version sym53c8xx-1.5k
1481da177e4SLinus Torvalds	- Test against expected data transfer direction from SCRIPTS.
1491da177e4SLinus Torvalds	- Revert the change in 'ncr_flush_done_cmds()' but unmap the
1501da177e4SLinus Torvalds	  scsi dma buffer prior to queueing the command to our done
1511da177e4SLinus Torvalds	  list.
1521da177e4SLinus Torvalds	- Miscellaneous (minor) fixes in the code added in driver
1531da177e4SLinus Torvalds	  version 1.5j.
1541da177e4SLinus Torvalds
1551da177e4SLinus TorvaldsMon Feb 14 4:00 2000 Pam Delaney (pam.delaney@lsil.com)
1561da177e4SLinus Torvalds 	* version sym53c8xx-pre-1.6b-2.
1571da177e4SLinus Torvalds	- Updated the SCRIPTS error handling of the SWIDE
1581da177e4SLinus Torvalds	  condition - to remove any reads of the sbdl
1591da177e4SLinus Torvalds	  register. Changes needed because the 896 and 1010
1601da177e4SLinus Torvalds	  chips will check parity in some special circumstances.
1611da177e4SLinus Torvalds	  This will cause a parity error interrupt if not in
1621da177e4SLinus Torvalds	  data phase.  Changes based on those made in the
1631da177e4SLinus Torvalds	  FreeBSD driver version 1.3.2.
1641da177e4SLinus Torvalds
1651da177e4SLinus TorvaldsSun Feb 20 11:00 2000 Gerard Roudier (groudier@club-internet.fr)
1661da177e4SLinus Torvalds	* version sym53c8xx-1.5j
1671da177e4SLinus Torvalds	- Add support for the new dynamic dma mapping kernel interface.
1681da177e4SLinus Torvalds	  Requires Linux-2.3.47 (tested with pre-2.3.47-6).
1691da177e4SLinus Torvalds	  Many thanks to David S. Miller for his preliminary changes
1701da177e4SLinus Torvalds	  that have been useful guidelines, for having reviewed the
1711da177e4SLinus Torvalds	  code and having tested this driver version on Ultra-Sparc.
1721da177e4SLinus Torvalds	- 2 tiny bugs fixed in the PCI wrapper that provides support
1731da177e4SLinus Torvalds	  for early kernels without pci device structure.
1741da177e4SLinus Torvalds	- Get data transfer direction from the scsi command structure
1751da177e4SLinus Torvalds	  (Scsi_Cmnd) with kernels that provide this information.
1761da177e4SLinus Torvalds	- Fix an old bug that only affected 896 rev. 1 when driver
1771da177e4SLinus Torvalds	  profile support option was set in kernel configuration.
1781da177e4SLinus Torvalds
1791da177e4SLinus TorvaldsFri Jan 14 14:00 2000 Pam Delaney (pam.delaney@lsil.com)
1801da177e4SLinus Torvalds 	* version sym53c8xx-pre-1.6b-1.
1811da177e4SLinus Torvalds	- Merge parallel driver series 1.61 and 1.5e
1821da177e4SLinus Torvalds
1831da177e4SLinus TorvaldsTue Jan 11 14:00 2000 Pam Delaney (pam.delaney@lsil.com)
1841da177e4SLinus Torvalds	* version sym53c8xx-1.61
1851da177e4SLinus Torvalds	- Added support for mounting disks on wide-narrow-wide
1861da177e4SLinus Torvalds	  scsi configurations.
1871da177e4SLinus Torvalds	- Modified offset to be a maximum of 31 in ST mode,
1881da177e4SLinus Torvalds	  62 in DT mode.
1891da177e4SLinus Torvalds	- Based off of 1.60
1901da177e4SLinus Torvalds
1911da177e4SLinus TorvaldsMon Jan 10 10:00 2000 Pam Delaney (pam.delaney@lsil.com)
1921da177e4SLinus Torvalds	* version sym53c8xx-1.60
1931da177e4SLinus Torvalds	- Added capability to use the integrity checking code
1941da177e4SLinus Torvalds	  in the kernel (optional).
1951da177e4SLinus Torvalds	-  Added PPR negotiation.
1961da177e4SLinus Torvalds	- Added support for 53C1010 Ultra 3 part.
1971da177e4SLinus Torvalds	- Based off of 1.5f
1981da177e4SLinus Torvalds
1991da177e4SLinus TorvaldsSat Jan 8  22:00 2000 Gerard Roudier (groudier@club-internet.fr)
2001da177e4SLinus Torvalds	* version sym53c8xx-1.5h
2011da177e4SLinus Torvalds	- Add year 2000 copyright.
2021da177e4SLinus Torvalds	- Display correctly bus signals when bus is detected wrong.
2031da177e4SLinus Torvalds	- Some fix for Sparc from DSM that went directly to kernel tree.
2041da177e4SLinus Torvalds
2051da177e4SLinus TorvaldsMon Dec 6  22:00 1999 Gerard Roudier (groudier@club-internet.fr)
2061da177e4SLinus Torvalds	* version sym53c8xx-1.5g
2071da177e4SLinus Torvalds	- Change messages written by the driver at initialisation and
2081da177e4SLinus Torvalds	  through the /proc FS (rather cosmetic changes that consist in
2091da177e4SLinus Torvalds	  printing out the PCI bus number and PCI device/function).
2101da177e4SLinus Torvalds	- Ensure the SCRIPTS processor is stopped while calibrating the
2111da177e4SLinus Torvalds	  SCSI clock (the initialisation code has been a bit reworked).
2121da177e4SLinus Torvalds	  Change moved to the FreeBSD sym_hipd driver).
2131da177e4SLinus Torvalds	- Some fixes in the MODIFY_DP/IGN_RESIDUE code and residual
2141da177e4SLinus Torvalds	  calculation (moved from FreeBSD sym_hipd driver).
2151da177e4SLinus Torvalds	- Add NVRAM support for Tekram boards that use 24C16 EEPROM.
2161da177e4SLinus Torvalds	  Code moved from the FreeBSD sym_hipd driver, since it has
2171da177e4SLinus Torvalds	  been that one that got this feature first.
2181da177e4SLinus Torvalds	- Definitely disable overlapped PCI arbitration for all dual
2191da177e4SLinus Torvalds	  function chips, since I cannot make sure for what chip revisions
2201da177e4SLinus Torvalds	  it is actually safe.
2211da177e4SLinus Torvalds	- Add support for the SYM53C1510D (also for ncr53c8xx).
2221da177e4SLinus Torvalds	- Fix up properly the PCI latency timer when needed or asked for.
2231da177e4SLinus Torvalds	- Get rid of the old PCI bios interface, but preserve kernel 2.0
2241da177e4SLinus Torvalds	  compatibility from a simple wrapper.
2251da177e4SLinus Torvalds	- Update the poor Tekram sync factor table.
2261da177e4SLinus Torvalds	- Fix in a tiny 'printk' bug that may oops in case of extended
2271da177e4SLinus Torvalds	  errors (unrecovered parity error, data overrun, etc ...)
2281da177e4SLinus Torvalds	  (Sent by Pamela Delaney from LSILOGIC)
2291da177e4SLinus Torvalds	- Remove the compilation condition about having to acquire the
2301da177e4SLinus Torvalds	  io_request_lock since it seems to be a definite feature now.:)
2311da177e4SLinus Torvalds	- Change get_pages by GetPages since Linux >= 2.3.27 now wants
2321da177e4SLinus Torvalds	  get_pages to ever be used as a kernel symbol (from 2.3.27).
2331da177e4SLinus Torvalds	- proc_dir structure no longer needed for kernel >= 2.3.27.
2341da177e4SLinus Torvalds
2351da177e4SLinus TorvaldsSun Oct  3  19:00 1999 Gerard Roudier (groudier@club-internet.fr)
2361da177e4SLinus Torvalds	* version sym53c8xx-1.5f
2371da177e4SLinus Torvalds	- Change the way the driver checks the PCI clock frequency, so
2381da177e4SLinus Torvalds	  that overclocked PCI BUS up to 48 MHz will not be refused.
2391da177e4SLinus Torvalds	  The more the BUS is overclocked, the less the driver will
2401da177e4SLinus Torvalds	  guarantee that its measure of the SCSI clock is correct.
2411da177e4SLinus Torvalds	- Backport some minor improvements of SCRIPTS from the sym_hipd
2421da177e4SLinus Torvalds	  driver.
2431da177e4SLinus Torvalds	- Backport the code rewrite of the START QUEUE dequeuing (on
2441da177e4SLinus Torvalds	  bad scsi status received) from the sym_hipd driver.
2451da177e4SLinus Torvalds
2461da177e4SLinus TorvaldsSat Sep 11  11:00 1999 Gerard Roudier (groudier@club-internet.fr)
2471da177e4SLinus Torvalds	* version sym53c8xx-1.5e
2481da177e4SLinus Torvalds	- New linux-2.3.13 __setup scheme support added.
2491da177e4SLinus Torvalds	- Cleanup of the extended error status handling:
2501da177e4SLinus Torvalds	  Use 1 bit per error type.
2511da177e4SLinus Torvalds	- Also save the extended error status prior to auto-sense.
2521da177e4SLinus Torvalds	- Add the FE_DIFF chip feature bit to indicate support of
2531da177e4SLinus Torvalds	  diff probing from GPIO3 (825/825A/876/875).
2541da177e4SLinus Torvalds	- Remove the quirk handling that has been useless since day one.
2551da177e4SLinus Torvalds	- Work-around PCI chips being reported twice on some platforms.
2561da177e4SLinus Torvalds	- Add some redundant PCI reads in order to deal with common
2571da177e4SLinus Torvalds	  bridge misbehaviour regarding posted write flushing.
258*685d5ef4SRandy Dunlap	- Add some other conditional code for people who have to deal
2591da177e4SLinus Torvalds	  with really broken bridges (they will have to edit a source
2601da177e4SLinus Torvalds	  file to try these options).
2611da177e4SLinus Torvalds	- Handle correctly (hopefully) jiffies wrap-around.
2621da177e4SLinus Torvalds	- Restore the entry used to detect 875 until revision 0xff.
2631da177e4SLinus Torvalds	  (I removed it inadvertently, it seems :) )
2641da177e4SLinus Torvalds	- Replace __initfunc() which is deprecated stuff by __init which
2651da177e4SLinus Torvalds	  is not yet so. ;-)
2661da177e4SLinus Torvalds	- Rewrite the MESSAGE IN scripts more generic by using a MOVE
2671da177e4SLinus Torvalds	  table indirect. Extended messages of any size are accepted now.
2681da177e4SLinus Torvalds	  (Size is limited to 8 for now, but a constant is just to be
2691da177e4SLinus Torvalds	  increased if necessary)
2701da177e4SLinus Torvalds	- Fix some bug in the fully untested MDP handling:) and share
2711da177e4SLinus Torvalds	  some code between MDP handling and residual calculation.
2721da177e4SLinus Torvalds	- Calculate the data transfer residual as the 2's complement
2731da177e4SLinus Torvalds	  integer (A positive value in returned on data overrun, and
2741da177e4SLinus Torvalds	  a negative one on underrun).
2751da177e4SLinus Torvalds	- Add support of some 'resource handling' for linux-2.3.13.
2761da177e4SLinus Torvalds	  Basically the BARs have been changed to something more complex
2771da177e4SLinus Torvalds	  in the pci_dev structure.
2781da177e4SLinus Torvalds	- Remove some deprecated code.
2791da177e4SLinus Torvalds
2801da177e4SLinus TorvaldsSat Jun  5  11:00 1999 Gerard Roudier (groudier@club-internet.fr)
2811da177e4SLinus Torvalds	* version sym53c8xx-1.5c
2821da177e4SLinus Torvalds	- Do not negotiate on auto-sense if we are currently using 8 bit
2831da177e4SLinus Torvalds	  async transfer for the target.
2841da177e4SLinus Torvalds	- Only check for SISL/RAID on i386 platforms.
2851da177e4SLinus Torvalds	  (A problem has been reported on PPC with that code).
2861da177e4SLinus Torvalds	- On MSG REJECT for a negotiation, the driver attempted to restart
2871da177e4SLinus Torvalds	  the SCRIPT processor when this one was already running.
2881da177e4SLinus Torvalds
2891da177e4SLinus TorvaldsSat May 29  12:00 1999 Gerard Roudier (groudier@club-internet.fr)
2901da177e4SLinus Torvalds	* version sym53c8xx-1.5b
2911da177e4SLinus Torvalds	- Force negotiation prior auto-sense.
2921da177e4SLinus Torvalds	  This ensures that the driver will be able to grab the sense data
2931da177e4SLinus Torvalds	  from a device that has received a BUS DEVICE RESET message from
2941da177e4SLinus Torvalds	  another initiator.
2951da177e4SLinus Torvalds	- Complete all disconnected CCBs for a logical UNIT if we are told
2961da177e4SLinus Torvalds	  about a UNIT ATTENTION for a RESET condition by this target.
2971da177e4SLinus Torvalds	- Add the control command 'cleardev' that allows to send a ABORT
2981da177e4SLinus Torvalds	  message to a logical UNIT (for test purpose).
2991da177e4SLinus Torvalds
3001da177e4SLinus TorvaldsTue May 25  23:00 1999 Gerard Roudier (groudier@club-internet.fr)
3011da177e4SLinus Torvalds	* version sym53c8xx-1.5a
3021da177e4SLinus Torvalds	- Add support for task abort and bus device reset SCSI message
303*685d5ef4SRandy Dunlap	  and implement proper synchronisation with SCRIPTS to handle
3041da177e4SLinus Torvalds          correctly task abortion without races.
3051da177e4SLinus Torvalds	- Send an ABORT message (if untagged) or ABORT TAG message (if tagged)
3061da177e4SLinus Torvalds	  when the driver is told to abort a command that is disconnected and
3071da177e4SLinus Torvalds	  complete the command with appropriate error.
3081da177e4SLinus Torvalds	  If the aborted command is not yet started, remove it from the start
3091da177e4SLinus Torvalds	  queue and complete it with error.
3101da177e4SLinus Torvalds	- Add the control command 'resetdev' that allows to send a BUS
3111da177e4SLinus Torvalds	  DEVICE RESET message to a target (for test purpose).
3121da177e4SLinus Torvalds	- Clean-up some unused or useless code.
3131da177e4SLinus Torvalds
3141da177e4SLinus TorvaldsFri May 21  23:00 1999 Gerard Roudier (groudier@club-internet.fr)
3151da177e4SLinus Torvalds	* version sym53c8xx-1.5
3161da177e4SLinus Torvalds	- Add support for CHMOV with Wide controllers.
3171da177e4SLinus Torvalds	- Handling of the SWIDE (low byte residue at the end of a CHMOV
3181da177e4SLinus Torvalds	  in DATA IN phase with WIDE transfer when the byte count gets odd).
3191da177e4SLinus Torvalds	- Handling of the IGNORE WIDE RESIDUE message.
3201da177e4SLinus Torvalds	  Handled from SCRIPTS as possible with some optimizations when both
3211da177e4SLinus Torvalds	  a wide device and the controller are odd at the same time (SWIDE
3221da177e4SLinus Torvalds	  present and IGNORE WIDE RESIDUE message on the BUS at the same time).
3231da177e4SLinus Torvalds	- Check against data OVERRUN/UNDERRUN condition at the end of a data
3241da177e4SLinus Torvalds	  transfer, whatever a SWIDE is present (OVERRUN in DATA IN phase)
3251da177e4SLinus Torvalds	  or the SODL is full (UNDERRUN in DATA out phase).
3261da177e4SLinus Torvalds	- Handling of the MODIFY DATA POINTER message.
3271da177e4SLinus Torvalds	  This one cannot be handled from SCRIPTS, but hopefully it will not
3281da177e4SLinus Torvalds	  happen very often. :)
3291da177e4SLinus Torvalds	- Large rewrite of the SCSI MESSAGE handling.
3301da177e4SLinus Torvalds
3311da177e4SLinus TorvaldsSun May 9  11:00 1999 Gerard Roudier (groudier@club-internet.fr)
3321da177e4SLinus Torvalds	* version sym53c8xx-1.4
3331da177e4SLinus Torvalds	- Support for IMMEDIATE ARBITRATION.
3341da177e4SLinus Torvalds	  See the README file for detailed information about this feature.
3351da177e4SLinus Torvalds	  Requires both a compile option and a boot option.
3361da177e4SLinus Torvalds	- Minor SCRIPTS optimization in reselection pattern for LUN 0.
3371da177e4SLinus Torvalds	- Simpler algorithm to deal with SCSI command starvation.
3381da177e4SLinus Torvalds	  Just use 2 tag counters in flip/flop and switch to the other
3391da177e4SLinus Torvalds	  one every 3 seconds.
3401da177e4SLinus Torvalds	- Do some work in SCRIPTS after the SELECT instruction and prior
3411da177e4SLinus Torvalds	  to testing for a PHASE. SYMBIOS say this feature is working fine.
3421da177e4SLinus Torvalds	  (Btw, only problems with Toshiba 3401B had been reported).
3431da177e4SLinus Torvalds	- Measure the PCI clock speed and do not attach controllers if
3441da177e4SLinus Torvalds	  result is greater than 37 MHz. Since the precision of the
3451da177e4SLinus Torvalds	  algorithm (from Stefan Esser) is better than 2%, this should
3461da177e4SLinus Torvalds	  be fine.
3471da177e4SLinus Torvalds	- Fix the misdetection of SYM53C875E (was detected as a 876).
3481da177e4SLinus Torvalds	- Fix the misdetection of SYM53C810 not A (was detected as a 810A).
3491da177e4SLinus Torvalds	- Support for up to 256 TAGS per LUN (CMD_PER_LUN).
3501da177e4SLinus Torvalds	  Currently limited to 255 due to Linux limitation. :)
3511da177e4SLinus Torvalds	- Support for up to 508 active commands (CAN_QUEUE).
3521da177e4SLinus Torvalds	- Support for the 53C895A by Pamela Delaney <pam.delaney@lsil.com>
3531da177e4SLinus Torvalds	  The 53C895A contains all of the features of the 896 but has only
3541da177e4SLinus Torvalds	  one channel and has a 32 bit PCI bus. It does 64 bit PCI addressing
3551da177e4SLinus Torvalds	  using dual cycle PCI data transfers.
3561da177e4SLinus Torvalds	- Miscellaneous minor fixes.
3571da177e4SLinus Torvalds	- Some additions to the README.ncr53c8xx file.
3581da177e4SLinus Torvalds
3591da177e4SLinus TorvaldsTue Apr 15  10:00 1999 Gerard Roudier (groudier@club-internet.fr)
3601da177e4SLinus Torvalds	* version sym53c8xx-1.3e
3611da177e4SLinus Torvalds	- Support for any number of LUNs (64) (SPI2-compliant).
3621da177e4SLinus Torvalds	  (Btw, this may only be ever useful under linux-2.2 ;-))
3631da177e4SLinus Torvalds
3641da177e4SLinus TorvaldsSun Apr 11  10:00 1999 Gerard Roudier (groudier@club-internet.fr)
3651da177e4SLinus Torvalds	* version sym53c8xx-1.3d
3661da177e4SLinus Torvalds	- Add 'hostid:#id' boot option. This option allows to change the
3671da177e4SLinus Torvalds	  default SCSI id the driver uses for controllers.
3681da177e4SLinus Torvalds	- Make SCRIPTS not use self-mastering for PCI.
3691da177e4SLinus Torvalds	  There were still 2 places the driver used this feature of the
3701da177e4SLinus Torvalds	  53C8XX family.
3711da177e4SLinus Torvalds	- Move some data structures (nvram layouts and driver set-up) to
3721da177e4SLinus Torvalds	  the sym53c8xx_defs.h file. So, the both drivers will share them.
3731da177e4SLinus Torvalds	- Set MAX LUNS to 16 (instead of 8).
3741da177e4SLinus Torvalds
3751da177e4SLinus TorvaldsSat Mar 20  21:00 1999 Gerard Roudier (groudier@club-internet.fr)
3761da177e4SLinus Torvalds	* version sym53c8xx-1.3b
3771da177e4SLinus Torvalds	- Add support for NCR PQS PDS.
3781da177e4SLinus Torvalds	  James Bottomley <James.Bottomley@columbiasc.ncr.com>
3791da177e4SLinus Torvalds	- Allow value 0 for host ID.
3801da177e4SLinus Torvalds	- Support more than 8 controllers (> 40 in fact :-) )
3811da177e4SLinus Torvalds	- Add 'excl=#ioaddr' boot option: exclude controller.
3821da177e4SLinus Torvalds	  (Version 1.3a driver)
3831da177e4SLinus Torvalds
3841da177e4SLinus TorvaldsThu Mar 11  23:00 1999 Gerard Roudier (groudier@club-internet.fr)
3851da177e4SLinus Torvalds	* version sym53c8xx-1.3   (8xx-896 driver bundle)
3861da177e4SLinus Torvalds	- Equivalent changes as ncr53c8xx-3.2 due to the driver bundle.
3871da177e4SLinus Torvalds	  (See Changelog.ncr53c8xx)
3881da177e4SLinus Torvalds	- Do a normal soft reset as first chip reset, since aborting current
3891da177e4SLinus Torvalds	  operation may raise an interrupt we are not able to handle since
3901da177e4SLinus Torvalds	  the interrupt handler is not yet established.
3911da177e4SLinus Torvalds
3921da177e4SLinus TorvaldsSat Mar 6  11:00 1999 Gerard Roudier (groudier@club-internet.fr)
3931da177e4SLinus Torvalds	* version sym53c8xx-1.2b
3941da177e4SLinus Torvalds	- Fix some oooold bug that hangs the bus if a device rejects a
3951da177e4SLinus Torvalds	  negotiation. Btw, the corresponding stuff also needed some cleanup
3961da177e4SLinus Torvalds	  and thus the change is a bit larger than it could have been.
3971da177e4SLinus Torvalds	- Still some typo that made compilation fail for 64 bit (trivial fix).
3981da177e4SLinus Torvalds
3991da177e4SLinus TorvaldsSun Feb 21  20:00 1999 Gerard Roudier (groudier@club-internet.fr)
4001da177e4SLinus Torvalds	* version sym53c8xx-1.2a
4011da177e4SLinus Torvalds	- The rewrite of the interrupt handling broke the SBMC interrupt
4021da177e4SLinus Torvalds	  handling due to a 1 bit mask tiny error. Hopefully fixed.
4031da177e4SLinus Torvalds	- If INQUIRY came from a scatter list, the driver looked into
4041da177e4SLinus Torvalds	  the scatterlist instead of the data.:) Since this should never
4051da177e4SLinus Torvalds	  happen, we just discard the data if use_sg is not zero.
4061da177e4SLinus Torvalds
4071da177e4SLinus TorvaldsFri Feb 12  23:00 1999 Gerard Roudier (groudier@club-internet.fr)
4081da177e4SLinus Torvalds	* version sym53c8xx-1.2
4091da177e4SLinus Torvalds	- Major rewrite of the interrupt handling and recovery stuff for
4101da177e4SLinus Torvalds	  the support of non compliant SCSI removal, insertion and all
4111da177e4SLinus Torvalds	  kinds of screw-up that may happen on the SCSI BUS.
4121da177e4SLinus Torvalds	  Hopefully, the driver is now unbreakable or may-be, it is just
413*685d5ef4SRandy Dunlap	  quite broken. :-)
4141da177e4SLinus Torvalds	  Many thanks to Johnson Russel (Symbios) for having responded to
4151da177e4SLinus Torvalds	  my questions and for his interesting advices and comments about
4161da177e4SLinus Torvalds	  support of SCSI hot-plug.
4171da177e4SLinus Torvalds	- Add 'recovery' option to driver set-up.
4181da177e4SLinus Torvalds	- Negotiate SYNC data transfers with CCS devices.
4191da177e4SLinus Torvalds	- Deal correctly with 64 bit PCI address registers on Linux 2.2.
4201da177e4SLinus Torvalds	  Pointed out by Leonard Zubkoff.
4211da177e4SLinus Torvalds
4221da177e4SLinus TorvaldsSun Jan 31  18:00 1999 Gerard Roudier (groudier@club-internet.fr)
4231da177e4SLinus Torvalds	* version sym53c8xx-1.1a
4241da177e4SLinus Torvalds	- Some 896 chip revisions (all for now :-)), may hang-up if the
4251da177e4SLinus Torvalds	  soft reset bit is set at the wrong time while SCRIPTS are running.
4261da177e4SLinus Torvalds	  We need to first abort the current SCRIPTS operation prior to
4271da177e4SLinus Torvalds	  resetting the chip. This fix has been sent to me by SYMBIOS/LSI
4281da177e4SLinus Torvalds	  and I just translated it into ncr53c8xx syntax.
4291da177e4SLinus Torvalds	  Must be considered 100 % trustable, unless I did some mistake
4301da177e4SLinus Torvalds	  when translating it. :-)
4311da177e4SLinus Torvalds
4321da177e4SLinus TorvaldsSun Jan 24  18:00 1999 Gerard Roudier (groudier@club-internet.fr)
4331da177e4SLinus Torvalds	* version sym53c8xx-1.1
4341da177e4SLinus Torvalds	- Major rewrite of the SCSI parity error handling.
435*685d5ef4SRandy Dunlap	  The information contained in the data manuals is incomplete about
4361da177e4SLinus Torvalds	  this feature.
4371da177e4SLinus Torvalds	  I asked SYMBIOS about and got in reply the explanations that are
4381da177e4SLinus Torvalds	  _indeed_ missing in the data manuals.
4391da177e4SLinus Torvalds	- Allow to tune request_irq() flags from the boot command line using
4401da177e4SLinus Torvalds	  ncr53c8xx=irqm:??, as follows:
4411da177e4SLinus Torvalds	  a) If bit 0x10 is set in irqm, SA_SHIRQ flag is not used.
4421da177e4SLinus Torvalds	  b) If bit 0x20 is set in irqm, SA_INTERRUPT flag is not used.
4431da177e4SLinus Torvalds	  By default the driver uses both SA_SHIRQ and SA_INTERRUPT.
4441da177e4SLinus Torvalds	  Option 'ncr53c8xx=irqm:0x20' may be used when an IRQ is shared by
4451da177e4SLinus Torvalds	  a 53C8XX adapter and a network board.
4461da177e4SLinus Torvalds	- Fix for 64 bit PCI address register calculation. (Lance Robinson)
4471da177e4SLinus Torvalds	- Fix for big-endian in phase mismatch handling. (Michal Jaegermann)
4481da177e4SLinus Torvalds
4491da177e4SLinus TorvaldsFri Jan  1  20:00 1999 Gerard Roudier (groudier@club-internet.fr)
4501da177e4SLinus Torvalds	* version sym53c8xx-1.0a
4511da177e4SLinus Torvalds	- Waiting list look-up didn't work for the first command of the list.
4521da177e4SLinus Torvalds	  Hopefully fixed, but tested on paper only. ;)
4531da177e4SLinus Torvalds	- Remove the most part of PPC specific code for Linux-2.2.
4541da177e4SLinus Torvalds	  Thanks to Cort.
4551da177e4SLinus Torvalds	- Some other minors changes.
4561da177e4SLinus Torvalds
4571da177e4SLinus TorvaldsSat Dec 19  21:00 1998 Gerard Roudier (groudier@club-internet.fr)
4581da177e4SLinus Torvalds	* version sym53c8xx-1.0
4591da177e4SLinus Torvalds	- Define some new IO registers for the 896 (istat1, mbox0, mbox1)
46025985edcSLucas De Marchi	- Revamp slightly the Symbios NVRAM lay-out based on the excerpt of
4611da177e4SLinus Torvalds	  the header file I received from Symbios.
4621da177e4SLinus Torvalds	- Check the PCI bus number for the boot order (Using a fast
463*685d5ef4SRandy Dunlap	  PCI controller behind a PCI-PCI bridge seems sub-optimal).
4641da177e4SLinus Torvalds	- Disable overlapped PCI arbitration for the 896 revision 1.
4651da177e4SLinus Torvalds	- Reduce a bit the number of IO register reads for phase mismatch
4661da177e4SLinus Torvalds	  by reading DWORDS at a time instead of BYTES.
4671da177e4SLinus Torvalds
4681da177e4SLinus TorvaldsThu Dec  3  24:00 1998 Gerard Roudier (groudier@club-internet.fr)
4691da177e4SLinus Torvalds	* version pre-sym53c8xx-0.18
4701da177e4SLinus Torvalds	- I received this afternoon a 896 from SYMBIOS and started testing
4711da177e4SLinus Torvalds	  the driver with this beast. After having fixed 3 buglets, it worked
4721da177e4SLinus Torvalds	  with all features enabled including the phase mismatch handling
4731da177e4SLinus Torvalds	  from SCRIPTS. Since this feature is not yet tested enough, the
4741da177e4SLinus Torvalds	  boot option 'ncr53c8xx=specf:1' is still required to enable the
4751da177e4SLinus Torvalds	  driver to handle PM from SCRIPTS.
4761da177e4SLinus Torvalds
4771da177e4SLinus TorvaldsSun Nov 29  18:00 1998 Gerard Roudier (groudier@club-internet.fr)
4781da177e4SLinus Torvalds	* version pre-sym53c8xx-0.17
4791da177e4SLinus Torvalds	- The SISL RAID change requires now remap_pci_mem() stuff to be
4801da177e4SLinus Torvalds	  compiled for __i386__ when normal IOs are used.
4811da177e4SLinus Torvalds	- The PCI memory read from SCRIPTS that should ensure ordering
4821da177e4SLinus Torvalds	  was in fact misplaced. BTW, this may explain why broken PCI
4831da177e4SLinus Torvalds	  device drivers regarding ordering are working so well. ;-)
4841da177e4SLinus Torvalds	- Rewrite ncr53c8xx_setup (boot command line options) since the
4851da177e4SLinus Torvalds	  binary code was a bit too bloated in my opinion.
4861da177e4SLinus Torvalds	- Make the code simpler in the wakeup_done routine.
4871da177e4SLinus Torvalds
4881da177e4SLinus TorvaldsTue Nov 24  23:00 1998 Gerard Roudier (groudier@club-internet.fr)
4891da177e4SLinus Torvalds	* version pre-sym53c8xx-0.16
4901da177e4SLinus Torvalds	- Add SCSI_NCR_OPTIMIZE_896_1 compile option and 'optim' boot option.
491*685d5ef4SRandy Dunlap	  When set, the driver unconditionally assumes that the interrupt
4921da177e4SLinus Torvalds	  handler is called for command completion, then clears INTF, scans
4931da177e4SLinus Torvalds	  the done queue and returns if some completed CCB is found. If no
4941da177e4SLinus Torvalds	  completed CCB are found, interrupt handling will proceed normally.
4951da177e4SLinus Torvalds	  With a 896 that handles MA from SCRIPTS, this can be a great win,
4961da177e4SLinus Torvalds	  since the driver will never performs PCI read transactions, but
4971da177e4SLinus Torvalds	  only PCI write transactions that may be posted.
4981da177e4SLinus Torvalds	  If the driver haven't to also raise the SIGP this would be perfect.
4991da177e4SLinus Torvalds	  Even with this penalty, I think that this will work great.
5001da177e4SLinus Torvalds	  Obviously this optimization makes sense only if the IRQ is not
5011da177e4SLinus Torvalds	  shared with another device.
5021da177e4SLinus Torvalds	- Still a buglet in the tags initial settings that needed to be fixed.
5031da177e4SLinus Torvalds	  It was not possible to disable TGQ at system startup for devices
5041da177e4SLinus Torvalds	  that claim TGQ support. The driver used at least 2 for the queue
505*685d5ef4SRandy Dunlap	  depth but didn't keep track of user settings for tags depth lower
5061da177e4SLinus Torvalds	  than 2.
5071da177e4SLinus Torvalds
5081da177e4SLinus TorvaldsThu Nov 19  23:00 1998 Gerard Roudier (groudier@club-internet.fr)
5091da177e4SLinus Torvalds	* version pre-sym53c8xx-0.15
5101da177e4SLinus Torvalds	- Add support for hardware LED control of the 896.
5111da177e4SLinus Torvalds	- Ignore chips that are driven by SISL RAID (DAC 960).
5121da177e4SLinus Torvalds	  Change sent by Leonard Zubkoff and slightly reworked.
5131da177e4SLinus Torvalds	- Prevent 810A rev 11 and 860 rev 1 from using cache line based
5141da177e4SLinus Torvalds	  transactions since those early chip revisions may use such on
5151da177e4SLinus Torvalds	  LOAD/STORE instructions (work-around).
5161da177e4SLinus Torvalds	- Remove some useless and bloat code from the pci init stuff.
5171da177e4SLinus Torvalds	- Do not use the readX()/writeX() kernel functions for __i386__,
5181da177e4SLinus Torvalds	  since they perform useless masking operations in order to deal
5191da177e4SLinus Torvalds	  with broken driver in 2.1.X kernel.
5201da177e4SLinus Torvalds
5211da177e4SLinus TorvaldsWed Nov 11  10:00 1998 Gerard Roudier (groudier@club-internet.fr)
5221da177e4SLinus Torvalds	* version pre-sym53c8xx-0.14
5231da177e4SLinus Torvalds	- The driver was unhappy when configured with default_tags > MAX_TAGS
5241da177e4SLinus Torvalds	  Hopefully doubly-fixed.
5251da177e4SLinus Torvalds	- Set PCI_PARITY in PCI_COMMAND register in not set (PCI fix-up).
5261da177e4SLinus Torvalds	- Print out some message if phase mismatch is handled from SCRIPTS.
5271da177e4SLinus Torvalds
5281da177e4SLinus TorvaldsSun Nov 1  14H00 1998 Gerard Roudier (groudier@club-internet.fr)
5291da177e4SLinus Torvalds	* version pre-sym53c8xx-0.13
5301da177e4SLinus Torvalds	- Some rewrite of the device detection code. This code had been
5311da177e4SLinus Torvalds	  patched too much and needed to be face-lifted a bit.
5321da177e4SLinus Torvalds	  Remove all platform dependent fix-ups that was not needed or
5331da177e4SLinus Torvalds	  conflicted with some other driver code as work-arounds.
5341da177e4SLinus Torvalds	  Reread the NVRAM before the calling of ncr_attach(). This spares
5351da177e4SLinus Torvalds	  stack space and so allows to handle more boards.
5361da177e4SLinus Torvalds	  Handle 64 bit base addresses under linux-2.0.X.
5371da177e4SLinus Torvalds	  Set MASTER bit in PCI COMMAND register if not set.
5381da177e4SLinus Torvalds
5391da177e4SLinus TorvaldsWed Oct 30 22H00 1998 Gerard Roudier (groudier@club-internet.fr)
5401da177e4SLinus Torvalds	* version pre-sym53c8xx-0.12
5411da177e4SLinus Torvalds	- Damned! I just broke the driver for Alpha by leaving a stale
5421da177e4SLinus Torvalds	  instruction in the source code. Hopefully fixed.
5431da177e4SLinus Torvalds	- Do not set PFEN when it is useless. Doing so we are sure that BOF
5441da177e4SLinus Torvalds	  will be active, since the manual appears to be very unclear on what
5451da177e4SLinus Torvalds	  feature is actually used by the chip when both PFEN and BOF are
5461da177e4SLinus Torvalds	  set.
5471da177e4SLinus Torvalds
5481da177e4SLinus TorvaldsSat Oct 24 16H00 1998 Gerard Roudier (groudier@club-internet.fr)
5491da177e4SLinus Torvalds	* version pre-sym53c8xx-0.11
5501da177e4SLinus Torvalds	- LOAD/STORE instructions were miscompiled for register offsets
5511da177e4SLinus Torvalds	  beyond 0x7f. This broke accesses to 896' new registers.
5521da177e4SLinus Torvalds	- Disable by default Phase Mismatch handling from SCRIPTS, since
5531da177e4SLinus Torvalds	  current 896 rev.1 seems not to operate safely with the driver
5541da177e4SLinus Torvalds	  when this feature is enabled (and above LOAD/STORE fix applied).
5551da177e4SLinus Torvalds	  I will change the default to 'enabled' when this problem will be
5561da177e4SLinus Torvalds	  solved.
5571da177e4SLinus Torvalds	  Using boot option 'ncr53c8xx=specf:1' enables this feature.
5581da177e4SLinus Torvalds	- Implement a work-around (DEL 472 - ITEM 5) that should allow the
5591da177e4SLinus Torvalds	  driver to safely enable hardware phase mismatch with 896 rev. 1.
5601da177e4SLinus Torvalds
5611da177e4SLinus TorvaldsTue Oct 20 22H00 1998 Gerard Roudier (groudier@club-internet.fr)
5621da177e4SLinus Torvalds	* version pre-sym53c8xx-0.10
5631da177e4SLinus Torvalds	- Add the 53c876 description to the chip table. This is only useful
5641da177e4SLinus Torvalds	  for printing the right name of the controller.
5651da177e4SLinus Torvalds	- Add additional checking of INQUIRY data:
5661da177e4SLinus Torvalds	  Check INQUIRY data received length is at least 7. Byte 7 of
5671da177e4SLinus Torvalds	  inquiry data contains device features bits and the driver might
5681da177e4SLinus Torvalds	  be confused by garbage. Also check peripheral qualifier.
5691da177e4SLinus Torvalds	- Use a 1,3,5,...MAXTAGS*2+1 tag numbering. Previous driver could
5701da177e4SLinus Torvalds	  use any tag number from 1 to 253 and some non conformant devices
5711da177e4SLinus Torvalds	  might have problems with large tag numbers.
5721da177e4SLinus Torvalds	- Use NAME53C and NAME53C8XX for chip name prefix chip family name.
5731da177e4SLinus Torvalds	  Just give a try using "sym53c" and "sym53c8xx" instead of "ncr53c"
5741da177e4SLinus Torvalds	  and "ncr53c8xx". :-)
5751da177e4SLinus Torvalds
5761da177e4SLinus TorvaldsSun Oct 11 17H00 1998 Gerard Roudier (groudier@club-internet.fr)
5771da177e4SLinus Torvalds	* version pre-sym53c8xx-0.9
5781da177e4SLinus Torvalds	- DEL-441 Item 2 work-around for the 53c876 rev <= 5 (0x15).
5791da177e4SLinus Torvalds	- Break ncr_scatter() into 2 functions in order to guarantee best
5801da177e4SLinus Torvalds	  possible code optimization for the case we get a scatter list.
5811da177e4SLinus Torvalds	- Add the code intended to support up to 1 tera-byte for 64 bit systems.
5821da177e4SLinus Torvalds	  It is probably too early, but I wanted to complete the thing.
5831da177e4SLinus Torvalds
5841da177e4SLinus TorvaldsSat Oct 3 14H00 1998 Gerard Roudier (groudier@club-internet.fr)
5851da177e4SLinus Torvalds	* version pre-sym53c8xx-0.8
5861da177e4SLinus Torvalds	- Do some testing with io_mapped and fix what needed to be so.
5871da177e4SLinus Torvalds	- Wait for SCSI selection to complete or time-out immediately after
5881da177e4SLinus Torvalds	  the chip won arbitration, since executing SCRIPTS while the SCSI
5891da177e4SLinus Torvalds	  core is performing SCSI selection breaks the selection procedure
5901da177e4SLinus Torvalds	  at least for some chip revisions.
5911da177e4SLinus Torvalds	- Interrupt the SCRIPTS if a device does not go to MSG OUT phase after
5921da177e4SLinus Torvalds	  having been selected with ATN. Such a situation is not recoverable,
5931da177e4SLinus Torvalds	  better to fail when we are stuck.
594