OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [trunk/] [rc203soc/] [sw/] [uClinux/] [drivers/] [scsi/] [ChangeLog.ncr53c8xx] - Blame information for rev 1765

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 1626 jcastillo
Sun Dec 13  18:00 1998 Gerard Roudier (groudier@club-internet.fr)
2
        * revision 3.1e
3
        - Same work-around as for the 53c876 rev <= 0x15 for 53c896 rev 1:
4
          Disable overlapped arbitration. This will not make difference
5
          since the chip has on-chip RAM.
6
 
7
Thu Nov 26  22:00 1998 Gerard Roudier (groudier@club-internet.fr)
8
        * revision 3.1d
9
        - The SISL RAID change requires now remap_pci_mem() stuff to be
10
          compiled for __i386__ when normal IOs are used.
11
        - Minor spelling fixes in doc files.
12
 
13
Sat Nov 21  18:00 1998 Gerard Roudier (groudier@club-internet.fr)
14
        * revision 3.1c
15
        - Ignore chips that are driven by SISL RAID (DAC 960).
16
          Change sent by Leonard Zubkoff and slightly reworked.
17
        - Still a buglet in the tags initial settings that needed to be fixed.
18
          It was not possible to disable TGQ at system startup for devices
19
          that claim TGQ support. The driver used at least 2 for the queue
20
          depth but did'nt keep track of user settings for tags depth lower
21
          than 2.
22
 
23
Wed Nov 11  10:00 1998 Gerard Roudier (groudier@club-internet.fr)
24
        * revision 3.1b
25
        - The driver was unhappy when configured with default_tags > MAX_TAGS
26
          Hopefully doubly-fixed.
27
        - Update the Configure.help driver section that speaks of TAGS.
28
 
29
Wed Oct 21 21:00 1998 Gerard Roudier (groudier@club-internet.fr)
30
        * revision 3.1a
31
        - Changes from Eddie Dost for Sparc and Alpha:
32
          ioremap/iounmap support for Sparc.
33
          pcivtophys changed to bus_dvma_to_phys.
34
        - Add the 53c876 description to the chip table. This is only usefull
35
          for printing the right name of the controller.
36
        - DEL-441 Item 2 work-around for the 53c876 rev <= 5 (0x15).
37
        - Add additionnal checking of INQUIRY data:
38
          Check INQUIRY data received length is at least 7. Byte 7 of
39
          inquiry data contains device features bits and the driver might
40
          be confused by garbage. Also check peripheral qualifier.
41
        - Cleanup of the SCSI tasks management:
42
          Remove the special case for 32 tags. Now the driver only uses the
43
          scheme that allows up to 64 tags per LUN.
44
          Merge some code from the 896 driver.
45
          Use a 1,3,5,...MAXTAGS*2+1 tag numbering. Previous driver could
46
          use any tag number from 1 to 253 and some non conformant devices
47
          might have problems with large tag numbers.
48
        - 'no_sync' changed to 'no_disc' in the README file. This is an old
49
          and trivial mistake that seems to demonstrate the README file is
50
          not often read. :)
51
 
52
Sun Oct  4 14:00 1998 Gerard Roudier (groudier@club-internet.fr)
53
        * revision 3.0i
54
        - Cosmetic changes for sparc (but not for the driver) that needs
55
          __irq_itoa() to be used for printed IRQ value to be understandable.
56
        - Some problems with the driver that didn't occur using driver 2.5f
57
          were due to a SCSI selection problem triggered by a clearly
58
          documented feature that in fact seems not to work: (53C8XX chips
59
          are claimed by the manuals to be able to execute SCSI scripts just
60
          after abitration while the SCSI core is performing SCSI selection).
61
          This optimization is broken and has been removed.
62
        - Some broken scsi devices are confused when a negotiation is started
63
          on a LUN that does not correspond to a real device. According to
64
          SCSI specs, this is a device firmware bug. This has been worked
65
          around by only starting negotiation if the LUN has previously be
66
          used for at least 1 successful SCSI command.
67
        - The 'last message sent' printed out on M_REJECT message reception
68
          was read from the SFBR i/o register after the previous message had
69
          been sent.
70
          This was not correct and affects all previous driver versions and
71
          the original FreeBSD one as well. The SCSI scripts has been fixed
72
          so that it now provides the right information to the C code.
73
 
74
Sat Jul 18 13:00 1998 Gerard Roudier (groudier@club-internet.fr)
75
        * revision 3.0g
76
        - Preliminary fixes for Big Endian (sent by Eddie C. Dost).
77
          Big Endian architectures should work again with the driver.
78
          Eddie's patch has been partially applied since current 2.1.109
79
          does not have all the Sparc changes of the vger tree.
80
        - Use of BITS_PER_LONG instead of (~0UL == 0xffffffffUL) has fixed
81
          the problem observed when the driver was compiled using EGCS or
82
          PGCC.
83
 
84
Mon Jul 13 20:00 1998 Gerard Roudier (groudier@club-internet.fr)
85
        * revision 3.0f
86
        - Some spelling fixes.
87
        - linux/config.h misplaced in ncr53c8xx.h
88
        - MODULE_PARM stuff added for linux 2.1.
89
        - check INQUIRY response data format is exactly 2.
90
        - use BITS_PER_LONG if defined.
91
 
92
Sun Jun 28 12:00 1998 Gerard Roudier (groudier@club-internet.fr)
93
        * revision 3.0e
94
        - Some cleanup, spelling fixes, version checks, documentations
95
          changes, etc ...
96
 
97
Sat Jun 20 20:00 1998 Gerard Roudier (groudier@club-internet.fr)
98
        * revision 3.0c
99
        - Add a boot setup option that allows to set up device queue depths
100
          at boot-up. This option is very usefull since Linux does not
101
          allow to change scsi device queue depth once the system has been
102
          booted up.
103
 
104
Sun Jun 15 23:00 1998 Gerard Roudier (groudier@club-internet.fr)
105
        * revision 3.0a
106
        - Support for up to 64 TAGS per LUN.
107
        - Rewrite the TARGET vs LUN capabilities management.
108
          CmdQueue is now handled as a LUN capability as it shall be.
109
          This also fixes a bug triggered when disabling tagged command
110
          queuing for a device that had this feature enabled.
111
        - Remove the ncr_opennings() stuff that was useless under Linux
112
          and hard to understand to me.
113
        - Add "setverbose" procfs driver command. It allows to tune
114
          verbose level after boot-up. Setting this level to zero, for
115
          example avoid flooding the syslog file.
116
        - Add KERN_XXX to some printk's.
117
 
118
Tue Jun 10 23:00 1998 Gerard Roudier (groudier@club-internet.fr)
119
        * revision 3.0
120
        - Linux config changes for 2.0.34:
121
          Remove NVRAM detection config option. This option is now enabled
122
          by default but can be disabled by editing the driver header file.
123
          Add a PROFILE config option.
124
        - Update Configure.help
125
        - Add calls to new function mdelay() for milli-seconds delay if
126
          kernel version >= 2.1.105.
127
        - Replace all printf(s) by printk(s). After all, the ncr53c8xx is
128
          a driver for Linux.
129
        - Perform auto-sense on COMMAND TERMINATED. Not sure it is usefull.
130
        - Some other minor changes.
131
 
132
Tue Jun 4 23:00 1998 Gerard Roudier (groudier@club-internet.fr)
133
        * revision 2.6n
134
        - Code cleanup and simplification:
135
          Remove kernel 1.2.X and 1.3.X support.
136
          Remove the _old_ target capabilities table.
137
          Remove the error recovery code that have'nt been really usefull.
138
          Use a single alignment boundary (CACHE_LINE_SIZE) for data
139
          structures.
140
        - Several aggressive SCRIPTS optimizations and changes:
141
          Reselect SCRIPTS code rewritten.
142
          Support for selection/reselection without ATN.
143
          And some others.
144
        - Miscallaneous changes in the C code:
145
          Count actual number of CCB queued to the controller (future use).
146
          Lots of other minor changes.
147
 
148
Wed May 13 20:00 1998 Gerard Roudier (groudier@club-internet.fr)
149
        * revision 2.6m
150
        - Problem of missed SCSI bus reset with the 53C895 fixed by
151
          Richard Waltham. The 53C895 needs about 650 us for the bus
152
          mode to settle. Delays used while resetting the controller
153
          and the bus have been adjusted. Thanks Richard!
154
        - Some simplification for 64 bit arch done ccb address testing.
155
        - Add a check of the MSG_OUT phase after Selection with ATN.
156
        - The new tagged queue stuff seems ok, so some informationnal
157
          message have been conditionned by verbose >= 3.
158
        - Donnot reset if a SBMC interrupt reports the same bus mode.
159
        - Print out the whole driver set-up. Some options were missing and
160
          the print statement was misplaced for modules.
161
        - Ignore a SCSI parity interrupt if the chip is not connected to
162
          the SCSI bus.
163
 
164
Sat May 1 16:00 1998 Gerard Roudier (groudier@club-internet.fr)
165
        * revision 2.6l
166
        - Add CCB done queue support for Alpha and perhaps some other
167
          architectures.
168
        - Add some barriers to enforce memory ordering for x86 and
169
          Alpha architectures.
170
        - Fix something that looks like an old bug in the nego SIR
171
          interrupt code in case of negotiation failure.
172
 
173
Sat Apr 25 21:00 1998 Gerard Roudier (groudier@club-internet.fr)
174
        * revision 2.6k
175
        - Remove all accesses to the on-chip RAM from the C code:
176
          Use SCRIPTS to load the on-chip RAM.
177
          Use SCRIPTS to repair the start queue on selection timeout.
178
          Use the copy of script in main memory to calculate the chip
179
          context on phase mismatch.
180
        - The above allows now to use the on-chip RAM without requiring
181
          to get access to the on-chip RAM from the C code. This makes
182
          on-chip RAM useable for linux-1.2.13 and for Linux-Alpha for
183
          instance.
184
        - Some simplifications and cleanups in the SCRIPTS and C code.
185
        - Buglet fixed in parity error recovery SCRIPTS (never tested).
186
        - Minor updates in README.ncr53c8xx.
187
 
188
Wed Apr 15 21:00 1998 Gerard Roudier (groudier@club-internet.fr)
189
        * revision 2.6j
190
        - Incorporate changes from linux-2.1.95 ncr53c8xx driver version.
191
        - Add SMP support for linux-2.1.95 and above.
192
        - Fix a bug when QUEUE FULL is returned and no commands are
193
          disconnected. This happens with Atlas I / L912 and may happen
194
          with Atlas II / LXY4.
195
        - Nail another one on CHECK condition when requeuing the command
196
          for auto-sense.
197
        - Call scsi_done() for all completed commands after interrupt
198
          handling.
199
        - Increase the done queue to 24 entries.
200
 
201
Sat Apr 4 20:00 1998 Gerard Roudier (groudier@club-internet.fr)
202
        * revision 2.6i
203
        - CTEST0 is used by the 53C885 for Power Management and
204
          priority setting between the 2 functions.
205
          Use SDID instead as actual target number. Just have had to
206
          overwrite it with SSID on reselection.
207
        - Split DATA_IN and DATA_OUT scripts into 2 sub-scripts.
208
          64 segments are moved from on-chip RAM scripts.
209
          If more segments, a script in main memory is used for the
210
          additionnal segments.
211
        - Since the SCRIPTS processor continues SCRIPTS execution after
212
          having won arbitration, do some stuff prior to testing any SCSI
213
          phase on reselection. This should have the vertue to process
214
          scripts in parallel with the SCSI core performing selection.
215
        - Increase the done queue to 12 entries.
216
 
217
Sun Mar 29 12:00 1998 Gerard Roudier (groudier@club-internet.fr)
218
        * revision 2.6h
219
        - Some fixes.
220
 
221
Tue Mar 26 23:00 1998 Gerard Roudier (groudier@club-internet.fr)
222
        * revision 2.6g
223
        - New done queue. 8 entries by default (6 always useable).
224
          Can be increased if needed.
225
        - Resources management using doubly linked queues.
226
        - New auto-sense and QUEUE FULL handling that does not need to
227
          stall the NCR queue any more.
228
        - New CCB starvation avoiding algorithm.
229
        - Prepare CCBs for SCSI commands that cannot be queued, instead of
230
          inserting these commands into the waiting list. The waiting list
231
          is now only used while resetting and when memory for CCBs is not
232
          yet available?
233
 
234
Sun Feb 8 22:00 1998 Gerard Roudier (groudier@club-internet.fr)
235
        * revision 2.6f
236
        - Some fixes in order to really support the 53C895, at least with
237
          FAST-20 devices.
238
        - Heavy changes in the target/lun resources management to allow
239
          the scripts to jump directly to the CCB on reselection instead
240
          of walking on the lun CCBs list. Up to 32 tags per lun are now
241
          supported without script processor and PCI traffic overhead.
242
 
243
Sun Jan 11 22:00 1998 Gerard Roudier (groudier@club-internet.fr)
244
        * revision 2.6d
245
        - new (different ?) implementation of the start queue:
246
          Use a simple CALL to a launch script in the CCB.
247
        - implement a minimal done queue (1 entry :-) ).
248
          this avoid scanning all CCBs on INT FLY (Only scan all CCBs, on
249
          overflow). Hit ratio is better than 99.9 % on my system, so no
250
          need to have a larger done queue.
251
        - generalization of the restart of CCB on special condition as
252
          Abort, QUEUE FULL, CHECK CONDITION.
253
          This has been called 'silly scheduler'.
254
        - make all the profiling code conditionned by a config option.
255
          This spare some PCI traffic and C code when this feature is not
256
          needed.
257
        - handle more cleanly the situation where direction is unknown.
258
          The pointers patching is now performed by the SCRIPTS processor.
259
        - remove some useless scripts instructions.
260
 
261
        Ported from driver 2.5 series:
262
        ------------------------------
263
        - Use FAST-5 instead of SLOW for slow scsi devices according to
264
          new SPI-2 draft.
265
        - Make some changes in order to accomodate with 875 rev <= 3
266
          device errata listing 397. Minor consequences are:
267
          . Leave use of PCI Write and Invalidate under user control.
268
            Now, by default the driver does not enable PCI MWI and option
269
            'specf:y' is required in order to enable this feature.
270
          . Memory Read Line is not enabled for 875 and 875-like chips.
271
          . Programmed burst length set to 64 DWORDS (instead of 128).
272
            (Note: SYMBIOS uses 32 DWORDS for the SDMS BIOS)
273
        - Add 'buschk' boot option.
274
          This option enables checking of SCSI BUS data lines after SCSI
275
          RESET (set by default). (Submitted by Richard Waltham).
276
        - Update the README file.
277
        - Dispatch CONDITION MET and RESERVATION CONFLICT scsi status
278
          as OK driver status.
279
        - Update the README file and the Symbios NVRAM format definition
280
          with removable media flags values (available with SDMS 4.09).
281
        - Several PCI configuration registers fix-ups for powerpc.
282
          (Patch sent by Cort).

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.