162306a36Sopenharmony_ciSat May 12 12:00 2001 Gerard Roudier (groudier@club-internet.fr) 262306a36Sopenharmony_ci * version sym53c8xx-1.7.3c 362306a36Sopenharmony_ci - Ensure LEDC bit in GPCNTL is cleared when reading the NVRAM. 462306a36Sopenharmony_ci Fix sent by Stig Telfer <stig@api-networks.com>. 562306a36Sopenharmony_ci - Backport from SYM-2 the work-around that allows to support 662306a36Sopenharmony_ci hardwares that fail PCI parity checking. 762306a36Sopenharmony_ci - Check that we received at least 8 bytes of INQUIRY response 862306a36Sopenharmony_ci for byte 7, that contains device capabilities, to be valid. 962306a36Sopenharmony_ci - Define scsi_set_pci_device() as nil for kernel < 2.4.4. 1062306a36Sopenharmony_ci - + A couple of minor changes. 1162306a36Sopenharmony_ci 1262306a36Sopenharmony_ciSat Apr 7 19:30 2001 Gerard Roudier (groudier@club-internet.fr) 1362306a36Sopenharmony_ci * version sym53c8xx-1.7.3b 1462306a36Sopenharmony_ci - Fix an unaligned LOAD from scripts (was used as dummy read). 1562306a36Sopenharmony_ci - In ncr_soft_reset(), only try to ABORT the current operation 1662306a36Sopenharmony_ci for chips that support SRUN bit in ISTAT1 and if SCRIPTS are 1762306a36Sopenharmony_ci currently running, as 896 and 1010 manuals suggest. 1862306a36Sopenharmony_ci - In the CCB abort path, do not assume that the CCB is currently 1962306a36Sopenharmony_ci queued to SCRIPTS. This is not always true, notably after a 2062306a36Sopenharmony_ci QUEUE FULL status or when using untagged commands. 2162306a36Sopenharmony_ci 2262306a36Sopenharmony_ciSun Mar 4 18:30 2001 Gerard Roudier (groudier@club-internet.fr) 2362306a36Sopenharmony_ci * version sym53c8xx-1.7.3a 2462306a36Sopenharmony_ci - Fix an issue in the ncr_int_udc() (unexpected disconnect) 2562306a36Sopenharmony_ci handling. If the DSA didn't match a CCB, a bad write to 2662306a36Sopenharmony_ci memory could happen. 2762306a36Sopenharmony_ci 2862306a36Sopenharmony_ciMon Feb 12 22:30 2001 Gerard Roudier (groudier@club-internet.fr) 2962306a36Sopenharmony_ci * version sym53c8xx-1.7.3 3062306a36Sopenharmony_ci - Support for hppa. 3162306a36Sopenharmony_ci Tiny patch sent to me by Robert Hirst. 3262306a36Sopenharmony_ci - Tiny patch for ia64 sent to me by Pamela Delaney. 3362306a36Sopenharmony_ci 3462306a36Sopenharmony_ciTue Feb 6 13:30 2001 Gerard Roudier (groudier@club-internet.fr) 3562306a36Sopenharmony_ci * version sym53c8xx-1.7.3-pre1 3662306a36Sopenharmony_ci - Call pci_enable_device() as AC wants this to be done. 3762306a36Sopenharmony_ci - Get both the BAR cookies used by CPU and actual PCI BAR 3862306a36Sopenharmony_ci values used from SCRIPTS. Recent PCI chips are able to 3962306a36Sopenharmony_ci access themselves using internal cycles, but they compare 4062306a36Sopenharmony_ci BAR values to destination address to make decision. 4162306a36Sopenharmony_ci Earlier chips simply use PCI transactions to access IO 4262306a36Sopenharmony_ci registers from SCRIPTS. 4362306a36Sopenharmony_ci The bus_dvma_to_mem() interface that reverses the actual 4462306a36Sopenharmony_ci PCI BAR value from the BAR cookie is now useless. 4562306a36Sopenharmony_ci This point had been discussed at the list and the solution 4662306a36Sopenharmony_ci got approved by PCI code maintainer (Martin Mares). 4762306a36Sopenharmony_ci - Merge changes for linux-2.4 that declare the host template 4862306a36Sopenharmony_ci in the driver object also when the driver is statically 4962306a36Sopenharmony_ci linked with the kernel. 5062306a36Sopenharmony_ci - Increase SCSI message size up to 12 bytes, given that 8 5162306a36Sopenharmony_ci bytes was not enough for the PPR message (fix). 5262306a36Sopenharmony_ci - Add field 'maxoffs_st' (max offset for ST data transfers). 5362306a36Sopenharmony_ci The C1010 supports offset 62 in DT mode but only 31 in 5462306a36Sopenharmony_ci ST mode, to 2 different values for the max SCSI offset 5562306a36Sopenharmony_ci are needed. Replace the obviously wrong masking of the 5662306a36Sopenharmony_ci offset against 0x1f for ST mode by a lowering to 5762306a36Sopenharmony_ci maxoffs_st of the SCSI offset in ST mode. 5862306a36Sopenharmony_ci - Refine a work-around for the C1010-66. Revision 1 does 5962306a36Sopenharmony_ci not requires extra cycles in DT DATA OUT phase. 6062306a36Sopenharmony_ci - Add a missing endian-ization (abrt_tbl.addr). 6162306a36Sopenharmony_ci - Minor clean-up in the np structure for fields accessed 6262306a36Sopenharmony_ci from SCRIPTS that requires special alignments. 6362306a36Sopenharmony_ci 6462306a36Sopenharmony_ciSun Sep 24 21:30 2000 Gerard Roudier (groudier@club-internet.fr) 6562306a36Sopenharmony_ci * version sym53c8xx-1.7.2 6662306a36Sopenharmony_ci - Remove the hack for PPC added in previous driver version. 6762306a36Sopenharmony_ci - Add FE_DAC feature bit to distinguish between 64 bit PCI 6862306a36Sopenharmony_ci addressing (FE_DAC) and 64 bit PCI interface (FE_64BIT). 6962306a36Sopenharmony_ci - Get rid of the boot command line "ultra:" argument. 7062306a36Sopenharmony_ci This parameter wasn't that clever since we can use "sync:" 7162306a36Sopenharmony_ci for Ultra/Ultra2 settings, and for Ultra3 we may want to 7262306a36Sopenharmony_ci pass PPR options (for now only DT clocking). 7362306a36Sopenharmony_ci - Add FE_VARCLK feature bit that indicates that SCSI clock 7462306a36Sopenharmony_ci frequency may vary depending on board design and thus, 7562306a36Sopenharmony_ci the driver should try to evaluate the SCSI clock. 7662306a36Sopenharmony_ci - Simplify the way the driver determine the SCSI clock: 7762306a36Sopenharmony_ci ULTRA3 -> 160 MHz, ULTRA2 -> 80 MHz otherwise 40 MHz. 7862306a36Sopenharmony_ci Measure the SCSI clock frequency if FE_VARCLK is set. 7962306a36Sopenharmony_ci - Remove FE_CLK80 feature bit that got useless. 8062306a36Sopenharmony_ci - Add support for the SYM53C875A (Pamela Delaney). 8162306a36Sopenharmony_ci 8262306a36Sopenharmony_ciWed Jul 26 23:30 2000 Gerard Roudier (groudier@club-internet.fr) 8362306a36Sopenharmony_ci * version sym53c8xx-1.7.1 8462306a36Sopenharmony_ci - Provide OpenFirmware path through the proc FS on PPC. 8562306a36Sopenharmony_ci - Download of on-chip SRAM using memcpy_toio() doesn't work 8662306a36Sopenharmony_ci on PPC. Restore previous method (MEMORY MOVE from SCRIPTS). 8762306a36Sopenharmony_ci - Remove trailing argument #2 from a couple of #undefs. 8862306a36Sopenharmony_ci 8962306a36Sopenharmony_ciSun Jul 09 16:30 2000 Gerard Roudier (groudier@club-internet.fr) 9062306a36Sopenharmony_ci * version sym53c8xx-1.7.0 9162306a36Sopenharmony_ci - Remove the PROFILE C and SCRIPTS code. 9262306a36Sopenharmony_ci This facility was not this useful and thus was not longer 9362306a36Sopenharmony_ci desirable given the increasing complexity of the driver code. 9462306a36Sopenharmony_ci - Merges from FreeBSD sym-1.6.2 driver: 9562306a36Sopenharmony_ci * Clarify memory barriers needed by the driver for architectures 9662306a36Sopenharmony_ci that implement a weak memory ordering. 9762306a36Sopenharmony_ci * Simpler handling of illegal phases and data overrun from 9862306a36Sopenharmony_ci SCRIPTS. These errors are now immediately reported to 9962306a36Sopenharmony_ci the C code by an interrupt. 10062306a36Sopenharmony_ci * Sync the residual handling code with sym-1.6.2 and now 10162306a36Sopenharmony_ci report `resid' to user for linux version >= 2.3.99 10262306a36Sopenharmony_ci - General cleanup: 10362306a36Sopenharmony_ci Move definitions for barriers and IO/MMIO operations to the 10462306a36Sopenharmony_ci sym53c8xx_defs.h header files. They are now shared by the 10562306a36Sopenharmony_ci both drivers. 10662306a36Sopenharmony_ci Remove unused options that claimed to optimize for the 896. 10762306a36Sopenharmony_ci If fact, they were not this clever. :) 10862306a36Sopenharmony_ci Use SCSI_NCR_IOMAPPED instead of NCR_IOMAPPED. 10962306a36Sopenharmony_ci Remove a couple of unused fields from data structures. 11062306a36Sopenharmony_ci 11162306a36Sopenharmony_ciThu May 11 12:40 2000 Pam Delaney (pam.delaney@lsil.com) 11262306a36Sopenharmony_ci * version sym53c8xx-1.6b 11362306a36Sopenharmony_ci - Merged version. 11462306a36Sopenharmony_ci 11562306a36Sopenharmony_ciMon Apr 24 12:00 2000 Gerard Roudier (groudier@club-internet.fr) 11662306a36Sopenharmony_ci * version sym53c8xx-1.5m 11762306a36Sopenharmony_ci - Return value 1 (instead of 0) from the driver setup routine. 11862306a36Sopenharmony_ci - Do not enable PCI DAC cycles. This just broke support for 11962306a36Sopenharmony_ci SYM534C896 on sparc64. Problem fixed by David S. Miller. 12062306a36Sopenharmony_ci 12162306a36Sopenharmony_ciFri Apr 14 9:00 2000 Pam Delaney (pam.delaney@lsil.com) 12262306a36Sopenharmony_ci * version sym53c8xx-1.6b-9 12362306a36Sopenharmony_ci - Added 53C1010_66 support. 12462306a36Sopenharmony_ci - Small fix to integrity checking code. 12562306a36Sopenharmony_ci - Removed requirement for integrity checking if want to run 12662306a36Sopenharmony_ci at ultra 3. 12762306a36Sopenharmony_ci 12862306a36Sopenharmony_ciSat Apr 1 12:00 2000 Gerard Roudier (groudier@club-internet.fr) 12962306a36Sopenharmony_ci * version sym53c8xx-1.5l 13062306a36Sopenharmony_ci - Tiny change for __sparc__ appeared in 2.3.99-pre4.1 that 13162306a36Sopenharmony_ci applies to cache line size (? Probably from David S Miller). 13262306a36Sopenharmony_ci - Make sure no data transfer will happen for Scsi_Cmnd requests 13362306a36Sopenharmony_ci that supply SCSI_DATA_NONE direction (this avoids some BUG() 13462306a36Sopenharmony_ci statement in the PCI code when a data buffer is also supplied). 13562306a36Sopenharmony_ci 13662306a36Sopenharmony_ciSat Mar 11 12:00 2000 Gerard Roudier (groudier@club-internet.fr) 13762306a36Sopenharmony_ci * version sym53c8xx-1.6b-5 13862306a36Sopenharmony_ci - Test against expected data transfer direction from SCRIPTS. 13962306a36Sopenharmony_ci - Add support for the new dynamic dma mapping kernel interface. 14062306a36Sopenharmony_ci Requires Linux-2.3.47 (tested with pre-2.3.47-6). 14162306a36Sopenharmony_ci Many thanks to David S. Miller for his preliminary changes 14262306a36Sopenharmony_ci that have been useful guidelines. 14362306a36Sopenharmony_ci - Get data transfer direction from the scsi command structure 14462306a36Sopenharmony_ci (Scsi_Cmnd) with kernels that provide this information. 14562306a36Sopenharmony_ci 14662306a36Sopenharmony_ciMon Mar 6 23:30 2000 Gerard Roudier (groudier@club-internet.fr) 14762306a36Sopenharmony_ci * version sym53c8xx-1.5k 14862306a36Sopenharmony_ci - Test against expected data transfer direction from SCRIPTS. 14962306a36Sopenharmony_ci - Revert the change in 'ncr_flush_done_cmds()' but unmap the 15062306a36Sopenharmony_ci scsi dma buffer prior to queueing the command to our done 15162306a36Sopenharmony_ci list. 15262306a36Sopenharmony_ci - Miscellaneous (minor) fixes in the code added in driver 15362306a36Sopenharmony_ci version 1.5j. 15462306a36Sopenharmony_ci 15562306a36Sopenharmony_ciMon Feb 14 4:00 2000 Pam Delaney (pam.delaney@lsil.com) 15662306a36Sopenharmony_ci * version sym53c8xx-pre-1.6b-2. 15762306a36Sopenharmony_ci - Updated the SCRIPTS error handling of the SWIDE 15862306a36Sopenharmony_ci condition - to remove any reads of the sbdl 15962306a36Sopenharmony_ci register. Changes needed because the 896 and 1010 16062306a36Sopenharmony_ci chips will check parity in some special circumstances. 16162306a36Sopenharmony_ci This will cause a parity error interrupt if not in 16262306a36Sopenharmony_ci data phase. Changes based on those made in the 16362306a36Sopenharmony_ci FreeBSD driver version 1.3.2. 16462306a36Sopenharmony_ci 16562306a36Sopenharmony_ciSun Feb 20 11:00 2000 Gerard Roudier (groudier@club-internet.fr) 16662306a36Sopenharmony_ci * version sym53c8xx-1.5j 16762306a36Sopenharmony_ci - Add support for the new dynamic dma mapping kernel interface. 16862306a36Sopenharmony_ci Requires Linux-2.3.47 (tested with pre-2.3.47-6). 16962306a36Sopenharmony_ci Many thanks to David S. Miller for his preliminary changes 17062306a36Sopenharmony_ci that have been useful guidelines, for having reviewed the 17162306a36Sopenharmony_ci code and having tested this driver version on Ultra-Sparc. 17262306a36Sopenharmony_ci - 2 tiny bugs fixed in the PCI wrapper that provides support 17362306a36Sopenharmony_ci for early kernels without pci device structure. 17462306a36Sopenharmony_ci - Get data transfer direction from the scsi command structure 17562306a36Sopenharmony_ci (Scsi_Cmnd) with kernels that provide this information. 17662306a36Sopenharmony_ci - Fix an old bug that only affected 896 rev. 1 when driver 17762306a36Sopenharmony_ci profile support option was set in kernel configuration. 17862306a36Sopenharmony_ci 17962306a36Sopenharmony_ciFri Jan 14 14:00 2000 Pam Delaney (pam.delaney@lsil.com) 18062306a36Sopenharmony_ci * version sym53c8xx-pre-1.6b-1. 18162306a36Sopenharmony_ci - Merge parallel driver series 1.61 and 1.5e 18262306a36Sopenharmony_ci 18362306a36Sopenharmony_ciTue Jan 11 14:00 2000 Pam Delaney (pam.delaney@lsil.com) 18462306a36Sopenharmony_ci * version sym53c8xx-1.61 18562306a36Sopenharmony_ci - Added support for mounting disks on wide-narrow-wide 18662306a36Sopenharmony_ci scsi configurations. 18762306a36Sopenharmony_ci - Modified offset to be a maximum of 31 in ST mode, 18862306a36Sopenharmony_ci 62 in DT mode. 18962306a36Sopenharmony_ci - Based off of 1.60 19062306a36Sopenharmony_ci 19162306a36Sopenharmony_ciMon Jan 10 10:00 2000 Pam Delaney (pam.delaney@lsil.com) 19262306a36Sopenharmony_ci * version sym53c8xx-1.60 19362306a36Sopenharmony_ci - Added capability to use the integrity checking code 19462306a36Sopenharmony_ci in the kernel (optional). 19562306a36Sopenharmony_ci - Added PPR negotiation. 19662306a36Sopenharmony_ci - Added support for 53C1010 Ultra 3 part. 19762306a36Sopenharmony_ci - Based off of 1.5f 19862306a36Sopenharmony_ci 19962306a36Sopenharmony_ciSat Jan 8 22:00 2000 Gerard Roudier (groudier@club-internet.fr) 20062306a36Sopenharmony_ci * version sym53c8xx-1.5h 20162306a36Sopenharmony_ci - Add year 2000 copyright. 20262306a36Sopenharmony_ci - Display correctly bus signals when bus is detected wrong. 20362306a36Sopenharmony_ci - Some fix for Sparc from DSM that went directly to kernel tree. 20462306a36Sopenharmony_ci 20562306a36Sopenharmony_ciMon Dec 6 22:00 1999 Gerard Roudier (groudier@club-internet.fr) 20662306a36Sopenharmony_ci * version sym53c8xx-1.5g 20762306a36Sopenharmony_ci - Change messages written by the driver at initialisation and 20862306a36Sopenharmony_ci through the /proc FS (rather cosmetic changes that consist in 20962306a36Sopenharmony_ci printing out the PCI bus number and PCI device/function). 21062306a36Sopenharmony_ci - Ensure the SCRIPTS processor is stopped while calibrating the 21162306a36Sopenharmony_ci SCSI clock (the initialisation code has been a bit reworked). 21262306a36Sopenharmony_ci Change moved to the FreeBSD sym_hipd driver). 21362306a36Sopenharmony_ci - Some fixes in the MODIFY_DP/IGN_RESIDUE code and residual 21462306a36Sopenharmony_ci calculation (moved from FreeBSD sym_hipd driver). 21562306a36Sopenharmony_ci - Add NVRAM support for Tekram boards that use 24C16 EEPROM. 21662306a36Sopenharmony_ci Code moved from the FreeBSD sym_hipd driver, since it has 21762306a36Sopenharmony_ci been that one that got this feature first. 21862306a36Sopenharmony_ci - Definitely disable overlapped PCI arbitration for all dual 21962306a36Sopenharmony_ci function chips, since I cannot make sure for what chip revisions 22062306a36Sopenharmony_ci it is actually safe. 22162306a36Sopenharmony_ci - Add support for the SYM53C1510D (also for ncr53c8xx). 22262306a36Sopenharmony_ci - Fix up properly the PCI latency timer when needed or asked for. 22362306a36Sopenharmony_ci - Get rid of the old PCI bios interface, but preserve kernel 2.0 22462306a36Sopenharmony_ci compatibility from a simple wrapper. 22562306a36Sopenharmony_ci - Update the poor Tekram sync factor table. 22662306a36Sopenharmony_ci - Fix in a tiny 'printk' bug that may oops in case of extended 22762306a36Sopenharmony_ci errors (unrecovered parity error, data overrun, etc ...) 22862306a36Sopenharmony_ci (Sent by Pamela Delaney from LSILOGIC) 22962306a36Sopenharmony_ci - Remove the compilation condition about having to acquire the 23062306a36Sopenharmony_ci io_request_lock since it seems to be a definite feature now.:) 23162306a36Sopenharmony_ci - Change get_pages by GetPages since Linux >= 2.3.27 now wants 23262306a36Sopenharmony_ci get_pages to ever be used as a kernel symbol (from 2.3.27). 23362306a36Sopenharmony_ci - proc_dir structure no longer needed for kernel >= 2.3.27. 23462306a36Sopenharmony_ci 23562306a36Sopenharmony_ciSun Oct 3 19:00 1999 Gerard Roudier (groudier@club-internet.fr) 23662306a36Sopenharmony_ci * version sym53c8xx-1.5f 23762306a36Sopenharmony_ci - Change the way the driver checks the PCI clock frequency, so 23862306a36Sopenharmony_ci that overclocked PCI BUS up to 48 MHz will not be refused. 23962306a36Sopenharmony_ci The more the BUS is overclocked, the less the driver will 24062306a36Sopenharmony_ci guarantee that its measure of the SCSI clock is correct. 24162306a36Sopenharmony_ci - Backport some minor improvements of SCRIPTS from the sym_hipd 24262306a36Sopenharmony_ci driver. 24362306a36Sopenharmony_ci - Backport the code rewrite of the START QUEUE dequeuing (on 24462306a36Sopenharmony_ci bad scsi status received) from the sym_hipd driver. 24562306a36Sopenharmony_ci 24662306a36Sopenharmony_ciSat Sep 11 11:00 1999 Gerard Roudier (groudier@club-internet.fr) 24762306a36Sopenharmony_ci * version sym53c8xx-1.5e 24862306a36Sopenharmony_ci - New linux-2.3.13 __setup scheme support added. 24962306a36Sopenharmony_ci - Cleanup of the extended error status handling: 25062306a36Sopenharmony_ci Use 1 bit per error type. 25162306a36Sopenharmony_ci - Also save the extended error status prior to auto-sense. 25262306a36Sopenharmony_ci - Add the FE_DIFF chip feature bit to indicate support of 25362306a36Sopenharmony_ci diff probing from GPIO3 (825/825A/876/875). 25462306a36Sopenharmony_ci - Remove the quirk handling that has been useless since day one. 25562306a36Sopenharmony_ci - Work-around PCI chips being reported twice on some platforms. 25662306a36Sopenharmony_ci - Add some redundant PCI reads in order to deal with common 25762306a36Sopenharmony_ci bridge misbehaviour regarding posted write flushing. 25862306a36Sopenharmony_ci - Add some other conditional code for people who have to deal 25962306a36Sopenharmony_ci with really broken bridges (they will have to edit a source 26062306a36Sopenharmony_ci file to try these options). 26162306a36Sopenharmony_ci - Handle correctly (hopefully) jiffies wrap-around. 26262306a36Sopenharmony_ci - Restore the entry used to detect 875 until revision 0xff. 26362306a36Sopenharmony_ci (I removed it inadvertently, it seems :) ) 26462306a36Sopenharmony_ci - Replace __initfunc() which is deprecated stuff by __init which 26562306a36Sopenharmony_ci is not yet so. ;-) 26662306a36Sopenharmony_ci - Rewrite the MESSAGE IN scripts more generic by using a MOVE 26762306a36Sopenharmony_ci table indirect. Extended messages of any size are accepted now. 26862306a36Sopenharmony_ci (Size is limited to 8 for now, but a constant is just to be 26962306a36Sopenharmony_ci increased if necessary) 27062306a36Sopenharmony_ci - Fix some bug in the fully untested MDP handling:) and share 27162306a36Sopenharmony_ci some code between MDP handling and residual calculation. 27262306a36Sopenharmony_ci - Calculate the data transfer residual as the 2's complement 27362306a36Sopenharmony_ci integer (A positive value in returned on data overrun, and 27462306a36Sopenharmony_ci a negative one on underrun). 27562306a36Sopenharmony_ci - Add support of some 'resource handling' for linux-2.3.13. 27662306a36Sopenharmony_ci Basically the BARs have been changed to something more complex 27762306a36Sopenharmony_ci in the pci_dev structure. 27862306a36Sopenharmony_ci - Remove some deprecated code. 27962306a36Sopenharmony_ci 28062306a36Sopenharmony_ciSat Jun 5 11:00 1999 Gerard Roudier (groudier@club-internet.fr) 28162306a36Sopenharmony_ci * version sym53c8xx-1.5c 28262306a36Sopenharmony_ci - Do not negotiate on auto-sense if we are currently using 8 bit 28362306a36Sopenharmony_ci async transfer for the target. 28462306a36Sopenharmony_ci - Only check for SISL/RAID on i386 platforms. 28562306a36Sopenharmony_ci (A problem has been reported on PPC with that code). 28662306a36Sopenharmony_ci - On MSG REJECT for a negotiation, the driver attempted to restart 28762306a36Sopenharmony_ci the SCRIPT processor when this one was already running. 28862306a36Sopenharmony_ci 28962306a36Sopenharmony_ciSat May 29 12:00 1999 Gerard Roudier (groudier@club-internet.fr) 29062306a36Sopenharmony_ci * version sym53c8xx-1.5b 29162306a36Sopenharmony_ci - Force negotiation prior auto-sense. 29262306a36Sopenharmony_ci This ensures that the driver will be able to grab the sense data 29362306a36Sopenharmony_ci from a device that has received a BUS DEVICE RESET message from 29462306a36Sopenharmony_ci another initiator. 29562306a36Sopenharmony_ci - Complete all disconnected CCBs for a logical UNIT if we are told 29662306a36Sopenharmony_ci about a UNIT ATTENTION for a RESET condition by this target. 29762306a36Sopenharmony_ci - Add the control command 'cleardev' that allows to send a ABORT 29862306a36Sopenharmony_ci message to a logical UNIT (for test purpose). 29962306a36Sopenharmony_ci 30062306a36Sopenharmony_ciTue May 25 23:00 1999 Gerard Roudier (groudier@club-internet.fr) 30162306a36Sopenharmony_ci * version sym53c8xx-1.5a 30262306a36Sopenharmony_ci - Add support for task abort and bus device reset SCSI message 30362306a36Sopenharmony_ci and implement proper synchronisation with SCRIPTS to handle 30462306a36Sopenharmony_ci correctly task abortion without races. 30562306a36Sopenharmony_ci - Send an ABORT message (if untagged) or ABORT TAG message (if tagged) 30662306a36Sopenharmony_ci when the driver is told to abort a command that is disconnected and 30762306a36Sopenharmony_ci complete the command with appropriate error. 30862306a36Sopenharmony_ci If the aborted command is not yet started, remove it from the start 30962306a36Sopenharmony_ci queue and complete it with error. 31062306a36Sopenharmony_ci - Add the control command 'resetdev' that allows to send a BUS 31162306a36Sopenharmony_ci DEVICE RESET message to a target (for test purpose). 31262306a36Sopenharmony_ci - Clean-up some unused or useless code. 31362306a36Sopenharmony_ci 31462306a36Sopenharmony_ciFri May 21 23:00 1999 Gerard Roudier (groudier@club-internet.fr) 31562306a36Sopenharmony_ci * version sym53c8xx-1.5 31662306a36Sopenharmony_ci - Add support for CHMOV with Wide controllers. 31762306a36Sopenharmony_ci - Handling of the SWIDE (low byte residue at the end of a CHMOV 31862306a36Sopenharmony_ci in DATA IN phase with WIDE transfer when the byte count gets odd). 31962306a36Sopenharmony_ci - Handling of the IGNORE WIDE RESIDUE message. 32062306a36Sopenharmony_ci Handled from SCRIPTS as possible with some optimizations when both 32162306a36Sopenharmony_ci a wide device and the controller are odd at the same time (SWIDE 32262306a36Sopenharmony_ci present and IGNORE WIDE RESIDUE message on the BUS at the same time). 32362306a36Sopenharmony_ci - Check against data OVERRUN/UNDERRUN condition at the end of a data 32462306a36Sopenharmony_ci transfer, whatever a SWIDE is present (OVERRUN in DATA IN phase) 32562306a36Sopenharmony_ci or the SODL is full (UNDERRUN in DATA out phase). 32662306a36Sopenharmony_ci - Handling of the MODIFY DATA POINTER message. 32762306a36Sopenharmony_ci This one cannot be handled from SCRIPTS, but hopefully it will not 32862306a36Sopenharmony_ci happen very often. :) 32962306a36Sopenharmony_ci - Large rewrite of the SCSI MESSAGE handling. 33062306a36Sopenharmony_ci 33162306a36Sopenharmony_ciSun May 9 11:00 1999 Gerard Roudier (groudier@club-internet.fr) 33262306a36Sopenharmony_ci * version sym53c8xx-1.4 33362306a36Sopenharmony_ci - Support for IMMEDIATE ARBITRATION. 33462306a36Sopenharmony_ci See the README file for detailed information about this feature. 33562306a36Sopenharmony_ci Requires both a compile option and a boot option. 33662306a36Sopenharmony_ci - Minor SCRIPTS optimization in reselection pattern for LUN 0. 33762306a36Sopenharmony_ci - Simpler algorithm to deal with SCSI command starvation. 33862306a36Sopenharmony_ci Just use 2 tag counters in flip/flop and switch to the other 33962306a36Sopenharmony_ci one every 3 seconds. 34062306a36Sopenharmony_ci - Do some work in SCRIPTS after the SELECT instruction and prior 34162306a36Sopenharmony_ci to testing for a PHASE. SYMBIOS say this feature is working fine. 34262306a36Sopenharmony_ci (Btw, only problems with Toshiba 3401B had been reported). 34362306a36Sopenharmony_ci - Measure the PCI clock speed and do not attach controllers if 34462306a36Sopenharmony_ci result is greater than 37 MHz. Since the precision of the 34562306a36Sopenharmony_ci algorithm (from Stefan Esser) is better than 2%, this should 34662306a36Sopenharmony_ci be fine. 34762306a36Sopenharmony_ci - Fix the misdetection of SYM53C875E (was detected as a 876). 34862306a36Sopenharmony_ci - Fix the misdetection of SYM53C810 not A (was detected as a 810A). 34962306a36Sopenharmony_ci - Support for up to 256 TAGS per LUN (CMD_PER_LUN). 35062306a36Sopenharmony_ci Currently limited to 255 due to Linux limitation. :) 35162306a36Sopenharmony_ci - Support for up to 508 active commands (CAN_QUEUE). 35262306a36Sopenharmony_ci - Support for the 53C895A by Pamela Delaney <pam.delaney@lsil.com> 35362306a36Sopenharmony_ci The 53C895A contains all of the features of the 896 but has only 35462306a36Sopenharmony_ci one channel and has a 32 bit PCI bus. It does 64 bit PCI addressing 35562306a36Sopenharmony_ci using dual cycle PCI data transfers. 35662306a36Sopenharmony_ci - Miscellaneous minor fixes. 35762306a36Sopenharmony_ci - Some additions to the README.ncr53c8xx file. 35862306a36Sopenharmony_ci 35962306a36Sopenharmony_ciTue Apr 15 10:00 1999 Gerard Roudier (groudier@club-internet.fr) 36062306a36Sopenharmony_ci * version sym53c8xx-1.3e 36162306a36Sopenharmony_ci - Support for any number of LUNs (64) (SPI2-compliant). 36262306a36Sopenharmony_ci (Btw, this may only be ever useful under linux-2.2 ;-)) 36362306a36Sopenharmony_ci 36462306a36Sopenharmony_ciSun Apr 11 10:00 1999 Gerard Roudier (groudier@club-internet.fr) 36562306a36Sopenharmony_ci * version sym53c8xx-1.3d 36662306a36Sopenharmony_ci - Add 'hostid:#id' boot option. This option allows to change the 36762306a36Sopenharmony_ci default SCSI id the driver uses for controllers. 36862306a36Sopenharmony_ci - Make SCRIPTS not use self-mastering for PCI. 36962306a36Sopenharmony_ci There were still 2 places the driver used this feature of the 37062306a36Sopenharmony_ci 53C8XX family. 37162306a36Sopenharmony_ci - Move some data structures (nvram layouts and driver set-up) to 37262306a36Sopenharmony_ci the sym53c8xx_defs.h file. So, the both drivers will share them. 37362306a36Sopenharmony_ci - Set MAX LUNS to 16 (instead of 8). 37462306a36Sopenharmony_ci 37562306a36Sopenharmony_ciSat Mar 20 21:00 1999 Gerard Roudier (groudier@club-internet.fr) 37662306a36Sopenharmony_ci * version sym53c8xx-1.3b 37762306a36Sopenharmony_ci - Add support for NCR PQS PDS. 37862306a36Sopenharmony_ci James Bottomley <James.Bottomley@columbiasc.ncr.com> 37962306a36Sopenharmony_ci - Allow value 0 for host ID. 38062306a36Sopenharmony_ci - Support more than 8 controllers (> 40 in fact :-) ) 38162306a36Sopenharmony_ci - Add 'excl=#ioaddr' boot option: exclude controller. 38262306a36Sopenharmony_ci (Version 1.3a driver) 38362306a36Sopenharmony_ci 38462306a36Sopenharmony_ciThu Mar 11 23:00 1999 Gerard Roudier (groudier@club-internet.fr) 38562306a36Sopenharmony_ci * version sym53c8xx-1.3 (8xx-896 driver bundle) 38662306a36Sopenharmony_ci - Equivalent changes as ncr53c8xx-3.2 due to the driver bundle. 38762306a36Sopenharmony_ci (See Changelog.ncr53c8xx) 38862306a36Sopenharmony_ci - Do a normal soft reset as first chip reset, since aborting current 38962306a36Sopenharmony_ci operation may raise an interrupt we are not able to handle since 39062306a36Sopenharmony_ci the interrupt handler is not yet established. 39162306a36Sopenharmony_ci 39262306a36Sopenharmony_ciSat Mar 6 11:00 1999 Gerard Roudier (groudier@club-internet.fr) 39362306a36Sopenharmony_ci * version sym53c8xx-1.2b 39462306a36Sopenharmony_ci - Fix some oooold bug that hangs the bus if a device rejects a 39562306a36Sopenharmony_ci negotiation. Btw, the corresponding stuff also needed some cleanup 39662306a36Sopenharmony_ci and thus the change is a bit larger than it could have been. 39762306a36Sopenharmony_ci - Still some typo that made compilation fail for 64 bit (trivial fix). 39862306a36Sopenharmony_ci 39962306a36Sopenharmony_ciSun Feb 21 20:00 1999 Gerard Roudier (groudier@club-internet.fr) 40062306a36Sopenharmony_ci * version sym53c8xx-1.2a 40162306a36Sopenharmony_ci - The rewrite of the interrupt handling broke the SBMC interrupt 40262306a36Sopenharmony_ci handling due to a 1 bit mask tiny error. Hopefully fixed. 40362306a36Sopenharmony_ci - If INQUIRY came from a scatter list, the driver looked into 40462306a36Sopenharmony_ci the scatterlist instead of the data.:) Since this should never 40562306a36Sopenharmony_ci happen, we just discard the data if use_sg is not zero. 40662306a36Sopenharmony_ci 40762306a36Sopenharmony_ciFri Feb 12 23:00 1999 Gerard Roudier (groudier@club-internet.fr) 40862306a36Sopenharmony_ci * version sym53c8xx-1.2 40962306a36Sopenharmony_ci - Major rewrite of the interrupt handling and recovery stuff for 41062306a36Sopenharmony_ci the support of non compliant SCSI removal, insertion and all 41162306a36Sopenharmony_ci kinds of screw-up that may happen on the SCSI BUS. 41262306a36Sopenharmony_ci Hopefully, the driver is now unbreakable or may-be, it is just 41362306a36Sopenharmony_ci quite broken. :-) 41462306a36Sopenharmony_ci Many thanks to Johnson Russel (Symbios) for having responded to 41562306a36Sopenharmony_ci my questions and for his interesting advices and comments about 41662306a36Sopenharmony_ci support of SCSI hot-plug. 41762306a36Sopenharmony_ci - Add 'recovery' option to driver set-up. 41862306a36Sopenharmony_ci - Negotiate SYNC data transfers with CCS devices. 41962306a36Sopenharmony_ci - Deal correctly with 64 bit PCI address registers on Linux 2.2. 42062306a36Sopenharmony_ci Pointed out by Leonard Zubkoff. 42162306a36Sopenharmony_ci 42262306a36Sopenharmony_ciSun Jan 31 18:00 1999 Gerard Roudier (groudier@club-internet.fr) 42362306a36Sopenharmony_ci * version sym53c8xx-1.1a 42462306a36Sopenharmony_ci - Some 896 chip revisions (all for now :-)), may hang-up if the 42562306a36Sopenharmony_ci soft reset bit is set at the wrong time while SCRIPTS are running. 42662306a36Sopenharmony_ci We need to first abort the current SCRIPTS operation prior to 42762306a36Sopenharmony_ci resetting the chip. This fix has been sent to me by SYMBIOS/LSI 42862306a36Sopenharmony_ci and I just translated it into ncr53c8xx syntax. 42962306a36Sopenharmony_ci Must be considered 100 % trustable, unless I did some mistake 43062306a36Sopenharmony_ci when translating it. :-) 43162306a36Sopenharmony_ci 43262306a36Sopenharmony_ciSun Jan 24 18:00 1999 Gerard Roudier (groudier@club-internet.fr) 43362306a36Sopenharmony_ci * version sym53c8xx-1.1 43462306a36Sopenharmony_ci - Major rewrite of the SCSI parity error handling. 43562306a36Sopenharmony_ci The information contained in the data manuals is incomplete about 43662306a36Sopenharmony_ci this feature. 43762306a36Sopenharmony_ci I asked SYMBIOS about and got in reply the explanations that are 43862306a36Sopenharmony_ci _indeed_ missing in the data manuals. 43962306a36Sopenharmony_ci - Allow to tune request_irq() flags from the boot command line using 44062306a36Sopenharmony_ci ncr53c8xx=irqm:??, as follows: 44162306a36Sopenharmony_ci a) If bit 0x10 is set in irqm, SA_SHIRQ flag is not used. 44262306a36Sopenharmony_ci b) If bit 0x20 is set in irqm, SA_INTERRUPT flag is not used. 44362306a36Sopenharmony_ci By default the driver uses both SA_SHIRQ and SA_INTERRUPT. 44462306a36Sopenharmony_ci Option 'ncr53c8xx=irqm:0x20' may be used when an IRQ is shared by 44562306a36Sopenharmony_ci a 53C8XX adapter and a network board. 44662306a36Sopenharmony_ci - Fix for 64 bit PCI address register calculation. (Lance Robinson) 44762306a36Sopenharmony_ci - Fix for big-endian in phase mismatch handling. (Michal Jaegermann) 44862306a36Sopenharmony_ci 44962306a36Sopenharmony_ciFri Jan 1 20:00 1999 Gerard Roudier (groudier@club-internet.fr) 45062306a36Sopenharmony_ci * version sym53c8xx-1.0a 45162306a36Sopenharmony_ci - Waiting list look-up didn't work for the first command of the list. 45262306a36Sopenharmony_ci Hopefully fixed, but tested on paper only. ;) 45362306a36Sopenharmony_ci - Remove the most part of PPC specific code for Linux-2.2. 45462306a36Sopenharmony_ci Thanks to Cort. 45562306a36Sopenharmony_ci - Some other minors changes. 45662306a36Sopenharmony_ci 45762306a36Sopenharmony_ciSat Dec 19 21:00 1998 Gerard Roudier (groudier@club-internet.fr) 45862306a36Sopenharmony_ci * version sym53c8xx-1.0 45962306a36Sopenharmony_ci - Define some new IO registers for the 896 (istat1, mbox0, mbox1) 46062306a36Sopenharmony_ci - Revamp slightly the Symbios NVRAM lay-out based on the excerpt of 46162306a36Sopenharmony_ci the header file I received from Symbios. 46262306a36Sopenharmony_ci - Check the PCI bus number for the boot order (Using a fast 46362306a36Sopenharmony_ci PCI controller behind a PCI-PCI bridge seems sub-optimal). 46462306a36Sopenharmony_ci - Disable overlapped PCI arbitration for the 896 revision 1. 46562306a36Sopenharmony_ci - Reduce a bit the number of IO register reads for phase mismatch 46662306a36Sopenharmony_ci by reading DWORDS at a time instead of BYTES. 46762306a36Sopenharmony_ci 46862306a36Sopenharmony_ciThu Dec 3 24:00 1998 Gerard Roudier (groudier@club-internet.fr) 46962306a36Sopenharmony_ci * version pre-sym53c8xx-0.18 47062306a36Sopenharmony_ci - I received this afternoon a 896 from SYMBIOS and started testing 47162306a36Sopenharmony_ci the driver with this beast. After having fixed 3 buglets, it worked 47262306a36Sopenharmony_ci with all features enabled including the phase mismatch handling 47362306a36Sopenharmony_ci from SCRIPTS. Since this feature is not yet tested enough, the 47462306a36Sopenharmony_ci boot option 'ncr53c8xx=specf:1' is still required to enable the 47562306a36Sopenharmony_ci driver to handle PM from SCRIPTS. 47662306a36Sopenharmony_ci 47762306a36Sopenharmony_ciSun Nov 29 18:00 1998 Gerard Roudier (groudier@club-internet.fr) 47862306a36Sopenharmony_ci * version pre-sym53c8xx-0.17 47962306a36Sopenharmony_ci - The SISL RAID change requires now remap_pci_mem() stuff to be 48062306a36Sopenharmony_ci compiled for __i386__ when normal IOs are used. 48162306a36Sopenharmony_ci - The PCI memory read from SCRIPTS that should ensure ordering 48262306a36Sopenharmony_ci was in fact misplaced. BTW, this may explain why broken PCI 48362306a36Sopenharmony_ci device drivers regarding ordering are working so well. ;-) 48462306a36Sopenharmony_ci - Rewrite ncr53c8xx_setup (boot command line options) since the 48562306a36Sopenharmony_ci binary code was a bit too bloated in my opinion. 48662306a36Sopenharmony_ci - Make the code simpler in the wakeup_done routine. 48762306a36Sopenharmony_ci 48862306a36Sopenharmony_ciTue Nov 24 23:00 1998 Gerard Roudier (groudier@club-internet.fr) 48962306a36Sopenharmony_ci * version pre-sym53c8xx-0.16 49062306a36Sopenharmony_ci - Add SCSI_NCR_OPTIMIZE_896_1 compile option and 'optim' boot option. 49162306a36Sopenharmony_ci When set, the driver unconditionally assumes that the interrupt 49262306a36Sopenharmony_ci handler is called for command completion, then clears INTF, scans 49362306a36Sopenharmony_ci the done queue and returns if some completed CCB is found. If no 49462306a36Sopenharmony_ci completed CCB are found, interrupt handling will proceed normally. 49562306a36Sopenharmony_ci With a 896 that handles MA from SCRIPTS, this can be a great win, 49662306a36Sopenharmony_ci since the driver will never performs PCI read transactions, but 49762306a36Sopenharmony_ci only PCI write transactions that may be posted. 49862306a36Sopenharmony_ci If the driver haven't to also raise the SIGP this would be perfect. 49962306a36Sopenharmony_ci Even with this penalty, I think that this will work great. 50062306a36Sopenharmony_ci Obviously this optimization makes sense only if the IRQ is not 50162306a36Sopenharmony_ci shared with another device. 50262306a36Sopenharmony_ci - Still a buglet in the tags initial settings that needed to be fixed. 50362306a36Sopenharmony_ci It was not possible to disable TGQ at system startup for devices 50462306a36Sopenharmony_ci that claim TGQ support. The driver used at least 2 for the queue 50562306a36Sopenharmony_ci depth but didn't keep track of user settings for tags depth lower 50662306a36Sopenharmony_ci than 2. 50762306a36Sopenharmony_ci 50862306a36Sopenharmony_ciThu Nov 19 23:00 1998 Gerard Roudier (groudier@club-internet.fr) 50962306a36Sopenharmony_ci * version pre-sym53c8xx-0.15 51062306a36Sopenharmony_ci - Add support for hardware LED control of the 896. 51162306a36Sopenharmony_ci - Ignore chips that are driven by SISL RAID (DAC 960). 51262306a36Sopenharmony_ci Change sent by Leonard Zubkoff and slightly reworked. 51362306a36Sopenharmony_ci - Prevent 810A rev 11 and 860 rev 1 from using cache line based 51462306a36Sopenharmony_ci transactions since those early chip revisions may use such on 51562306a36Sopenharmony_ci LOAD/STORE instructions (work-around). 51662306a36Sopenharmony_ci - Remove some useless and bloat code from the pci init stuff. 51762306a36Sopenharmony_ci - Do not use the readX()/writeX() kernel functions for __i386__, 51862306a36Sopenharmony_ci since they perform useless masking operations in order to deal 51962306a36Sopenharmony_ci with broken driver in 2.1.X kernel. 52062306a36Sopenharmony_ci 52162306a36Sopenharmony_ciWed Nov 11 10:00 1998 Gerard Roudier (groudier@club-internet.fr) 52262306a36Sopenharmony_ci * version pre-sym53c8xx-0.14 52362306a36Sopenharmony_ci - The driver was unhappy when configured with default_tags > MAX_TAGS 52462306a36Sopenharmony_ci Hopefully doubly-fixed. 52562306a36Sopenharmony_ci - Set PCI_PARITY in PCI_COMMAND register in not set (PCI fix-up). 52662306a36Sopenharmony_ci - Print out some message if phase mismatch is handled from SCRIPTS. 52762306a36Sopenharmony_ci 52862306a36Sopenharmony_ciSun Nov 1 14H00 1998 Gerard Roudier (groudier@club-internet.fr) 52962306a36Sopenharmony_ci * version pre-sym53c8xx-0.13 53062306a36Sopenharmony_ci - Some rewrite of the device detection code. This code had been 53162306a36Sopenharmony_ci patched too much and needed to be face-lifted a bit. 53262306a36Sopenharmony_ci Remove all platform dependent fix-ups that was not needed or 53362306a36Sopenharmony_ci conflicted with some other driver code as work-arounds. 53462306a36Sopenharmony_ci Reread the NVRAM before the calling of ncr_attach(). This spares 53562306a36Sopenharmony_ci stack space and so allows to handle more boards. 53662306a36Sopenharmony_ci Handle 64 bit base addresses under linux-2.0.X. 53762306a36Sopenharmony_ci Set MASTER bit in PCI COMMAND register if not set. 53862306a36Sopenharmony_ci 53962306a36Sopenharmony_ciWed Oct 30 22H00 1998 Gerard Roudier (groudier@club-internet.fr) 54062306a36Sopenharmony_ci * version pre-sym53c8xx-0.12 54162306a36Sopenharmony_ci - Damned! I just broke the driver for Alpha by leaving a stale 54262306a36Sopenharmony_ci instruction in the source code. Hopefully fixed. 54362306a36Sopenharmony_ci - Do not set PFEN when it is useless. Doing so we are sure that BOF 54462306a36Sopenharmony_ci will be active, since the manual appears to be very unclear on what 54562306a36Sopenharmony_ci feature is actually used by the chip when both PFEN and BOF are 54662306a36Sopenharmony_ci set. 54762306a36Sopenharmony_ci 54862306a36Sopenharmony_ciSat Oct 24 16H00 1998 Gerard Roudier (groudier@club-internet.fr) 54962306a36Sopenharmony_ci * version pre-sym53c8xx-0.11 55062306a36Sopenharmony_ci - LOAD/STORE instructions were miscompiled for register offsets 55162306a36Sopenharmony_ci beyond 0x7f. This broke accesses to 896' new registers. 55262306a36Sopenharmony_ci - Disable by default Phase Mismatch handling from SCRIPTS, since 55362306a36Sopenharmony_ci current 896 rev.1 seems not to operate safely with the driver 55462306a36Sopenharmony_ci when this feature is enabled (and above LOAD/STORE fix applied). 55562306a36Sopenharmony_ci I will change the default to 'enabled' when this problem will be 55662306a36Sopenharmony_ci solved. 55762306a36Sopenharmony_ci Using boot option 'ncr53c8xx=specf:1' enables this feature. 55862306a36Sopenharmony_ci - Implement a work-around (DEL 472 - ITEM 5) that should allow the 55962306a36Sopenharmony_ci driver to safely enable hardware phase mismatch with 896 rev. 1. 56062306a36Sopenharmony_ci 56162306a36Sopenharmony_ciTue Oct 20 22H00 1998 Gerard Roudier (groudier@club-internet.fr) 56262306a36Sopenharmony_ci * version pre-sym53c8xx-0.10 56362306a36Sopenharmony_ci - Add the 53c876 description to the chip table. This is only useful 56462306a36Sopenharmony_ci for printing the right name of the controller. 56562306a36Sopenharmony_ci - Add additional checking of INQUIRY data: 56662306a36Sopenharmony_ci Check INQUIRY data received length is at least 7. Byte 7 of 56762306a36Sopenharmony_ci inquiry data contains device features bits and the driver might 56862306a36Sopenharmony_ci be confused by garbage. Also check peripheral qualifier. 56962306a36Sopenharmony_ci - Use a 1,3,5,...MAXTAGS*2+1 tag numbering. Previous driver could 57062306a36Sopenharmony_ci use any tag number from 1 to 253 and some non conformant devices 57162306a36Sopenharmony_ci might have problems with large tag numbers. 57262306a36Sopenharmony_ci - Use NAME53C and NAME53C8XX for chip name prefix chip family name. 57362306a36Sopenharmony_ci Just give a try using "sym53c" and "sym53c8xx" instead of "ncr53c" 57462306a36Sopenharmony_ci and "ncr53c8xx". :-) 57562306a36Sopenharmony_ci 57662306a36Sopenharmony_ciSun Oct 11 17H00 1998 Gerard Roudier (groudier@club-internet.fr) 57762306a36Sopenharmony_ci * version pre-sym53c8xx-0.9 57862306a36Sopenharmony_ci - DEL-441 Item 2 work-around for the 53c876 rev <= 5 (0x15). 57962306a36Sopenharmony_ci - Break ncr_scatter() into 2 functions in order to guarantee best 58062306a36Sopenharmony_ci possible code optimization for the case we get a scatter list. 58162306a36Sopenharmony_ci - Add the code intended to support up to 1 tera-byte for 64 bit systems. 58262306a36Sopenharmony_ci It is probably too early, but I wanted to complete the thing. 58362306a36Sopenharmony_ci 58462306a36Sopenharmony_ciSat Oct 3 14H00 1998 Gerard Roudier (groudier@club-internet.fr) 58562306a36Sopenharmony_ci * version pre-sym53c8xx-0.8 58662306a36Sopenharmony_ci - Do some testing with io_mapped and fix what needed to be so. 58762306a36Sopenharmony_ci - Wait for SCSI selection to complete or time-out immediately after 58862306a36Sopenharmony_ci the chip won arbitration, since executing SCRIPTS while the SCSI 58962306a36Sopenharmony_ci core is performing SCSI selection breaks the selection procedure 59062306a36Sopenharmony_ci at least for some chip revisions. 59162306a36Sopenharmony_ci - Interrupt the SCRIPTS if a device does not go to MSG OUT phase after 59262306a36Sopenharmony_ci having been selected with ATN. Such a situation is not recoverable, 59362306a36Sopenharmony_ci better to fail when we are stuck. 594