diff options
author | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-04-16 18:20:36 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-04-16 18:20:36 -0400 |
commit | 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 (patch) | |
tree | 0bba044c4ce775e45a88a51686b5d9f90697ea9d /Documentation/scsi/ChangeLog.sym53c8xx |
Linux-2.6.12-rc2v2.6.12-rc2
Initial git repository build. I'm not bothering with the full history,
even though we have it. We can create a separate "historical" git
archive of that later if we want to, and in the meantime it's about
3.2GB when imported into git - space that would just make the early
git days unnecessarily complicated, when we don't have a lot of good
infrastructure for it.
Let it rip!
Diffstat (limited to 'Documentation/scsi/ChangeLog.sym53c8xx')
-rw-r--r-- | Documentation/scsi/ChangeLog.sym53c8xx | 593 |
1 files changed, 593 insertions, 0 deletions
diff --git a/Documentation/scsi/ChangeLog.sym53c8xx b/Documentation/scsi/ChangeLog.sym53c8xx new file mode 100644 index 000000000000..ef985ec348e6 --- /dev/null +++ b/Documentation/scsi/ChangeLog.sym53c8xx | |||
@@ -0,0 +1,593 @@ | |||
1 | Sat May 12 12:00 2001 Gerard Roudier (groudier@club-internet.fr) | ||
2 | * version sym53c8xx-1.7.3c | ||
3 | - Ensure LEDC bit in GPCNTL is cleared when reading the NVRAM. | ||
4 | Fix sent by Stig Telfer <stig@api-networks.com>. | ||
5 | - Backport from SYM-2 the work-around that allows to support | ||
6 | hardwares that fail PCI parity checking. | ||
7 | - Check that we received at least 8 bytes of INQUIRY response | ||
8 | for byte 7, that contains device capabilities, to be valid. | ||
9 | - Define scsi_set_pci_device() as nil for kernel < 2.4.4. | ||
10 | - + A couple of minor changes. | ||
11 | |||
12 | Sat Apr 7 19:30 2001 Gerard Roudier (groudier@club-internet.fr) | ||
13 | * version sym53c8xx-1.7.3b | ||
14 | - Fix an unaligned LOAD from scripts (was used as dummy read). | ||
15 | - In ncr_soft_reset(), only try to ABORT the current operation | ||
16 | for chips that support SRUN bit in ISTAT1 and if SCRIPTS are | ||
17 | currently running, as 896 and 1010 manuals suggest. | ||
18 | - In the CCB abort path, do not assume that the CCB is currently | ||
19 | queued to SCRIPTS. This is not always true, notably after a | ||
20 | QUEUE FULL status or when using untagged commands. | ||
21 | |||
22 | Sun Mar 4 18:30 2001 Gerard Roudier (groudier@club-internet.fr) | ||
23 | * version sym53c8xx-1.7.3a | ||
24 | - Fix an issue in the ncr_int_udc() (unexpected disconnect) | ||
25 | handling. If the DSA didn't match a CCB, a bad write to | ||
26 | memory could happen. | ||
27 | |||
28 | Mon Feb 12 22:30 2001 Gerard Roudier (groudier@club-internet.fr) | ||
29 | * version sym53c8xx-1.7.3 | ||
30 | - Support for hppa. | ||
31 | Tiny patch sent to me by Robert Hirst. | ||
32 | - Tiny patch for ia64 sent to me by Pamela Delaney. | ||
33 | |||
34 | Tue Feb 6 13:30 2001 Gerard Roudier (groudier@club-internet.fr) | ||
35 | * version sym53c8xx-1.7.3-pre1 | ||
36 | - Call pci_enable_device() as AC wants this to be done. | ||
37 | - Get both the BAR cookies used by CPU and actual PCI BAR | ||
38 | values used from SCRIPTS. Recent PCI chips are able to | ||
39 | access themselves using internal cycles, but they compare | ||
40 | BAR values to destination address to make decision. | ||
41 | Earlier chips simply use PCI transactions to access IO | ||
42 | registers from SCRIPTS. | ||
43 | The bus_dvma_to_mem() interface that reverses the actual | ||
44 | PCI BAR value from the BAR cookie is now useless. | ||
45 | This point had been discussed at the list and the solution | ||
46 | got approved by PCI code maintainer (Martin Mares). | ||
47 | - Merge changes for linux-2.4 that declare the host template | ||
48 | in the driver object also when the driver is statically | ||
49 | linked with the kernel. | ||
50 | - Increase SCSI message size up to 12 bytes, given that 8 | ||
51 | bytes was not enough for the PPR message (fix). | ||
52 | - Add field 'maxoffs_st' (max offset for ST data transfers). | ||
53 | The C1010 supports offset 62 in DT mode but only 31 in | ||
54 | ST mode, to 2 different values for the max SCSI offset | ||
55 | are needed. Replace the obviously wrong masking of the | ||
56 | offset against 0x1f for ST mode by a lowering to | ||
57 | maxoffs_st of the SCSI offset in ST mode. | ||
58 | - Refine a work-around for the C1010-66. Revision 1 does | ||
59 | not requires extra cycles in DT DATA OUT phase. | ||
60 | - Add a missing endian-ization (abrt_tbl.addr). | ||
61 | - Minor clean-up in the np structure for fields accessed | ||
62 | from SCRIPTS that requires special alignments. | ||
63 | |||
64 | Sun Sep 24 21:30 2000 Gerard Roudier (groudier@club-internet.fr) | ||
65 | * version sym53c8xx-1.7.2 | ||
66 | - Remove the hack for PPC added in previous driver version. | ||
67 | - Add FE_DAC feature bit to distinguish between 64 bit PCI | ||
68 | addressing (FE_DAC) and 64 bit PCI interface (FE_64BIT). | ||
69 | - Get rid of the boot command line "ultra:" argument. | ||
70 | This parameter wasn't that clever since we can use "sync:" | ||
71 | for Ultra/Ultra2 settings, and for Ultra3 we may want to | ||
72 | pass PPR options (for now only DT clocking). | ||
73 | - Add FE_VARCLK feature bit that indicates that SCSI clock | ||
74 | frequency may vary depending on board design and thus, | ||
75 | the driver should try to evaluate the SCSI clock. | ||
76 | - Simplify the way the driver determine the SCSI clock: | ||
77 | ULTRA3 -> 160 MHz, ULTRA2 -> 80 MHz otherwise 40 MHz. | ||
78 | Measure the SCSI clock frequency if FE_VARCLK is set. | ||
79 | - Remove FE_CLK80 feature bit that got useless. | ||
80 | - Add support for the SYM53C875A (Pamela Delaney). | ||
81 | |||
82 | Wed Jul 26 23:30 2000 Gerard Roudier (groudier@club-internet.fr) | ||
83 | * version sym53c8xx-1.7.1 | ||
84 | - Provide OpenFirmare path through the proc FS on PPC. | ||
85 | - Download of on-chip SRAM using memcpy_toio() doesn't work | ||
86 | on PPC. Restore previous method (MEMORY MOVE from SCRIPTS). | ||
87 | - Remove trailing argument #2 from a couple of #undefs. | ||
88 | |||
89 | Sun Jul 09 16:30 2000 Gerard Roudier (groudier@club-internet.fr) | ||
90 | * version sym53c8xx-1.7.0 | ||
91 | - Remove the PROFILE C and SCRIPTS code. | ||
92 | This facility was not this useful and thus was not longer | ||
93 | desirable given the increasing complexity of the driver code. | ||
94 | - Merges from FreeBSD sym-1.6.2 driver: | ||
95 | * Clarify memory barriers needed by the driver for architectures | ||
96 | that implement a weak memory ordering. | ||
97 | * Simpler handling of illegal phases and data overrun from | ||
98 | SCRIPTS. These errors are now immediately reported to | ||
99 | the C code by an interrupt. | ||
100 | * Sync the residual handling code with sym-1.6.2 and now | ||
101 | report `resid' to user for linux version >= 2.3.99 | ||
102 | - General cleanup: | ||
103 | Move definitions for barriers and IO/MMIO operations to the | ||
104 | sym53c8xx_defs.h header files. They are now shared by the | ||
105 | both drivers. | ||
106 | Remove unused options that claimed to optimize for the 896. | ||
107 | If fact, they were not this clever. :) | ||
108 | Use SCSI_NCR_IOMAPPED instead of NCR_IOMAPPED. | ||
109 | Remove a couple of unused fields from data structures. | ||
110 | |||
111 | Thu May 11 12:40 2000 Pam Delaney (pam.delaney@lsil.com) | ||
112 | * version sym53c8xx-1.6b | ||
113 | - Merged version. | ||
114 | |||
115 | Mon Apr 24 12:00 2000 Gerard Roudier (groudier@club-internet.fr) | ||
116 | * version sym53c8xx-1.5m | ||
117 | - Return value 1 (instead of 0) from the driver setup routine. | ||
118 | - Do not enable PCI DAC cycles. This just broke support for | ||
119 | SYM534C896 on sparc64. Problem fixed by David S. Miller. | ||
120 | |||
121 | Fri Apr 14 9:00 2000 Pam Delaney (pam.delaney@lsil.com) | ||
122 | * version sym53c8xx-1.6b-9 | ||
123 | - Added 53C1010_66 support. | ||
124 | - Small fix to integrity checking code. | ||
125 | - Removed requirement for integrity checking if want to run | ||
126 | at ultra 3. | ||
127 | |||
128 | Sat Apr 1 12:00 2000 Gerard Roudier (groudier@club-internet.fr) | ||
129 | * version sym53c8xx-1.5l | ||
130 | - Tiny change for __sparc__ appeared in 2.3.99-pre4.1 that | ||
131 | applies to cache line size (? Probably from David S Miller). | ||
132 | - Make sure no data transfer will happen for Scsi_Cmnd requests | ||
133 | that supply SCSI_DATA_NONE direction (this avoids some BUG() | ||
134 | statement in the PCI code when a data buffer is also supplied). | ||
135 | |||
136 | Sat Mar 11 12:00 2000 Gerard Roudier (groudier@club-internet.fr) | ||
137 | * version sym53c8xx-1.6b-5 | ||
138 | - Test against expected data transfer direction from SCRIPTS. | ||
139 | - Add support for the new dynamic dma mapping kernel interface. | ||
140 | Requires Linux-2.3.47 (tested with pre-2.3.47-6). | ||
141 | Many thanks to David S. Miller for his preliminary changes | ||
142 | that have been useful guidelines. | ||
143 | - Get data transfer direction from the scsi command structure | ||
144 | (Scsi_Cmnd) with kernels that provide this information. | ||
145 | |||
146 | Mon Mar 6 23:30 2000 Gerard Roudier (groudier@club-internet.fr) | ||
147 | * version sym53c8xx-1.5k | ||
148 | - Test against expected data transfer direction from SCRIPTS. | ||
149 | - Revert the change in 'ncr_flush_done_cmds()' but unmap the | ||
150 | scsi dma buffer prior to queueing the command to our done | ||
151 | list. | ||
152 | - Miscellaneous (minor) fixes in the code added in driver | ||
153 | version 1.5j. | ||
154 | |||
155 | Mon Feb 14 4:00 2000 Pam Delaney (pam.delaney@lsil.com) | ||
156 | * version sym53c8xx-pre-1.6b-2. | ||
157 | - Updated the SCRIPTS error handling of the SWIDE | ||
158 | condition - to remove any reads of the sbdl | ||
159 | register. Changes needed because the 896 and 1010 | ||
160 | chips will check parity in some special circumstances. | ||
161 | This will cause a parity error interrupt if not in | ||
162 | data phase. Changes based on those made in the | ||
163 | FreeBSD driver version 1.3.2. | ||
164 | |||
165 | Sun Feb 20 11:00 2000 Gerard Roudier (groudier@club-internet.fr) | ||
166 | * version sym53c8xx-1.5j | ||
167 | - Add support for the new dynamic dma mapping kernel interface. | ||
168 | Requires Linux-2.3.47 (tested with pre-2.3.47-6). | ||
169 | Many thanks to David S. Miller for his preliminary changes | ||
170 | that have been useful guidelines, for having reviewed the | ||
171 | code and having tested this driver version on Ultra-Sparc. | ||
172 | - 2 tiny bugs fixed in the PCI wrapper that provides support | ||
173 | for early kernels without pci device structure. | ||
174 | - Get data transfer direction from the scsi command structure | ||
175 | (Scsi_Cmnd) with kernels that provide this information. | ||
176 | - Fix an old bug that only affected 896 rev. 1 when driver | ||
177 | profile support option was set in kernel configuration. | ||
178 | |||
179 | Fri Jan 14 14:00 2000 Pam Delaney (pam.delaney@lsil.com) | ||
180 | * version sym53c8xx-pre-1.6b-1. | ||
181 | - Merge parallel driver series 1.61 and 1.5e | ||
182 | |||
183 | Tue Jan 11 14:00 2000 Pam Delaney (pam.delaney@lsil.com) | ||
184 | * version sym53c8xx-1.61 | ||
185 | - Added support for mounting disks on wide-narrow-wide | ||
186 | scsi configurations. | ||
187 | - Modified offset to be a maximum of 31 in ST mode, | ||
188 | 62 in DT mode. | ||
189 | - Based off of 1.60 | ||
190 | |||
191 | Mon Jan 10 10:00 2000 Pam Delaney (pam.delaney@lsil.com) | ||
192 | * version sym53c8xx-1.60 | ||
193 | - Added capability to use the integrity checking code | ||
194 | in the kernel (optional). | ||
195 | - Added PPR negotiation. | ||
196 | - Added support for 53C1010 Ultra 3 part. | ||
197 | - Based off of 1.5f | ||
198 | |||
199 | Sat Jan 8 22:00 2000 Gerard Roudier (groudier@club-internet.fr) | ||
200 | * version sym53c8xx-1.5h | ||
201 | - Add year 2000 copyright. | ||
202 | - Display correctly bus signals when bus is detected wrong. | ||
203 | - Some fix for Sparc from DSM that went directly to kernel tree. | ||
204 | |||
205 | Mon Dec 6 22:00 1999 Gerard Roudier (groudier@club-internet.fr) | ||
206 | * version sym53c8xx-1.5g | ||
207 | - Change messages written by the driver at initialisation and | ||
208 | through the /proc FS (rather cosmetic changes that consist in | ||
209 | printing out the PCI bus number and PCI device/function). | ||
210 | - Ensure the SCRIPTS processor is stopped while calibrating the | ||
211 | SCSI clock (the initialisation code has been a bit reworked). | ||
212 | Change moved to the FreeBSD sym_hipd driver). | ||
213 | - Some fixes in the MODIFY_DP/IGN_RESIDUE code and residual | ||
214 | calculation (moved from FreeBSD sym_hipd driver). | ||
215 | - Add NVRAM support for Tekram boards that use 24C16 EEPROM. | ||
216 | Code moved from the FreeBSD sym_hipd driver, since it has | ||
217 | been that one that got this feature first. | ||
218 | - Definitely disable overlapped PCI arbitration for all dual | ||
219 | function chips, since I cannot make sure for what chip revisions | ||
220 | it is actually safe. | ||
221 | - Add support for the SYM53C1510D (also for ncr53c8xx). | ||
222 | - Fix up properly the PCI latency timer when needed or asked for. | ||
223 | - Get rid of the old PCI bios interface, but preserve kernel 2.0 | ||
224 | compatibility from a simple wrapper. | ||
225 | - Update the poor Tekram sync factor table. | ||
226 | - Fix in a tiny 'printk' bug that may oops in case of extended | ||
227 | errors (unrecovered parity error, data overrun, etc ...) | ||
228 | (Sent by Pamela Delaney from LSILOGIC) | ||
229 | - Remove the compilation condition about having to acquire the | ||
230 | io_request_lock since it seems to be a definite feature now.:) | ||
231 | - Change get_pages by GetPages since Linux >= 2.3.27 now wants | ||
232 | get_pages to ever be used as a kernel symbol (from 2.3.27). | ||
233 | - proc_dir structure no longer needed for kernel >= 2.3.27. | ||
234 | |||
235 | Sun Oct 3 19:00 1999 Gerard Roudier (groudier@club-internet.fr) | ||
236 | * version sym53c8xx-1.5f | ||
237 | - Change the way the driver checks the PCI clock frequency, so | ||
238 | that overclocked PCI BUS up to 48 MHz will not be refused. | ||
239 | The more the BUS is overclocked, the less the driver will | ||
240 | guarantee that its measure of the SCSI clock is correct. | ||
241 | - Backport some minor improvements of SCRIPTS from the sym_hipd | ||
242 | driver. | ||
243 | - Backport the code rewrite of the START QUEUE dequeuing (on | ||
244 | bad scsi status received) from the sym_hipd driver. | ||
245 | |||
246 | Sat Sep 11 11:00 1999 Gerard Roudier (groudier@club-internet.fr) | ||
247 | * version sym53c8xx-1.5e | ||
248 | - New linux-2.3.13 __setup scheme support added. | ||
249 | - Cleanup of the extended error status handling: | ||
250 | Use 1 bit per error type. | ||
251 | - Also save the extended error status prior to auto-sense. | ||
252 | - Add the FE_DIFF chip feature bit to indicate support of | ||
253 | diff probing from GPIO3 (825/825A/876/875). | ||
254 | - Remove the quirk handling that has been useless since day one. | ||
255 | - Work-around PCI chips being reported twice on some platforms. | ||
256 | - Add some redundant PCI reads in order to deal with common | ||
257 | bridge misbehaviour regarding posted write flushing. | ||
258 | - Add some other conditionnal code for people who have to deal | ||
259 | with really broken bridges (they will have to edit a source | ||
260 | file to try these options). | ||
261 | - Handle correctly (hopefully) jiffies wrap-around. | ||
262 | - Restore the entry used to detect 875 until revision 0xff. | ||
263 | (I removed it inadvertently, it seems :) ) | ||
264 | - Replace __initfunc() which is deprecated stuff by __init which | ||
265 | is not yet so. ;-) | ||
266 | - Rewrite the MESSAGE IN scripts more generic by using a MOVE | ||
267 | table indirect. Extended messages of any size are accepted now. | ||
268 | (Size is limited to 8 for now, but a constant is just to be | ||
269 | increased if necessary) | ||
270 | - Fix some bug in the fully untested MDP handling:) and share | ||
271 | some code between MDP handling and residual calculation. | ||
272 | - Calculate the data transfer residual as the 2's complement | ||
273 | integer (A positive value in returned on data overrun, and | ||
274 | a negative one on underrun). | ||
275 | - Add support of some 'resource handling' for linux-2.3.13. | ||
276 | Basically the BARs have been changed to something more complex | ||
277 | in the pci_dev structure. | ||
278 | - Remove some deprecated code. | ||
279 | |||
280 | Sat Jun 5 11:00 1999 Gerard Roudier (groudier@club-internet.fr) | ||
281 | * version sym53c8xx-1.5c | ||
282 | - Do not negotiate on auto-sense if we are currently using 8 bit | ||
283 | async transfer for the target. | ||
284 | - Only check for SISL/RAID on i386 platforms. | ||
285 | (A problem has been reported on PPC with that code). | ||
286 | - On MSG REJECT for a negotiation, the driver attempted to restart | ||
287 | the SCRIPT processor when this one was already running. | ||
288 | |||
289 | Sat May 29 12:00 1999 Gerard Roudier (groudier@club-internet.fr) | ||
290 | * version sym53c8xx-1.5b | ||
291 | - Force negotiation prior auto-sense. | ||
292 | This ensures that the driver will be able to grab the sense data | ||
293 | from a device that has received a BUS DEVICE RESET message from | ||
294 | another initiator. | ||
295 | - Complete all disconnected CCBs for a logical UNIT if we are told | ||
296 | about a UNIT ATTENTION for a RESET condition by this target. | ||
297 | - Add the control command 'cleardev' that allows to send a ABORT | ||
298 | message to a logical UNIT (for test purpose). | ||
299 | |||
300 | Tue May 25 23:00 1999 Gerard Roudier (groudier@club-internet.fr) | ||
301 | * version sym53c8xx-1.5a | ||
302 | - Add support for task abort and bus device reset SCSI message | ||
303 | and implement proper synchonisation with SCRIPTS to handle | ||
304 | correctly task abortion without races. | ||
305 | - Send an ABORT message (if untagged) or ABORT TAG message (if tagged) | ||
306 | when the driver is told to abort a command that is disconnected and | ||
307 | complete the command with appropriate error. | ||
308 | If the aborted command is not yet started, remove it from the start | ||
309 | queue and complete it with error. | ||
310 | - Add the control command 'resetdev' that allows to send a BUS | ||
311 | DEVICE RESET message to a target (for test purpose). | ||
312 | - Clean-up some unused or useless code. | ||
313 | |||
314 | Fri May 21 23:00 1999 Gerard Roudier (groudier@club-internet.fr) | ||
315 | * version sym53c8xx-1.5 | ||
316 | - Add support for CHMOV with Wide controllers. | ||
317 | - Handling of the SWIDE (low byte residue at the end of a CHMOV | ||
318 | in DATA IN phase with WIDE transfer when the byte count gets odd). | ||
319 | - Handling of the IGNORE WIDE RESIDUE message. | ||
320 | Handled from SCRIPTS as possible with some optimizations when both | ||
321 | a wide device and the controller are odd at the same time (SWIDE | ||
322 | present and IGNORE WIDE RESIDUE message on the BUS at the same time). | ||
323 | - Check against data OVERRUN/UNDERRUN condition at the end of a data | ||
324 | transfer, whatever a SWIDE is present (OVERRUN in DATA IN phase) | ||
325 | or the SODL is full (UNDERRUN in DATA out phase). | ||
326 | - Handling of the MODIFY DATA POINTER message. | ||
327 | This one cannot be handled from SCRIPTS, but hopefully it will not | ||
328 | happen very often. :) | ||
329 | - Large rewrite of the SCSI MESSAGE handling. | ||
330 | |||
331 | Sun May 9 11:00 1999 Gerard Roudier (groudier@club-internet.fr) | ||
332 | * version sym53c8xx-1.4 | ||
333 | - Support for IMMEDIATE ARBITRATION. | ||
334 | See the README file for detailed information about this feature. | ||
335 | Requires both a compile option and a boot option. | ||
336 | - Minor SCRIPTS optimization in reselection pattern for LUN 0. | ||
337 | - Simpler algorithm to deal with SCSI command starvation. | ||
338 | Just use 2 tag counters in flip/flop and switch to the other | ||
339 | one every 3 seconds. | ||
340 | - Do some work in SCRIPTS after the SELECT instruction and prior | ||
341 | to testing for a PHASE. SYMBIOS say this feature is working fine. | ||
342 | (Btw, only problems with Toshiba 3401B had been reported). | ||
343 | - Measure the PCI clock speed and do not attach controllers if | ||
344 | result is greater than 37 MHz. Since the precision of the | ||
345 | algorithm (from Stefan Esser) is better than 2%, this should | ||
346 | be fine. | ||
347 | - Fix the misdetection of SYM53C875E (was detected as a 876). | ||
348 | - Fix the misdetection of SYM53C810 not A (was detected as a 810A). | ||
349 | - Support for up to 256 TAGS per LUN (CMD_PER_LUN). | ||
350 | Currently limited to 255 due to Linux limitation. :) | ||
351 | - Support for up to 508 active commands (CAN_QUEUE). | ||
352 | - Support for the 53C895A by Pamela Delaney <pam.delaney@lsil.com> | ||
353 | The 53C895A contains all of the features of the 896 but has only | ||
354 | one channel and has a 32 bit PCI bus. It does 64 bit PCI addressing | ||
355 | using dual cycle PCI data transfers. | ||
356 | - Miscellaneous minor fixes. | ||
357 | - Some additions to the README.ncr53c8xx file. | ||
358 | |||
359 | Tue Apr 15 10:00 1999 Gerard Roudier (groudier@club-internet.fr) | ||
360 | * version sym53c8xx-1.3e | ||
361 | - Support for any number of LUNs (64) (SPI2-compliant). | ||
362 | (Btw, this may only be ever useful under linux-2.2 ;-)) | ||
363 | |||
364 | Sun Apr 11 10:00 1999 Gerard Roudier (groudier@club-internet.fr) | ||
365 | * version sym53c8xx-1.3d | ||
366 | - Add 'hostid:#id' boot option. This option allows to change the | ||
367 | default SCSI id the driver uses for controllers. | ||
368 | - Make SCRIPTS not use self-mastering for PCI. | ||
369 | There were still 2 places the driver used this feature of the | ||
370 | 53C8XX family. | ||
371 | - Move some data structures (nvram layouts and driver set-up) to | ||
372 | the sym53c8xx_defs.h file. So, the both drivers will share them. | ||
373 | - Set MAX LUNS to 16 (instead of 8). | ||
374 | |||
375 | Sat Mar 20 21:00 1999 Gerard Roudier (groudier@club-internet.fr) | ||
376 | * version sym53c8xx-1.3b | ||
377 | - Add support for NCR PQS PDS. | ||
378 | James Bottomley <James.Bottomley@columbiasc.ncr.com> | ||
379 | - Allow value 0 for host ID. | ||
380 | - Support more than 8 controllers (> 40 in fact :-) ) | ||
381 | - Add 'excl=#ioaddr' boot option: exclude controller. | ||
382 | (Version 1.3a driver) | ||
383 | |||
384 | Thu Mar 11 23:00 1999 Gerard Roudier (groudier@club-internet.fr) | ||
385 | * version sym53c8xx-1.3 (8xx-896 driver bundle) | ||
386 | - Equivalent changes as ncr53c8xx-3.2 due to the driver bundle. | ||
387 | (See Changelog.ncr53c8xx) | ||
388 | - Do a normal soft reset as first chip reset, since aborting current | ||
389 | operation may raise an interrupt we are not able to handle since | ||
390 | the interrupt handler is not yet established. | ||
391 | |||
392 | Sat Mar 6 11:00 1999 Gerard Roudier (groudier@club-internet.fr) | ||
393 | * version sym53c8xx-1.2b | ||
394 | - Fix some oooold bug that hangs the bus if a device rejects a | ||
395 | negotiation. Btw, the corresponding stuff also needed some cleanup | ||
396 | and thus the change is a bit larger than it could have been. | ||
397 | - Still some typo that made compilation fail for 64 bit (trivial fix). | ||
398 | |||
399 | Sun Feb 21 20:00 1999 Gerard Roudier (groudier@club-internet.fr) | ||
400 | * version sym53c8xx-1.2a | ||
401 | - The rewrite of the interrupt handling broke the SBMC interrupt | ||
402 | handling due to a 1 bit mask tiny error. Hopefully fixed. | ||
403 | - If INQUIRY came from a scatter list, the driver looked into | ||
404 | the scatterlist instead of the data.:) Since this should never | ||
405 | happen, we just discard the data if use_sg is not zero. | ||
406 | |||
407 | Fri Feb 12 23:00 1999 Gerard Roudier (groudier@club-internet.fr) | ||
408 | * version sym53c8xx-1.2 | ||
409 | - Major rewrite of the interrupt handling and recovery stuff for | ||
410 | the support of non compliant SCSI removal, insertion and all | ||
411 | kinds of screw-up that may happen on the SCSI BUS. | ||
412 | Hopefully, the driver is now unbreakable or may-be, it is just | ||
413 | quite brocken. :-) | ||
414 | Many thanks to Johnson Russel (Symbios) for having responded to | ||
415 | my questions and for his interesting advices and comments about | ||
416 | support of SCSI hot-plug. | ||
417 | - Add 'recovery' option to driver set-up. | ||
418 | - Negotiate SYNC data transfers with CCS devices. | ||
419 | - Deal correctly with 64 bit PCI address registers on Linux 2.2. | ||
420 | Pointed out by Leonard Zubkoff. | ||
421 | |||
422 | Sun Jan 31 18:00 1999 Gerard Roudier (groudier@club-internet.fr) | ||
423 | * version sym53c8xx-1.1a | ||
424 | - Some 896 chip revisions (all for now :-)), may hang-up if the | ||
425 | soft reset bit is set at the wrong time while SCRIPTS are running. | ||
426 | We need to first abort the current SCRIPTS operation prior to | ||
427 | resetting the chip. This fix has been sent to me by SYMBIOS/LSI | ||
428 | and I just translated it into ncr53c8xx syntax. | ||
429 | Must be considered 100 % trustable, unless I did some mistake | ||
430 | when translating it. :-) | ||
431 | |||
432 | Sun Jan 24 18:00 1999 Gerard Roudier (groudier@club-internet.fr) | ||
433 | * version sym53c8xx-1.1 | ||
434 | - Major rewrite of the SCSI parity error handling. | ||
435 | The informations contained in the data manuals are incomplete about | ||
436 | this feature. | ||
437 | I asked SYMBIOS about and got in reply the explanations that are | ||
438 | _indeed_ missing in the data manuals. | ||
439 | - Allow to tune request_irq() flags from the boot command line using | ||
440 | ncr53c8xx=irqm:??, as follows: | ||
441 | a) If bit 0x10 is set in irqm, SA_SHIRQ flag is not used. | ||
442 | b) If bit 0x20 is set in irqm, SA_INTERRUPT flag is not used. | ||
443 | By default the driver uses both SA_SHIRQ and SA_INTERRUPT. | ||
444 | Option 'ncr53c8xx=irqm:0x20' may be used when an IRQ is shared by | ||
445 | a 53C8XX adapter and a network board. | ||
446 | - Fix for 64 bit PCI address register calculation. (Lance Robinson) | ||
447 | - Fix for big-endian in phase mismatch handling. (Michal Jaegermann) | ||
448 | |||
449 | Fri Jan 1 20:00 1999 Gerard Roudier (groudier@club-internet.fr) | ||
450 | * version sym53c8xx-1.0a | ||
451 | - Waiting list look-up didn't work for the first command of the list. | ||
452 | Hopefully fixed, but tested on paper only. ;) | ||
453 | - Remove the most part of PPC specific code for Linux-2.2. | ||
454 | Thanks to Cort. | ||
455 | - Some other minors changes. | ||
456 | |||
457 | Sat Dec 19 21:00 1998 Gerard Roudier (groudier@club-internet.fr) | ||
458 | * version sym53c8xx-1.0 | ||
459 | - Define some new IO registers for the 896 (istat1, mbox0, mbox1) | ||
460 | - Revamp slighly the Symbios NVRAM lay-out based on the excerpt of | ||
461 | the header file I received from Symbios. | ||
462 | - Check the PCI bus number for the boot order (Using a fast | ||
463 | PCI controller behing a PCI-PCI bridge seems sub-optimal). | ||
464 | - Disable overlapped PCI arbitration for the 896 revision 1. | ||
465 | - Reduce a bit the number of IO register reads for phase mismatch | ||
466 | by reading DWORDS at a time instead of BYTES. | ||
467 | |||
468 | Thu Dec 3 24:00 1998 Gerard Roudier (groudier@club-internet.fr) | ||
469 | * version pre-sym53c8xx-0.18 | ||
470 | - I received this afternoon a 896 from SYMBIOS and started testing | ||
471 | the driver with this beast. After having fixed 3 buglets, it worked | ||
472 | with all features enabled including the phase mismatch handling | ||
473 | from SCRIPTS. Since this feature is not yet tested enough, the | ||
474 | boot option 'ncr53c8xx=specf:1' is still required to enable the | ||
475 | driver to handle PM from SCRIPTS. | ||
476 | |||
477 | Sun Nov 29 18:00 1998 Gerard Roudier (groudier@club-internet.fr) | ||
478 | * version pre-sym53c8xx-0.17 | ||
479 | - The SISL RAID change requires now remap_pci_mem() stuff to be | ||
480 | compiled for __i386__ when normal IOs are used. | ||
481 | - The PCI memory read from SCRIPTS that should ensure ordering | ||
482 | was in fact misplaced. BTW, this may explain why broken PCI | ||
483 | device drivers regarding ordering are working so well. ;-) | ||
484 | - Rewrite ncr53c8xx_setup (boot command line options) since the | ||
485 | binary code was a bit too bloated in my opinion. | ||
486 | - Make the code simpler in the wakeup_done routine. | ||
487 | |||
488 | Tue Nov 24 23:00 1998 Gerard Roudier (groudier@club-internet.fr) | ||
489 | * version pre-sym53c8xx-0.16 | ||
490 | - Add SCSI_NCR_OPTIMIZE_896_1 compile option and 'optim' boot option. | ||
491 | When set, the driver unconditionnaly assumes that the interrupt | ||
492 | handler is called for command completion, then clears INTF, scans | ||
493 | the done queue and returns if some completed CCB is found. If no | ||
494 | completed CCB are found, interrupt handling will proceed normally. | ||
495 | With a 896 that handles MA from SCRIPTS, this can be a great win, | ||
496 | since the driver will never performs PCI read transactions, but | ||
497 | only PCI write transactions that may be posted. | ||
498 | If the driver haven't to also raise the SIGP this would be perfect. | ||
499 | Even with this penalty, I think that this will work great. | ||
500 | Obviously this optimization makes sense only if the IRQ is not | ||
501 | shared with another device. | ||
502 | - Still a buglet in the tags initial settings that needed to be fixed. | ||
503 | It was not possible to disable TGQ at system startup for devices | ||
504 | that claim TGQ support. The driver used at least 2 for the queue | ||
505 | depth but did'nt keep track of user settings for tags depth lower | ||
506 | than 2. | ||
507 | |||
508 | Thu Nov 19 23:00 1998 Gerard Roudier (groudier@club-internet.fr) | ||
509 | * version pre-sym53c8xx-0.15 | ||
510 | - Add support for hardware LED control of the 896. | ||
511 | - Ignore chips that are driven by SISL RAID (DAC 960). | ||
512 | Change sent by Leonard Zubkoff and slightly reworked. | ||
513 | - Prevent 810A rev 11 and 860 rev 1 from using cache line based | ||
514 | transactions since those early chip revisions may use such on | ||
515 | LOAD/STORE instructions (work-around). | ||
516 | - Remove some useless and bloat code from the pci init stuff. | ||
517 | - Do not use the readX()/writeX() kernel functions for __i386__, | ||
518 | since they perform useless masking operations in order to deal | ||
519 | with broken driver in 2.1.X kernel. | ||
520 | |||
521 | Wed Nov 11 10:00 1998 Gerard Roudier (groudier@club-internet.fr) | ||
522 | * version pre-sym53c8xx-0.14 | ||
523 | - The driver was unhappy when configured with default_tags > MAX_TAGS | ||
524 | Hopefully doubly-fixed. | ||
525 | - Set PCI_PARITY in PCI_COMMAND register in not set (PCI fix-up). | ||
526 | - Print out some message if phase mismatch is handled from SCRIPTS. | ||
527 | |||
528 | Sun Nov 1 14H00 1998 Gerard Roudier (groudier@club-internet.fr) | ||
529 | * version pre-sym53c8xx-0.13 | ||
530 | - Some rewrite of the device detection code. This code had been | ||
531 | patched too much and needed to be face-lifted a bit. | ||
532 | Remove all platform dependent fix-ups that was not needed or | ||
533 | conflicted with some other driver code as work-arounds. | ||
534 | Reread the NVRAM before the calling of ncr_attach(). This spares | ||
535 | stack space and so allows to handle more boards. | ||
536 | Handle 64 bit base addresses under linux-2.0.X. | ||
537 | Set MASTER bit in PCI COMMAND register if not set. | ||
538 | |||
539 | Wed Oct 30 22H00 1998 Gerard Roudier (groudier@club-internet.fr) | ||
540 | * version pre-sym53c8xx-0.12 | ||
541 | - Damned! I just broke the driver for Alpha by leaving a stale | ||
542 | instruction in the source code. Hopefully fixed. | ||
543 | - Do not set PFEN when it is useless. Doing so we are sure that BOF | ||
544 | will be active, since the manual appears to be very unclear on what | ||
545 | feature is actually used by the chip when both PFEN and BOF are | ||
546 | set. | ||
547 | |||
548 | Sat Oct 24 16H00 1998 Gerard Roudier (groudier@club-internet.fr) | ||
549 | * version pre-sym53c8xx-0.11 | ||
550 | - LOAD/STORE instructions were miscompiled for register offsets | ||
551 | beyond 0x7f. This broke accesses to 896' new registers. | ||
552 | - Disable by default Phase Mismatch handling from SCRIPTS, since | ||
553 | current 896 rev.1 seems not to operate safely with the driver | ||
554 | when this feature is enabled (and above LOAD/STORE fix applied). | ||
555 | I will change the default to 'enabled' when this problem will be | ||
556 | solved. | ||
557 | Using boot option 'ncr53c8xx=specf:1' enables this feature. | ||
558 | - Implement a work-around (DEL 472 - ITEM 5) that should allow the | ||
559 | driver to safely enable hardware phase mismatch with 896 rev. 1. | ||
560 | |||
561 | Tue Oct 20 22H00 1998 Gerard Roudier (groudier@club-internet.fr) | ||
562 | * version pre-sym53c8xx-0.10 | ||
563 | - Add the 53c876 description to the chip table. This is only useful | ||
564 | for printing the right name of the controller. | ||
565 | - Add additional checking of INQUIRY data: | ||
566 | Check INQUIRY data received length is at least 7. Byte 7 of | ||
567 | inquiry data contains device features bits and the driver might | ||
568 | be confused by garbage. Also check peripheral qualifier. | ||
569 | - Use a 1,3,5,...MAXTAGS*2+1 tag numbering. Previous driver could | ||
570 | use any tag number from 1 to 253 and some non conformant devices | ||
571 | might have problems with large tag numbers. | ||
572 | - Use NAME53C and NAME53C8XX for chip name prefix chip family name. | ||
573 | Just give a try using "sym53c" and "sym53c8xx" instead of "ncr53c" | ||
574 | and "ncr53c8xx". :-) | ||
575 | |||
576 | Sun Oct 11 17H00 1998 Gerard Roudier (groudier@club-internet.fr) | ||
577 | * version pre-sym53c8xx-0.9 | ||
578 | - DEL-441 Item 2 work-around for the 53c876 rev <= 5 (0x15). | ||
579 | - Break ncr_scatter() into 2 functions in order to guarantee best | ||
580 | possible code optimization for the case we get a scatter list. | ||
581 | - Add the code intended to support up to 1 tera-byte for 64 bit systems. | ||
582 | It is probably too early, but I wanted to complete the thing. | ||
583 | |||
584 | Sat Oct 3 14H00 1998 Gerard Roudier (groudier@club-internet.fr) | ||
585 | * version pre-sym53c8xx-0.8 | ||
586 | - Do some testing with io_mapped and fix what needed to be so. | ||
587 | - Wait for SCSI selection to complete or time-out immediately after | ||
588 | the chip won arbitration, since executing SCRIPTS while the SCSI | ||
589 | core is performing SCSI selection breaks the selection procedure | ||
590 | at least for some chip revisions. | ||
591 | - Interrupt the SCRIPTS if a device does not go to MSG OUT phase after | ||
592 | having been selected with ATN. Such a situation is not recoverable, | ||
593 | better to fail when we are stuck. | ||