Hopefully get the Kconfig PCI stuff right, finally.
[linux-2.6/linux-mips.git] / Documentation / scsi / aic7xxx.txt
blob5e8fe57ff74916cadd5be2eb5bcda8c85aecd322
1 ====================================================================
2 =    Adaptec Aic7xxx Fast -> Ultra160 Family Manager Set v6.2.28   =
3 =                            README for                            =
4 =                     The Linux Operating System                   =
5 ====================================================================
7 The following information is available in this file:
9   1. Supported Hardware
10   2. Version History
11   3. Command Line Options
12   4. Contacting Adaptec
14 1. Supported Hardware
16    The following Adaptec SCSI Chips and Host Adapters are supported by
17    the aic7xxx driver. 
19    Chip    MIPS  Host Bus  MaxSync  MaxWidth  SCBs  Notes
20    ---------------------------------------------------------------
21    aic7770  10    EISA/VL   10MHz    16Bit      4   1
22    aic7850  10    PCI/32    10MHz    8Bit       3
23    aic7855  10    PCI/32    10MHz    8Bit       3
24    aic7856  10    PCI/32    10MHz    8Bit       3
25    aic7859  10    PCI/32    20MHz    8Bit       3
26    aic7860  10    PCI/32    20MHz    8Bit       3
27    aic7870  10    PCI/32    10MHz    16Bit      16
28    aic7880  10    PCI/32    20MHz    16Bit      16
29    aic7890  20    PCI/32    40MHz    16Bit      16      3 4 5 6 7 8
30    aic7891  20    PCI/64    40MHz    16Bit      16      3 4 5 6 7 8
31    aic7892  20   PCI/64-66  80MHz    16Bit      16      3 4 5 6 7 8
32    aic7895  15    PCI/32    20MHz    16Bit      16    2 3 4 5
33    aic7895C 15    PCI/32    20MHz    16Bit      16    2 3 4 5     8
34    aic7896  20    PCI/32    40MHz    16Bit      16    2 3 4 5 6 7 8
35    aic7897  20    PCI/64    40MHz    16Bit      16    2 3 4 5 6 7 8
36    aic7899  20   PCI/64-66  80MHz    16Bit      16    2 3 4 5 6 7 8
38    1.   Multiplexed Twin Channel Device - One controller servicing two
39         busses.
40    2.   Multi-function Twin Channel Device - Two controllers on one chip.
41    3.   Command Channel Secondary DMA Engine - Allows scatter gather list
42         and SCB prefetch.
43    4.   64 Byte SCB Support - Allows disconnected, unttagged request table
44         for all possible target/lun combinations.
45    5.   Block Move Instruction Support - Doubles the speed of certain
46         sequencer operations.
47    6.   `Bayonet' style Scatter Gather Engine - Improves S/G prefetch
48         performance.
49    7.   Queuing Registers - Allows queuing of new transactions without
50         pausing the sequencer.
51    8.   Multiple Target IDs - Allows the controller to respond to selection
52         as a target on multiple SCSI IDs.
54    Controller      Chip   Host-Bus    Int-Connectors  Ext-Connectors  Notes
55    --------------------------------------------------------------------------
56    AHA-274X[A]    aic7770   EISA         SE-50M         SE-HD50F
57    AHA-274X[A]W   aic7770   EISA         SE-HD68F       SE-HD68F
58                                          SE-50M
59    AHA-274X[A]T   aic7770   EISA       2 X SE-50M       SE-HD50F
60    AHA-2842       aic7770    VL          SE-50M         SE-HD50F
61    AHA-2940AU     aic7860   PCI/32       SE-50M         SE-HD50F
62    AVA-2902I      aic7860   PCI/32       SE-50M
63    AVA-2902E      aic7860   PCI/32       SE-50M
64    AVA-2906       aic7856   PCI/32       SE-50M         SE-DB25F
65    APC-7850       aic7850   PCI/32       SE-50M                       1
66    AVA-2940       aic7860   PCI/32       SE-50M
67    AHA-2920B      aic7860   PCI/32       SE-50M
68    AHA-2930B      aic7860   PCI/32       SE-50M
69    AHA-2920C      aic7856   PCI/32       SE-50M         SE-HD50F
70    AHA-2930C      aic7860   PCI/32       SE-50M
71    AHA-2930C      aic7860   PCI/32       SE-50M
72    AHA-2910C      aic7860   PCI/32       SE-50M
73    AHA-2915C      aic7860   PCI/32       SE-50M
74    AHA-2940AU/CN  aic7860   PCI/32       SE-50M         SE-HD50F
75    AHA-2944W      aic7870   PCI/32     HVD-HD68F        HVD-HD68F
76                                         HVD-50M
77    AHA-3940W      aic7870   PCI/32     2 X SE-HD68F     SE-HD68F        2
78    AHA-2940UW     aic7880   PCI/32       SE-HD68F
79                                          SE-50M         SE-HD68F
80    AHA-2940U      aic7880   PCI/32       SE-50M         SE-HD50F
81    AHA-2940D      aic7880   PCI/32
82    aHA-2940 A/T   aic7880   PCI/32
83    AHA-2940D A/T  aic7880   PCI/32
84    AHA-3940UW     aic7880   PCI/32     2 X SE-HD68F     SE-HD68F          3
85    AHA-3940UWD    aic7880   PCI/32     2 X SE-HD68F   2 X SE-VHD68F       3
86    AHA-3940U      aic7880   PCI/32     2 X SE-50M       SE-HD50F          3
87    AHA-2944UW     aic7880   PCI/32      HVD-HD68F       HVD-HD68F
88                                          HVD-50M
89    AHA-3944UWD    aic7880   PCI/32     2 X HVD-HD68F  2 X HVD-VHD68F      3
90    AHA-4944UW     aic7880   PCI/32
91    AHA-2930UW     aic7880   PCI/32
92    AHA-2940UW Pro aic7880   PCI/32      SE-HD68F        SE-HD68F            4
93                                          SE-50M
94    AHA-2940UW/CN  aic7880   PCI/32
95    AHA-2940UDual  aic7895   PCI/32
96    AHA-2940UWDual aic7895   PCI/32
97    AHA-3940UWD    aic7895   PCI/32
98    AHA-3940AUW    aic7895   PCI/32
99    AHA-3940AUWD   aic7895   PCI/32
100    AHA-3940AU     aic7895   PCI/32
101    AHA-3944AUWD   aic7895   PCI/32     2 X HVD-HD68F  2 X HVD-VHD68F
102    AHA-2940U2B    aic7890   PCI/32      LVD-HD68F       LVD-HD68F
103    AHA-2940U2 OEM aic7891   PCI/64
104    AHA-2940U2W    aic7890   PCI/32      LVD-HD68F       LVD-HD68F
105                                         SE-HD68F 
106                                          SE-50M
107    AHA-2950U2B    aic7891   PCI/64      LVD-HD68F       LVD-HD68F
108    AHA-2930U2     aic7890   PCI/32      LVD-HD68F       SE-HD50F
109                                          SE-50M 
110    AHA-3950U2B    aic7897   PCI/64
111    AHA-3950U2D    aic7897   PCI/64
112    AHA-29160      aic7892   PCI/64-66
113    AHA-29160 CPQ  aic7892   PCI/64-66
114    AHA-29160N     aic7892   PCI/32      LVD-HD68F       SE-HD50F
115                                          SE-50M
116    AHA-29160LP    aic7892   PCI/64-66
117    AHA-19160      aic7892   PCI/64-66
118    AHA-29150LP    aic7892   PCI/64-66
119    AHA-29130LP    aic7892   PCI/64-66
120    AHA-3960D      aic7899   PCI/64-66  2 X LVD-HD68F  2 X LVD-VHD68F
121                                          LVD-50M
122    AHA-3960D CPQ  aic7899   PCI/64-66  2 X LVD-HD68F  2 X LVD-VHD68F
123                                          LVD-50M
124    AHA-39160      aic7899   PCI/64-66  2 X LVD-HD68F  2 X LVD-VHD68F
125                                          LVD-50M
127    1. No BIOS support
128    2. DEC21050 PCI-PCI bridge with multiple controller chips on secondary bus
129    3. DEC2115X PCI-PCI bridge with multiple controller chips on secondary bus
130    4. All three SCSI connectors may be used simultaneously without
131       SCSI "stub" effects.
133 2. Version History
135         6.2.33 - Dynamically disable PCI parity error reporting after
136                  10 errors are reported to the user.  These errors are
137                  the result of some other device issuing PCI transactions
138                  with bad parity.  Once the user has been informed of the
139                  problem, continuing to report the errors just degrades
140                  our performance.
142         6.2.32 - Dynamically sized S/G lists to avoid SCSI malloc
143                  pool fragmentation and SCSI mid-layer deadlock.
145         6.2.28 - Domain Validation Fixes
146                  PCI parity error disable
147                  Enhanced Memory Mapped I/O probe
149         6.2.20 - Added Domain Validation
151 3. Command Line Options
153         WARNING: ALTERING OR ADDING THESE DRIVER PARAMETERS
154                  INCORRECTLY CAN RENDER YOUR SYSTEM INOPERABLE.
155                  USE THEM WITH CAUTION. 
157    Edit the file "modules.conf" in the directory /etc and add/edit a
158    line containing 'options aic7xxx aic7xxx=[command[,command...]]' where
159    'command' is one or more of the following:
160    -----------------------------------------------------------------
161               Option: verbose
162           Definition: enable additional informative messages during
163                       driver operation.
164      Possible Values: This option is a flag
165        Default Value: disabled
166    -----------------------------------------------------------------
167               Option: debug:[value]
168           Definition: Enables various levels of debugging information
169      Possible Values: 0x0000 = no debugging, 0xffff = full debugging
170        Default Value: 0x0000
171    -----------------------------------------------------------------
172               Option: no_probe
173               Option: probe_eisa_vl
174           Definition: Do not probe for EISA/VLB controllers.
175                       This is a toggle.  If the driver is compiled
176                       to not probe EISA/VLB controllers by default,
177                       specifying "no_probe" will enable this probing.
178                       If the driver is compiled to probe EISA/VLB
179                       controllers by default, specifying "no_probe"
180                       will disable this probing.
181      Possible Values: This option is a toggle
182        Default Value: EISA/VLB probing is disabled by default.
183    -----------------------------------------------------------------
184               Option: pci_parity
185           Definition: Toggles the detection of PCI parity errors.
186                       On many motherboards with VIA chipsets,
187                       PCI parity is not generated correctly on the
188                       PCI bus.  It is impossible for the hardware to
189                       differentiate between these "spurious" parity
190                       errors and real parity errors.  The symptom of
191                       this problem is a stream of the message:
192     "scsi0: Data Parity Error Detected during address or write data phase"
193                       output by the driver.
194      Possible Values: This option is a toggle
195        Default Value: PCI Parity Error reporting is disabled
196    -----------------------------------------------------------------
197               Option: no_reset
198           Definition: Do not reset the bus during the initial probe
199                       phase
200      Possible Values: This option is a flag
201        Default Value: disabled
202    -----------------------------------------------------------------
203               Option: extended
204           Definition: Force extended translation on the controller
205      Possible Values: This option is a flag
206        Default Value: disabled
207    -----------------------------------------------------------------
208               Option: periodic_otag
209           Definition: Send an ordered tag periodically to prevent
210                       tag starvation.  Needed for some older devices
211      Possible Values: This option is a flag
212        Default Value: disabled
213    -----------------------------------------------------------------
214               Option: reverse_scan
215           Definition: Probe the scsi bus in reverse order, starting
216                       with target 15
217      Possible Values: This option is a flag
218        Default Value: disabled
219    -----------------------------------------------------------------
220               Option: global_tag_depth:[value]
221           Definition: Global tag depth for all targets on all busses.
222                       This option sets the default tag depth which
223                       may be selectively overridden vi the tag_info
224                       option.
225      Possible Values: 1 - 253
226        Default Value: 32
227    -----------------------------------------------------------------
228               Option: tag_info:{{value[,value...]}[,{value[,value...]}...]}
229           Definition: Set the per-target tagged queue depth on a
230                       per controller basis.  Both controllers and targets
231                       may be ommitted indicating that they should retain
232                       the default tag depth.
233             Examples: tag_info:{{16,32,32,64,8,8,,32,32,32,32,32,32,32,32,32}
234                         On Controller 0
235                           specifies a tag depth of 16 for target 0
236                           specifies a tag depth of 64 for target 3
237                           specifies a tag depth of 8 for targets 4 and 5
238                           leaves target 6 at the default
239                           specifies a tag depth of 32 for targets 1,2,7-15
240                         All other targets retain the default depth.
242                       tag_info:{{},{32,,32}}
243                         On Controller 1
244                           specifies a tag depth of 32 for targets 0 and 2
245                         All other targets retain the default depth.
246                         
247      Possible Values: 1 - 253
248        Default Value: 32
249    -----------------------------------------------------------------
250               Option: seltime:[value]
251           Definition: Specifies the selection timeout value
252      Possible Values: 0 = 256ms, 1 = 128ms, 2 = 64ms, 3 = 32ms
253        Default Value: 0
254    -----------------------------------------------------------------
255               Option: dv: {value[,value...]} 
256           Definition: Set Domain Validation Policy on a per-controller basis.
257                       Controllers may be ommitted indicating that
258                       they should retain the default read streaming setting.
259              Example: dv:{-1,0,,1,1,0}
260                         On Controller 0 leave DV at its default setting.
261                         On Controller 1 disable DV.
262                         Skip configuration on Controller 2.
263                         On Controllers 3 and 4 enable DV.
264                         On Controller 5 disable DV.
266      Possible Values: < 0 Use setting from serial EEPROM.
267                       0 Disable DV
268                       > 0 Enable DV
270        Default Value: SCSI-Select setting on controllers with a SCSI Select
271                       option for DV.  Otherwise, on for controllers supporting
272                       U160 speeds and off for all other controller types.
273    -----------------------------------------------------------------
275    Example:
276    'options aic7xxx aic7xxx=verbose,no_probe,tag_info:{{},{,,10}},seltime:1"
277         enables verbose logging, Disable EISA/VLB probing,
278         and set tag depth on Controller 1/Target 2 to 10 tags.
280 3. Contacting Adaptec
282    A Technical Support Identification (TSID) Number is required for 
283    Adaptec technical support.
284     - The 12-digit TSID can be found on the white barcode-type label
285       included inside the box with your product. The TSID helps us 
286       provide more efficient service by accurately identifying your 
287       product and support status.
288    Support Options
289     - Search the Adaptec Support Knowledgebase (ASK) at
290       http://ask.adaptec.com for articles, troubleshooting tips, and
291       frequently asked questions for your product.
292     - For support via Email, submit your question to Adaptec's 
293       Technical Support Specialists at http://ask.adaptec.com.
294      
295    North America
296     - Visit our Web site at http://www.adaptec.com.
297     - To speak with a Fibre Channel/RAID/External Storage Technical
298       Support Specialist, call 1-321-207-2000,
299       Hours: Monday-Friday, 3:00 A.M. to 5:00 P.M., PST.
300       (Not open on holidays)
301     - For Technical Support in all other technologies including 
302       SCSI, call 1-408-934-7274,
303       Hours: Monday-Friday, 6:00 A.M. to 5:00 P.M., PST.
304       (Not open on holidays)
305     - For after hours support, call 1-800-416-8066 ($99/call, 
306       $149/call on holidays)
307     - To order Adaptec products including software and cables, call
308       1-800-442-7274 or 1-408-957-7274. You can also visit our 
309       online store at http://www.adaptecstore.com
311    Europe
312     - Visit our Web site at http://www.adaptec-europe.com.
313     - English and French: To speak with a Technical Support 
314       Specialist, call one of the following numbers:
315         - English: +32-2-352-3470
316         - French:  +32-2-352-3460
317       Hours: Monday-Thursday, 10:00 to 12:30, 13:30 to 17:30 CET 
318              Friday, 10:00 to 12:30, 13:30 to 16:30 CET
319     - German: To speak with a Technical Support Specialist,
320       call +49-89-456-40660
321       Hours: Monday-Thursday, 09:30 to 12:30, 13:30 to 16:30 CET
322              Friday, 09:30 to 12:30, 13:30 to 15:00 CET
323     - To order Adaptec products, including accessories and cables:
324         - UK: +0800-96-65-26 or fax +0800-731-02-95
325         - Other European countries: +32-11-300-379
327    Australia and New Zealand
328     - Visit our Web site at http://www.adaptec.com.au.
329     - To speak with a Technical Support Specialist, call 
330       +612-9416-0698
331       Hours: Monday-Friday, 10:00 A.M. to 4:30 P.M., EAT
332       (Not open on holidays)
334    Japan
335     - To speak with a Technical Support Specialist, call 
336       +81-3-5308-6120 
337       Hours: Monday-Friday, 9:00 a.m. to 12:00 p.m., 1:00 p.m. to
338       6:00 p.m. TSC
340    Hong Kong and China
341     - To speak with a Technical Support Specialist, call 
342       +852-2869-7200
343       Hours: Monday-Friday, 10:00 to 17:00.
344     - Fax Technical Support at +852-2869-7100.
346    Singapore
347     - To speak with a Technical Support Specialist, call 
348       +65-245-7470
349       Hours: Monday-Friday, 10:00 to 17:00.
350     - Fax Technical Support at +852-2869-7100
352 -------------------------------------------------------------------
354  * Copyright (c) 2003 Adaptec Inc. 691 S. Milpitas Blvd., Milpitas CA 95035 USA.
355  * All rights reserved.
357  * You are permitted to redistribute, use and modify this README file in whole
358  * or in part in conjunction with redistribution of software governed by the
359  * General Public License, provided that the following conditions are met:
360  * 1. Redistributions of README file must retain the above copyright
361  *    notice, this list of conditions, and the following disclaimer,
362  *    without modification.
363  * 2. The name of the author may not be used to endorse or promote products
364  *    derived from this software without specific prior written permission.
365  * 3. Modifications or new contributions must be attributed in a copyright
366  *    notice identifying the author ("Contributor") and added below the
367  *    original copyright notice. The copyright notice is for purposes of
368  *    identifying contributors and should not be deemed as permission to alter
369  *    the permissions given by Adaptec.
371  * THIS README FILE IS PROVIDED BY ADAPTEC AND CONTRIBUTORS ``AS IS'' AND
372  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, ANY
373  * WARRANTIES OF NON-INFRINGEMENT OR THE IMPLIED WARRANTIES OF MERCHANTABILITY
374  * AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
375  * ADAPTEC OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
376  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
377  * TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
378  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
379  * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
380  * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS README
381  * FILE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
382  */