0001 .. SPDX-License-Identifier: GPL-2.0
0002
0003 =================================
0004 Qlogic FASXXX Family Driver Notes
0005 =================================
0006
0007 This driver supports the Qlogic FASXXX family of chips. This driver
0008 only works with the ISA, VLB, and PCMCIA versions of the Qlogic
0009 FastSCSI! cards as well as any other card based on the FASXX chip
0010 (including the Control Concepts SCSI/IDE/SIO/PIO/FDC cards).
0011
0012 This driver does NOT support the PCI version. Support for these PCI
0013 Qlogic boards:
0014
0015 * IQ-PCI
0016 * IQ-PCI-10
0017 * IQ-PCI-D
0018
0019 is provided by the qla1280 driver.
0020
0021 Nor does it support the PCI-Basic, which is supported by the
0022 'am53c974' driver.
0023
0024 PCMCIA Support
0025 ==============
0026
0027 This currently only works if the card is enabled first from DOS. This
0028 means you will have to load your socket and card services, and
0029 QL41DOS.SYS and QL40ENBL.SYS. These are a minimum, but loading the
0030 rest of the modules won't interfere with the operation. The next
0031 thing to do is load the kernel without resetting the hardware, which
0032 can be a simple ctrl-alt-delete with a boot floppy, or by using
0033 loadlin with the kernel image accessible from DOS. If you are using
0034 the Linux PCMCIA driver, you will have to adjust it or otherwise stop
0035 it from configuring the card.
0036
0037 I am working with the PCMCIA group to make it more flexible, but that
0038 may take a while.
0039
0040 All Cards
0041 =========
0042
0043 The top of the qlogic.c file has a number of defines that controls
0044 configuration. As shipped, it provides a balance between speed and
0045 function. If there are any problems, try setting SLOW_CABLE to 1, and
0046 then try changing USE_IRQ and TURBO_PDMA to zero. If you are familiar
0047 with SCSI, there are other settings which can tune the bus.
0048
0049 It may be a good idea to enable RESET_AT_START, especially if the
0050 devices may not have been just powered up, or if you are restarting
0051 after a crash, since they may be busy trying to complete the last
0052 command or something. It comes up faster if this is set to zero, and
0053 if you have reliable hardware and connections it may be more useful to
0054 not reset things.
0055
0056 Some Troubleshooting Tips
0057 =========================
0058
0059 Make sure it works properly under DOS. You should also do an initial FDISK
0060 on a new drive if you want partitions.
0061
0062 Don't enable all the speedups first. If anything is wrong, they will make
0063 any problem worse.
0064
0065 Important
0066 =========
0067
0068 The best way to test if your cables, termination, etc. are good is to
0069 copy a very big file (e.g. a doublespace container file, or a very
0070 large executable or archive). It should be at least 5 megabytes, but
0071 you can do multiple tests on smaller files. Then do a COMP to verify
0072 that the file copied properly. (Turn off all caching when doing these
0073 tests, otherwise you will test your RAM and not the files). Then do
0074 10 COMPs, comparing the same file on the SCSI hard drive, i.e. "COMP
0075 realbig.doc realbig.doc". Then do it after the computer gets warm.
0076
0077 I noticed my system which seems to work 100% would fail this test if
0078 the computer was left on for a few hours. It was worse with longer
0079 cables, and more devices on the SCSI bus. What seems to happen is
0080 that it gets a false ACK causing an extra byte to be inserted into the
0081 stream (and this is not detected). This can be caused by bad
0082 termination (the ACK can be reflected), or by noise when the chips
0083 work less well because of the heat, or when cables get too long for
0084 the speed.
0085
0086 Remember, if it doesn't work under DOS, it probably won't work under
0087 Linux.