~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

Linux Cross Reference
Linux/drivers/scsi/ChangeLog.ncr53c8xx

Version: ~ [ 2.4.0 ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 Thu May 11   12:30 2000 Pam Delaney (pam.delaney@lsil.com)
  2         * revision 3.3b
  3  
  4 Mon Apr 24 12:00 2000 Gerard Roudier (groudier@club-internet.fr)
  5         * revision 3.2i
  6         - Return value 1 (instead of 0) from the driver setup routine.
  7         - Let the driver also attach controllers that have been set to 
  8           OFF in the NVRAM as it did prior to revision 3.2g.
  9 
 10 Sat Apr 1  12:00 2000 Gerard Roudier (groudier@club-internet.fr)
 11         * revision 3.2h
 12         - Fix a compilation problem on Alpha introduced in version 3.2g.
 13           (`port' changed to `base_io').
 14         - Move from `sym' to this driver a tiny change for __sparc__ that 
 15           applies to cache line size (? Probably from David S Miller).
 16         - Make sure no data transfer will happen for Scsi_Cmnd requests 
 17           that supply SCSI_DATA_NONE direction (this avoids some BUG() 
 18           statement in the PCI code when a data buffer is also supplied).
 19 
 20 Thu Mar 16   9:30 2000 Pam Delaney (pam.delaney@lsil.com)
 21         * revision 3.3b-3
 22         - Added exclusion for the 53C1010 and 53C1010_66 chips
 23           to the driver (change to sym53c8xx_comm.h).
 24 
 25 Mon March 6  23:15 2000 Gerard Roudier (groudier@club-internet.fr)
 26         * revision 3.2g
 27         - Add the file sym53c8xx_comm.h that collects code that should 
 28           be shared by sym53c8xx and ncr53c8xx drivers. For now, it is  
 29           a header file that is only included by the ncr53c8xx driver, 
 30           but things will be cleaned up later. This code addresses 
 31           notably:
 32           * Chip detection and PCI related initialisations
 33           * NVRAM detection and reading
 34           * DMA mapping
 35           * Boot setup command
 36           * And some other ...
 37         - Add support for the new dynamic dma mapping kernel interface.
 38           Requires Linux-2.3.47 (tested with pre-2.3.47-6).
 39         - Get data transfer direction from the scsi command structure 
 40           (Scsi_Cmnd) when this information is available.
 41 
 42 Mon March 6  23:15 2000 Gerard Roudier (groudier@club-internet.fr)
 43         * revision 3.2g
 44         - Add the file sym53c8xx_comm.h that collects code that should
 45           be shared by sym53c8xx and ncr53c8xx drivers. For now, it is
 46           a header file that is only included by the ncr53c8xx driver,
 47           but things will be cleaned up later. This code addresses
 48           notably:
 49           * Chip detection and PCI related initialisations
 50           * NVRAM detection and reading
 51           * DMA mapping
 52           * Boot setup command
 53           * And some other ...
 54         - Add support for the new dynamic dma mapping kernel interface.
 55           Requires Linux-2.3.47 (tested with pre-2.3.47-6).
 56         - Get data transfer direction from the scsi command structure
 57           (Scsi_Cmnd) when this information is available.
 58 
 59 Fri Jan 14 14:00 2000 Pam Delaney (pam.delaney@lsil.com)
 60         * revision pre-3.3b-1
 61         - Merge parallel driver series 3.31 and 3.2e 
 62 
 63 Tue Jan 11 14:00 2000 Pam Delaney (pam.delaney@lsil.com)
 64         * revision 3.31
 65         - Added support for mounting disks on wide-narrow-wide
 66           scsi configurations.  
 67         - Built off of version 3.30
 68 
 69 Mon Jan 10 13:30 2000 Pam Delaney (pam.delaney@lsil.com)
 70         * revision 3.30
 71         - Added capability to use the integrity checking code
 72           in the kernel (optional).
 73         - Disabled support for the 53C1010.
 74         - Built off of version 3.2c
 75 
 76 Sat Jan 8  22:00 2000 Gerard Roudier (groudier@club-internet.fr)
 77         * revision 3.2e
 78         - Add year 2000 copyright.
 79         - Display correctly bus signals when bus is detected wrong.
 80         - Remove the dead code that broke driver 3.2d.
 81 
 82 Mon Dec 6  22:00 1999 Gerard Roudier (groudier@club-internet.fr)
 83         * revision 3.2d
 84         - Change messages written by the driver at initialisation and 
 85           through the /proc FS (rather cosmetic changes that consist in
 86           printing out the PCI bus number and device/function).
 87         - Get rid of the old PCI bios interface, but preserve kernel 2.0 
 88           compatibility from a simple wrapper.
 89         - Remove the compilation condition about having to acquire the 
 90           io_request_lock since it seems to be a definite feature now.:)
 91         - proc_dir structure no longer needed for kernel >= 2.3.27.
 92         - Change the driver detection code by the sym53c8xx one, modulo 
 93           some minor changes. The driver can now attach any number of 
 94           controllers (>40) and does no longer hoger stack space at 
 95           initialisation.
 96         - Definitely disable overlapped PCI arbitration for all dual 
 97           function chips, since I cannot make sure for what chip revisions 
 98           it is actually safe.
 99         - Add support for the SYM53C1510D.
100         - Update the poor Tekram sync factor table.
101         - Remove the compilation condition about having to acquire the 
102           io_request_lock since it seems to be a definite feature now.:)
103         - proc_dir structure no longer needed for kernel >= 2.3.27.
104 
105 Sat Sep 11  18:00 1999 Gerard Roudier (groudier@club-internet.fr)
106         * revision 3.2c
107         - Handle correctly (hopefully) jiffies wrap-around.
108         - Restore the entry used to detect 875 until revision 0xff.
109           (I removed it inadvertently, it seems :) )
110         - Replace __initfunc() which is deprecated stuff by __init which 
111           is not yet so. ;-)
112         - Add support of some 'resource handling' for linux-2.3.13.
113           Basically the BARs have been changed to something more complex 
114           in the pci_dev structure.
115         - Remove some deprecated code.
116 
117 Sat May 10  11:00 1999 Gerard Roudier (groudier@club-internet.fr)
118         * revision pre-3.2b-1
119         - Support for the 53C895A by Pamela Delaney <pam.delaney@lsil.com>
120           The 53C895A contains all of the features of the 896 but has only 
121           one channel and has a 32 bit PCI bus. It does 64 bit PCI addressing 
122           using dual cycle PCI data transfers.
123         - Miscellaneous minor fixes.
124         - Some additions to the README.ncr53c8xx file.
125 
126 Sun Apr 11  10:00 1999 Gerard Roudier (groudier@club-internet.fr)
127         * revision 3.2a
128         - Add 'hostid:#id' boot option. This option allows to change the 
129           default SCSI id the driver uses for controllers.
130         - Remove nvram layouts and driver set-up structures from the C source,
131           and use the one defined in sym53c8xx_defs.h file.
132           (shared by both drivers).
133         - Set for now MAX LUNS to 16 (instead of 8).
134 
135 Thu Mar 11  23:00 1999 Gerard Roudier (groudier@club-internet.fr)
136         * revision 3.2    (8xx-896 driver bundle)
137         - Only define the host template in ncr53c8xx.h and include the 
138           sym53c8xx_defs.h file.
139         - Declare static all symbols that do not need to be visible from 
140           outside the driver code.
141         - Add 'excl' boot command option that allows to pass to the driver 
142           io address of devices not to attach.
143         - Add info() function called from the host template to print 
144           driver/host information.
145         - Minor documentation additions.
146 
147 Sat Mar 6  11:00 1999 Gerard Roudier (groudier@club-internet.fr)
148         * revision 3.1h
149         - Fix some oooold bug that hangs the bus if a device rejects a 
150           negotiation. Btw, the corresponding stuff also needed some cleanup 
151           and thus the change is a bit larger than it could have been.
152         - Still some typo that made compilation fail for 64 bit (trivial fix).
153 
154 Sun Feb  14:00 1999 Gerard Roudier (groudier@club-internet.fr)
155         * revision 3.1g
156         - Deal correctly with 64 bit PCI address registers on Linux 2.2.
157           Pointed out by Leonard Zubkoff.
158         - Allow to tune request_irq() flags from the boot command line using 
159           ncr53c8xx=irqm:??, as follows:
160           a) If bit 0x10 is set in irqm, SA_SHIRQ flag is not used.
161           b) If bit 0x20 is set in irqm, SA_INTERRUPT flag is not used.
162           By default the driver uses both SA_SHIRQ and SA_INTERRUPT.
163           Option 'ncr53c8xx=irqm:0x20' may be used when an IRQ is shared by 
164           a 53C8XX adapter and a network board.
165         - Tiny mispelling fixed (ABORT instead of ABRT). Was fortunately 
166           harmless.
167         - Negotiate SYNC data transfers with CCS devices.
168 
169 Sat Jan 16  17:30 1999 Gerard Roudier (groudier@club-internet.fr)
170         * revision 3.1f
171         - Some PCI fix-ups not needed any more for PPC (from Cort).
172         - Cache line size set to 16 DWORDS for Sparc   (from DSM).
173         - Waiting list look-up didn't work for the first command of the list.
174         - Remove 2 useless lines of code.
175 
176 Sun Dec 13  18:00 1998 Gerard Roudier (groudier@club-internet.fr)
177         * revision 3.1e
178         - Same work-around as for the 53c876 rev <= 0x15 for 53c896 rev 1:
179           Disable overlapped arbitration. This will not make difference 
180           since the chip has on-chip RAM.
181 
182 Thu Nov 26  22:00 1998 Gerard Roudier (groudier@club-internet.fr)
183         * revision 3.1d
184         - The SISL RAID change requires now remap_pci_mem() stuff to be 
185           compiled for __i386__ when normal IOs are used.
186         - Minor spelling fixes in doc files.
187 
188 Sat Nov 21  18:00 1998 Gerard Roudier (groudier@club-internet.fr)
189         * revision 3.1c
190         - Ignore chips that are driven by SISL RAID (DAC 960).
191           Change sent by Leonard Zubkoff and slightly reworked.
192         - Still a buglet in the tags initial settings that needed to be fixed.
193           It was not possible to disable TGQ at system startup for devices 
194           that claim TGQ support. The driver used at least 2 for the queue 
195           depth but did'nt keep track of user settings for tags depth lower 
196           than 2.
197 
198 Wed Nov 11  10:00 1998 Gerard Roudier (groudier@club-internet.fr)
199         * revision 3.1b
200         - The driver was unhappy when configured with default_tags > MAX_TAGS
201           Hopefully doubly-fixed.
202         - Update the Configure.help driver section that speaks of TAGS.
203 
204 Wed Oct 21 21:00 1998 Gerard Roudier (groudier@club-internet.fr)
205         * revision 3.1a
206         - Changes from Eddie Dost for Sparc and Alpha:
207           ioremap/iounmap support for Sparc.
208           pcivtophys changed to bus_dvma_to_phys.
209         - Add the 53c876 description to the chip table. This is only usefull 
210           for printing the right name of the controller.
211         - DEL-441 Item 2 work-around for the 53c876 rev <= 5 (0x15).
212         - Add additionnal checking of INQUIRY data:
213           Check INQUIRY data received length is at least 7. Byte 7 of 
214           inquiry data contains device features bits and the driver might 
215           be confused by garbage. Also check peripheral qualifier.
216         - Cleanup of the SCSI tasks management:
217           Remove the special case for 32 tags. Now the driver only uses the 
218           scheme that allows up to 64 tags per LUN.
219           Merge some code from the 896 driver.
220           Use a 1,3,5,...MAXTAGS*2+1 tag numbering. Previous driver could  
221           use any tag number from 1 to 253 and some non conformant devices  
222           might have problems with large tag numbers.
223         - 'no_sync' changed to 'no_disc' in the README file. This is an old 
224           and trivial mistake that seems to demonstrate the README file is 
225           not often read. :)
226 
227 Sun Oct  4 14:00 1998 Gerard Roudier (groudier@club-internet.fr)
228         * revision 3.0i
229         - Cosmetic changes for sparc (but not for the driver) that needs  
230           __irq_itoa() to be used for printed IRQ value to be understandable.
231         - Some problems with the driver that didn't occur using driver 2.5f 
232           were due to a SCSI selection problem triggered by a clearly 
233           documented feature that in fact seems not to work: (53C8XX chips  
234           are claimed by the manuals to be able to execute SCSI scripts just 
235           after abitration while the SCSI core is performing SCSI selection).
236           This optimization is broken and has been removed.
237         - Some broken scsi devices are confused when a negotiation is started 
238           on a LUN that does not correspond to a real device. According to 
239           SCSI specs, this is a device firmware bug. This has been worked 
240           around by only starting negotiation if the LUN has previously be 
241           used for at least 1 successful SCSI command.
242         - The 'last message sent' printed out on M_REJECT message reception 
243           was read from the SFBR i/o register after the previous message had 
244           been sent. 
245           This was not correct and affects all previous driver versions and 
246           the original FreeBSD one as well. The SCSI scripts has been fixed 
247           so that it now provides the right information to the C code.
248 
249 Sat Jul 18 13:00 1998 Gerard Roudier (groudier@club-internet.fr)
250         * revision 3.0g
251         - Preliminary fixes for Big Endian (sent by Eddie C. Dost).
252           Big Endian architectures should work again with the driver.
253           Eddie's patch has been partially applied since current 2.1.109 
254           does not have all the Sparc changes of the vger tree.
255         - Use of BITS_PER_LONG instead of (~0UL == 0xffffffffUL) has fixed
256           the problem observed when the driver was compiled using EGCS or 
257           PGCC.
258 
259 Mon Jul 13 20:00 1998 Gerard Roudier (groudier@club-internet.fr)
260         * revision 3.0f
261         - Some spelling fixes.
262         - linux/config.h misplaced in ncr53c8xx.h
263         - MODULE_PARM stuff added for linux 2.1.
264         - check INQUIRY response data format is exactly 2. 
265         - use BITS_PER_LONG if defined. 
266 
267 Sun Jun 28 12:00 1998 Gerard Roudier (groudier@club-internet.fr)
268         * revision 3.0e
269         - Some cleanup, spelling fixes, version checks, documentations 
270           changes, etc ...
271 
272 Sat Jun 20 20:00 1998 Gerard Roudier (groudier@club-internet.fr)
273         * revision 3.0c
274         - Add a boot setup option that allows to set up device queue depths 
275           at boot-up. This option is very usefull since Linux does not 
276           allow to change scsi device queue depth once the system has been 
277           booted up.
278 
279 Sun Jun 15 23:00 1998 Gerard Roudier (groudier@club-internet.fr)
280         * revision 3.0a
281         - Support for up to 64 TAGS per LUN.
282         - Rewrite the TARGET vs LUN capabilities management.
283           CmdQueue is now handled as a LUN capability as it shall be.
284           This also fixes a bug triggered when disabling tagged command 
285           queuing for a device that had this feature enabled.
286         - Remove the ncr_opennings() stuff that was useless under Linux 
287           and hard to understand to me.
288         - Add "setverbose" procfs driver command. It allows to tune 
289           verbose level after boot-up. Setting this level to zero, for 
290           example avoid flooding the syslog file.
291         - Add KERN_XXX to some printk's.
292 
293 Tue Jun 10 23:00 1998 Gerard Roudier (groudier@club-internet.fr)
294         * revision 3.0
295         - Linux config changes for 2.0.34:
296           Remove NVRAM detection config option. This option is now enabled 
297           by default but can be disabled by editing the driver header file.
298           Add a PROFILE config option.
299         - Update Configure.help
300         - Add calls to new function mdelay() for milli-seconds delay if 
301           kernel version >= 2.1.105.
302         - Replace all printf(s) by printk(s). After all, the ncr53c8xx is 
303           a driver for Linux.
304         - Perform auto-sense on COMMAND TERMINATED. Not sure it is usefull.
305         - Some other minor changes.
306 
307 Tue Jun 4 23:00 1998 Gerard Roudier (groudier@club-internet.fr)
308         * revision 2.6n
309         - Code cleanup and simplification:
310           Remove kernel 1.2.X and 1.3.X support.
311           Remove the _old_ target capabilities table.
312           Remove the error recovery code that have'nt been really usefull.
313           Use a single alignment boundary (CACHE_LINE_SIZE) for data 
314           structures.
315         - Several aggressive SCRIPTS optimizations and changes:
316           Reselect SCRIPTS code rewritten.
317           Support for selection/reselection without ATN.
318           And some others.
319         - Miscallaneous changes in the C code:
320           Count actual number of CCB queued to the controller (future use).
321           Lots of other minor changes.
322 
323 Wed May 13 20:00 1998 Gerard Roudier (groudier@club-internet.fr)
324         * revision 2.6m
325         - Problem of missed SCSI bus reset with the 53C895 fixed by 
326           Richard Waltham. The 53C895 needs about 650 us for the bus 
327           mode to settle. Delays used while resetting the controller 
328           and the bus have been adjusted. Thanks Richard!
329         - Some simplification for 64 bit arch done ccb address testing.
330         - Add a check of the MSG_OUT phase after Selection with ATN.
331         - The new tagged queue stuff seems ok, so some informationnal 
332           message have been conditionned by verbose >= 3.
333         - Donnot reset if a SBMC interrupt reports the same bus mode.
334         - Print out the whole driver set-up. Some options were missing and 
335           the print statement was misplaced for modules.
336         - Ignore a SCSI parity interrupt if the chip is not connected to 
337           the SCSI bus.
338 
339 Sat May 1 16:00 1998 Gerard Roudier (groudier@club-internet.fr)
340         * revision 2.6l
341         - Add CCB done queue support for Alpha and perhaps some other 
342           architectures.
343         - Add some barriers to enforce memory ordering for x86 and 
344           Alpha architectures.
345         - Fix something that looks like an old bug in the nego SIR 
346           interrupt code in case of negotiation failure.
347 
348 Sat Apr 25 21:00 1998 Gerard Roudier (groudier@club-internet.fr)
349         * revision 2.6k
350         - Remove all accesses to the on-chip RAM from the C code:
351           Use SCRIPTS to load the on-chip RAM.
352           Use SCRIPTS to repair the start queue on selection timeout.
353           Use the copy of script in main memory to calculate the chip 
354           context on phase mismatch.
355         - The above allows now to use the on-chip RAM without requiring 
356           to get access to the on-chip RAM from the C code. This makes 
357           on-chip RAM useable for linux-1.2.13 and for Linux-Alpha for 
358           instance.
359         - Some simplifications and cleanups in the SCRIPTS and C code.
360         - Buglet fixed in parity error recovery SCRIPTS (never tested).
361         - Minor updates in README.ncr53c8xx.
362 
363 Wed Apr 15 21:00 1998 Gerard Roudier (groudier@club-internet.fr)
364         * revision 2.6j
365         - Incorporate changes from linux-2.1.95 ncr53c8xx driver version.
366         - Add SMP support for linux-2.1.95 and above.
367         - Fix a bug when QUEUE FULL is returned and no commands are 
368           disconnected. This happens with Atlas I / L912 and may happen 
369           with Atlas II / LXY4.
370         - Nail another one on CHECK condition when requeuing the command 
371           for auto-sense.
372         - Call scsi_done() for all completed commands after interrupt 
373           handling.
374         - Increase the done queue to 24 entries.
375 
376 Sat Apr 4 20:00 1998 Gerard Roudier (groudier@club-internet.fr)
377         * revision 2.6i
378         - CTEST0 is used by the 53C885 for Power Management and 
379           priority setting between the 2 functions.
380           Use SDID instead as actual target number. Just have had to 
381           overwrite it with SSID on reselection.
382         - Split DATA_IN and DATA_OUT scripts into 2 sub-scripts.
383           64 segments are moved from on-chip RAM scripts.
384           If more segments, a script in main memory is used for the 
385           additionnal segments.
386         - Since the SCRIPTS processor continues SCRIPTS execution after 
387           having won arbitration, do some stuff prior to testing any SCSI 
388           phase on reselection. This should have the vertue to process 
389           scripts in parallel with the SCSI core performing selection.
390         - Increase the done queue to 12 entries.
391 
392 Sun Mar 29 12:00 1998 Gerard Roudier (groudier@club-internet.fr)
393         * revision 2.6h
394         - Some fixes.
395 
396 Tue Mar 26 23:00 1998 Gerard Roudier (groudier@club-internet.fr)
397         * revision 2.6g
398         - New done queue. 8 entries by default (6 always useable).
399           Can be increased if needed.
400         - Resources management using doubly linked queues.
401         - New auto-sense and QUEUE FULL handling that does not need to 
402           stall the NCR queue any more.
403         - New CCB starvation avoiding algorithm.
404         - Prepare CCBs for SCSI commands that cannot be queued, instead of 
405           inserting these commands into the waiting list. The waiting list 
406           is now only used while resetting and when memory for CCBs is not 
407           yet available?
408 
409 Sun Feb 8 22:00 1998 Gerard Roudier (groudier@club-internet.fr)
410         * revision 2.6f
411         - Some fixes in order to really support the 53C895, at least with 
412           FAST-20 devices.
413         - Heavy changes in the target/lun resources management to allow 
414           the scripts to jump directly to the CCB on reselection instead 
415           of walking on the lun CCBs list. Up to 32 tags per lun are now 
416           supported without script processor and PCI traffic overhead.
417 
418 Sun Jan 11 22:00 1998 Gerard Roudier (groudier@club-internet.fr)
419         * revision 2.6d
420         - new (different ?) implementation of the start queue:
421           Use a simple CALL to a launch script in the CCB.
422         - implement a minimal done queue (1 entry :-) ).
423           this avoid scanning all CCBs on INT FLY (Only scan all CCBs, on 
424           overflow). Hit ratio is better than 99.9 % on my system, so no 
425           need to have a larger done queue.
426         - generalization of the restart of CCB on special condition as 
427           Abort, QUEUE FULL, CHECK CONDITION.
428           This has been called 'silly scheduler'.
429         - make all the profiling code conditionned by a config option.
430           This spare some PCI traffic and C code when this feature is not 
431           needed.
432         - handle more cleanly the situation where direction is unknown.
433           The pointers patching is now performed by the SCRIPTS processor.
434         - remove some useless scripts instructions.
435 
436         Ported from driver 2.5 series:
437         ------------------------------
438         - Use FAST-5 instead of SLOW for slow scsi devices according to 
439           new SPI-2 draft.
440         - Make some changes in order to accomodate with 875 rev <= 3 
441           device errata listing 397. Minor consequences are:
442           . Leave use of PCI Write and Invalidate under user control.
443             Now, by default the driver does not enable PCI MWI and option
444             'specf:y' is required in order to enable this feature.
445           . Memory Read Line is not enabled for 875 and 875-like chips.
446           . Programmed burst length set to 64 DWORDS (instead of 128).
447             (Note: SYMBIOS uses 32 DWORDS for the SDMS BIOS)
448         - Add 'buschk' boot option.
449           This option enables checking of SCSI BUS data lines after SCSI 
450           RESET (set by default). (Submitted by Richard Waltham).
451         - Update the README file.
452         - Dispatch CONDITION MET and RESERVATION CONFLICT scsi status 
453           as OK driver status.
454         - Update the README file and the Symbios NVRAM format definition 
455           with removable media flags values (available with SDMS 4.09).
456         - Several PCI configuration registers fix-ups for powerpc.
457           (Patch sent by Cort).

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

This page was automatically generated by the LXR engine.
Visit the LXR main site for more information.