About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog

Documentation / scsi / advansys.txt




Custom Search

Based on kernel version 3.13. Page generated on 2014-01-20 22:04 EST.

1	AdvanSys (Advanced System Products, Inc.) manufactures the following
2	RISC-based, Bus-Mastering, Fast (10 Mhz) and Ultra (20 Mhz) Narrow
3	(8-bit transfer) SCSI Host Adapters for the ISA, EISA, VL, and PCI
4	buses and RISC-based, Bus-Mastering, Ultra (20 Mhz) Wide (16-bit
5	transfer) SCSI Host Adapters for the PCI bus.
6	
7	The CDB counts below indicate the number of SCSI CDB (Command
8	Descriptor Block) requests that can be stored in the RISC chip
9	cache and board LRAM. A CDB is a single SCSI command. The driver
10	detect routine will display the number of CDBs available for each
11	adapter detected. The number of CDBs used by the driver can be
12	lowered in the BIOS by changing the 'Host Queue Size' adapter setting.
13	
14	Laptop Products:
15	   ABP-480 - Bus-Master CardBus (16 CDB)
16	
17	Connectivity Products:
18	   ABP510/5150 - Bus-Master ISA (240 CDB)
19	   ABP5140 - Bus-Master ISA PnP (16 CDB)
20	   ABP5142 - Bus-Master ISA PnP with floppy (16 CDB)
21	   ABP902/3902 - Bus-Master PCI (16 CDB)
22	   ABP3905 - Bus-Master PCI (16 CDB)
23	   ABP915 - Bus-Master PCI (16 CDB)
24	   ABP920 - Bus-Master PCI (16 CDB)
25	   ABP3922 - Bus-Master PCI (16 CDB)
26	   ABP3925 - Bus-Master PCI (16 CDB)
27	   ABP930 - Bus-Master PCI (16 CDB)
28	   ABP930U - Bus-Master PCI Ultra (16 CDB)
29	   ABP930UA - Bus-Master PCI Ultra (16 CDB)
30	   ABP960 - Bus-Master PCI MAC/PC (16 CDB)
31	   ABP960U - Bus-Master PCI MAC/PC Ultra (16 CDB)
32	
33	Single Channel Products:
34	   ABP542 - Bus-Master ISA with floppy (240 CDB)
35	   ABP742 - Bus-Master EISA (240 CDB)
36	   ABP842 - Bus-Master VL (240 CDB)
37	   ABP940 - Bus-Master PCI (240 CDB)
38	   ABP940U - Bus-Master PCI Ultra (240 CDB)
39	   ABP940UA/3940UA - Bus-Master PCI Ultra (240 CDB)
40	   ABP970 - Bus-Master PCI MAC/PC (240 CDB)
41	   ABP970U - Bus-Master PCI MAC/PC Ultra (240 CDB)
42	   ABP3960UA - Bus-Master PCI MAC/PC Ultra (240 CDB)
43	   ABP940UW/3940UW - Bus-Master PCI Ultra-Wide (253 CDB)
44	   ABP970UW - Bus-Master PCI MAC/PC Ultra-Wide (253 CDB)
45	   ABP3940U2W - Bus-Master PCI LVD/Ultra2-Wide (253 CDB)
46	
47	Multi-Channel Products:
48	   ABP752 - Dual Channel Bus-Master EISA (240 CDB Per Channel)
49	   ABP852 - Dual Channel Bus-Master VL (240 CDB Per Channel)
50	   ABP950 - Dual Channel Bus-Master PCI (240 CDB Per Channel)
51	   ABP950UW - Dual Channel Bus-Master PCI Ultra-Wide (253 CDB Per Channel)
52	   ABP980 - Four Channel Bus-Master PCI (240 CDB Per Channel)
53	   ABP980U - Four Channel Bus-Master PCI Ultra (240 CDB Per Channel)
54	   ABP980UA/3980UA - Four Channel Bus-Master PCI Ultra (16 CDB Per Chan.)
55	   ABP3950U2W - Bus-Master PCI LVD/Ultra2-Wide and Ultra-Wide (253 CDB)
56	   ABP3950U3W - Bus-Master PCI Dual LVD2/Ultra3-Wide (253 CDB)
57	
58	Driver Compile Time Options and Debugging
59	
60	The following constants can be defined in the source file.
61	
62	1. ADVANSYS_ASSERT - Enable driver assertions (Def: Enabled)
63	
64	   Enabling this option adds assertion logic statements to the
65	   driver. If an assertion fails a message will be displayed to
66	   the console, but the system will continue to operate. Any
67	   assertions encountered should be reported to the person
68	   responsible for the driver. Assertion statements may proactively
69	   detect problems with the driver and facilitate fixing these
70	   problems. Enabling assertions will add a small overhead to the
71	   execution of the driver.
72	
73	2. ADVANSYS_DEBUG - Enable driver debugging (Def: Disabled)
74	
75	   Enabling this option adds tracing functions to the driver and the
76	   ability to set a driver tracing level at boot time.  This option is
77	   very useful for debugging the driver, but it will add to the size
78	   of the driver execution image and add overhead to the execution of
79	   the driver.
80	
81	   The amount of debugging output can be controlled with the global
82	   variable 'asc_dbglvl'. The higher the number the more output. By
83	   default the debug level is 0.
84	
85	   If the driver is loaded at boot time and the LILO Driver Option
86	   is included in the system, the debug level can be changed by
87	   specifying a 5th (ASC_NUM_IOPORT_PROBE + 1) I/O Port. The
88	   first three hex digits of the pseudo I/O Port must be set to
89	   'deb' and the fourth hex digit specifies the debug level: 0 - F.
90	   The following command line will look for an adapter at 0x330
91	   and set the debug level to 2.
92	
93	      linux advansys=0x330,0,0,0,0xdeb2
94	
95	   If the driver is built as a loadable module this variable can be
96	   defined when the driver is loaded. The following insmod command
97	   will set the debug level to one.
98	
99	      insmod advansys.o asc_dbglvl=1
100	
101	   Debugging Message Levels:
102	      0: Errors Only
103	      1: High-Level Tracing
104	      2-N: Verbose Tracing
105	
106	   To enable debug output to console, please make sure that:
107	
108	   a. System and kernel logging is enabled (syslogd, klogd running).
109	   b. Kernel messages are routed to console output. Check
110	      /etc/syslog.conf for an entry similar to this:
111	
112	           kern.*                  /dev/console
113	
114	   c. klogd is started with the appropriate -c parameter
115	      (e.g. klogd -c 8)
116	
117	   This will cause printk() messages to be be displayed on the
118	   current console. Refer to the klogd(8) and syslogd(8) man pages
119	   for details.
120	
121	   Alternatively you can enable printk() to console with this
122	   program. However, this is not the 'official' way to do this.
123	   Debug output is logged in /var/log/messages.
124	
125	     main()
126	     {
127	             syscall(103, 7, 0, 0);
128	     }
129	
130	   Increasing LOG_BUF_LEN in kernel/printk.c to something like
131	   40960 allows more debug messages to be buffered in the kernel
132	   and written to the console or log file.
133	
134	3. ADVANSYS_STATS - Enable statistics (Def: Enabled)
135	
136	   Enabling this option adds statistics collection and display
137	   through /proc to the driver. The information is useful for
138	   monitoring driver and device performance. It will add to the
139	   size of the driver execution image and add minor overhead to
140	   the execution of the driver.
141	
142	   Statistics are maintained on a per adapter basis. Driver entry
143	   point call counts and transfer size counts are maintained.
144	   Statistics are only available for kernels greater than or equal
145	   to v1.3.0 with the CONFIG_PROC_FS (/proc) file system configured.
146	
147	   AdvanSys SCSI adapter files have the following path name format:
148	
149	      /proc/scsi/advansys/{0,1,2,3,...}
150	
151	   This information can be displayed with cat. For example:
152	
153	      cat /proc/scsi/advansys/0
154	
155	   When ADVANSYS_STATS is not defined the AdvanSys /proc files only
156	   contain adapter and device configuration information.
157	
158	Driver LILO Option
159	
160	If init/main.c is modified as described in the 'Directions for Adding
161	the AdvanSys Driver to Linux' section (B.4.) above, the driver will
162	recognize the 'advansys' LILO command line and /etc/lilo.conf option.
163	This option can be used to either disable I/O port scanning or to limit
164	scanning to 1 - 4 I/O ports. Regardless of the option setting EISA and
165	PCI boards will still be searched for and detected. This option only
166	affects searching for ISA and VL boards.
167	
168	Examples:
169	  1. Eliminate I/O port scanning:
170	       boot: linux advansys=
171	         or
172	       boot: linux advansys=0x0
173	  2. Limit I/O port scanning to one I/O port:
174	       boot: linux advansys=0x110
175	  3. Limit I/O port scanning to four I/O ports:
176	       boot: linux advansys=0x110,0x210,0x230,0x330
177	
178	For a loadable module the same effect can be achieved by setting
179	the 'asc_iopflag' variable and 'asc_ioport' array when loading
180	the driver, e.g.
181	
182	      insmod advansys.o asc_iopflag=1 asc_ioport=0x110,0x330
183	
184	If ADVANSYS_DEBUG is defined a 5th (ASC_NUM_IOPORT_PROBE + 1)
185	I/O Port may be added to specify the driver debug level. Refer to
186	the 'Driver Compile Time Options and Debugging' section above for
187	more information.
188	
189	Credits (Chronological Order)
190	
191	Bob Frey <bfrey@turbolinux.com.cn> wrote the AdvanSys SCSI driver
192	and maintained it up to 3.3F. He continues to answer questions
193	and help maintain the driver.
194	
195	Nathan Hartwell <mage@cdc3.cdc.net> provided the directions and
196	basis for the Linux v1.3.X changes which were included in the
197	1.2 release.
198	
199	Thomas E Zerucha <zerucha@shell.portal.com> pointed out a bug
200	in advansys_biosparam() which was fixed in the 1.3 release.
201	
202	Erik Ratcliffe <erik@caldera.com> has done testing of the
203	AdvanSys driver in the Caldera releases.
204	
205	Rik van Riel <H.H.vanRiel@fys.ruu.nl> provided a patch to
206	AscWaitTixISRDone() which he found necessary to make the
207	driver work with a SCSI-1 disk.
208	
209	Mark Moran <mmoran@mmoran.com> has helped test Ultra-Wide
210	support in the 3.1A driver.
211	
212	Doug Gilbert <dgilbert@interlog.com> has made changes and
213	suggestions to improve the driver and done a lot of testing.
214	
215	Ken Mort <ken@mort.net> reported a DEBUG compile bug fixed
216	in 3.2K.
217	
218	Tom Rini <trini@kernel.crashing.org> provided the CONFIG_ISA
219	patch and helped with PowerPC wide and narrow board support.
220	
221	Philip Blundell <philb@gnu.org> provided an
222	advansys_interrupts_enabled patch.
223	
224	Dave Jones <dave@denial.force9.co.uk> reported the compiler
225	warnings generated when CONFIG_PROC_FS was not defined in
226	the 3.2M driver.
227	
228	Jerry Quinn <jlquinn@us.ibm.com> fixed PowerPC support (endian
229	problems) for wide cards.
230	
231	Bryan Henderson <bryanh@giraffe-data.com> helped debug narrow
232	card error handling.
233	
234	Manuel Veloso <veloso@pobox.com> worked hard on PowerPC narrow
235	board support and fixed a bug in AscGetEEPConfig().
236	
237	Arnaldo Carvalho de Melo <acme@conectiva.com.br> made
238	save_flags/restore_flags changes.
239	
240	Andy Kellner <AKellner@connectcom.net> continued the Advansys SCSI
241	driver development for ConnectCom (Version > 3.3F).
242	
243	Ken Witherow for extensive testing during the development of version 3.4.
Hide Line Numbers
About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog

Information is copyright its respective author. All material is available from the Linux Kernel Source distributed under a GPL License. This page is provided as a free service by mjmwired.net.