we don't, somehow, inadvertantly overrun the total
number of queue entries for a command + continuation
segments.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@680 d57e44dd-8a1f-0410-8b47-8ef2f437770f
recovery from not being able to push a ctio
fix is in. Various task management fixes are
also in. Other work in progress.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@672 d57e44dd-8a1f-0410-8b47-8ef2f437770f
Add support for up through 2.6.25 (might even be good for 2.6.26)
Remove HBAAPI support. This never has worked well and I doubt anyone will miss it.
Remove files not pertinent SCST build.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@493 d57e44dd-8a1f-0410-8b47-8ef2f437770f
warning: Using plain integer as NULL pointer
warning: obsolete struct initializer, use C99 syntax
warning: symbol 'hba_api_ioctl_operations' was not declared. Should it be static?
Submitted-by: Dotan Barak <dotanba@gmail.com>
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@488 d57e44dd-8a1f-0410-8b47-8ef2f437770f
The patch below implements the following changes:
- Fixes the remaining warnings reported by checkpatch.pl with regard to the use
of whitespace in C code.
- Adds double qoutes around some #warning messages, such that checkpatch.pl
does no longer try to interprete the text behind the #warning preprocessor
directive.
- Adds an extra conversion to the generate-kernel-patch script that removes
the single space from before goto-labels while generating the kernel patch.
This patch has been tested as follows:
- Verified that svn diff -x -w only shows changes in the #warning preprocessor directives.
- Verified the output of svn diff by reading it.
- Verified that checkpatch.pl does no longer complain on the use of whitespace
(searched through the checkpatch.pl output for the text ' space').
- Verified that the patch generated by the generate-kernel-patch script still
applies cleanly to the 2.6.24 kernel, and that the patched kernel still compiles cleanly.
Please let me know if I have to resubmit parts of this patch to other SCST authors.
Signed-off-by: Bart Van Assche <bart.vanassche@gmail.com>
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@381 d57e44dd-8a1f-0410-8b47-8ef2f437770f
One of the Linux kernel patch submission requirements is that source files do
not contain trailing whitespace. The patch below removes trailing whitespace
from .c and .h source files.
Note: it might be more convenient to run the script I used to generate this
patch than to review and apply the patch below. This is how I generated and
verified the patch below:
cat <<EOF >./strip-trailing-whitespace
#!/bin/bash
trap "rm -f $t" EXIT
t=/tmp/temporary-file.$$
for f in "$@"
do
sed 's/[ ]*$//' <"$f" >"$t" && mv "$t" "$f"
done
EOF
chmod a+x ./strip-trailing-whitespace
find -name '*.[ch]' | xargs ./strip-trailing-whitespace
svn diff -x -w
Signed-off-by: <bart.vanassche@gmail.com>
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@377 d57e44dd-8a1f-0410-8b47-8ef2f437770f
- Make pre-1240 cards be able to do 64 bit dma as well, making sure that
they don't cross a 16MB boundary.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@316 d57e44dd-8a1f-0410-8b47-8ef2f437770f
- whitespace and other minor fixes
- Remove F/W crash dump support. We only worked it out for 2200 and 2300
cards. It's also true that QLogic would not support us even if we *did*
give them a crash dump, so the usage here is not really worth it.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@311 d57e44dd-8a1f-0410-8b47-8ef2f437770f
- Allow different platforms/environments to specificy the size of the
high and low private storage for tmd_cmd_t structures
- Add a scan scsi thread event so that we can attach devices as we
discover them
- Fix some tabs
- Make things work correctly when CONFIG_FW_LOADER is *not* defined
- Get rid of sema and use wait_interruptible
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@307 d57e44dd-8a1f-0410-8b47-8ef2f437770f
Clean up MSI-X implementation and make sure we snag at least *3* vectors
so that the ATIO-Q vector is snagged.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@284 d57e44dd-8a1f-0410-8b47-8ef2f437770f
- Add a missing MSI disable and provide for pre-2.6.8 kernels.
- Fix bugs- forgot to actually compile (shame on me).
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@283 d57e44dd-8a1f-0410-8b47-8ef2f437770f
I don't know why I thought this would work- forcing a re-login to the fabric
controller just barfs.
Make down count reflect jiffies elapsed rather than depend on calls to
ISP_FC_RESCAN.
Shorten deadloop time default to 10 seconds.
At least enable MSI (if not MSI-X) for 24XX cards.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@282 d57e44dd-8a1f-0410-8b47-8ef2f437770f
Make 2100/2200 and 2300 cards also maintain a target mode port database.
For the 24XX, we have to find the IID, N-port handle and channel when we
get an ATIO7. For the other cards, we already have the channel and N-port
handle and Port IID of the initiator, but have to find the S_ID.
Do the isp_find_pdb_by_{sid,loopid} functions search backwards to minimize
search time.
Don't load fw images more than once per device type!
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@279 d57e44dd-8a1f-0410-8b47-8ef2f437770f
- Allow ISP_FC_GETDINFO callers to get target mode entries.
- Remove stray '`' from define and PPC is now working again.
- Fix a typo which had us loading 2322 f/w into a 2300. Oops.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@278 d57e44dd-8a1f-0410-8b47-8ef2f437770f
Put RISC_CODE define in the firmware files.
Use the Linux 2.6 firmware loader support if available. This saves
close to 700K of useless code getting loaded otherwise.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@277 d57e44dd-8a1f-0410-8b47-8ef2f437770f
- Add ASYNC_RCV_ERR
- Allow LIP to have a (possible) channel.
- Update for some channel stuff.
- whitespace
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@268 d57e44dd-8a1f-0410-8b47-8ef2f437770f
- Make sure we set/clear TDFL_ERROR
- Make sure we set SENSE VALID when we do a synthetic CTIO that has status.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@266 d57e44dd-8a1f-0410-8b47-8ef2f437770f
Add unit attention injection. Fix some ridiculous Sense things.
Say why we couldn't pci register the driver.
Make isp_thread_event return an int if it fails to send the event. If it
fails to send the event, and this was for the 24XX card finding out the
initiator for a command, return the command with a BUSY status.
An N-port handle of zero is legal for a 24XX.
Add some more special N-Port handle definitions for 2K f/w.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@265 d57e44dd-8a1f-0410-8b47-8ef2f437770f
Warn about bogus sense data in isp_target_start_ctio. Remove some redundant
zero initializations.
Make more common and more useful the debug printouts for the
various target dma mapping routines.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@264 d57e44dd-8a1f-0410-8b47-8ef2f437770f
Hmm. Just in case INI_ANY and INI_NONE are not defined, define them here.
This is for the case of external software including isp_tpublic.h only.
Fix some misapplied flags.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@261 d57e44dd-8a1f-0410-8b47-8ef2f437770f
Go for the gusto and merge multichan_development into the head branch. This
will break FreeBSD and NetBSD ports for a while (yawn) and solaris is dubious
anyway.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@260 d57e44dd-8a1f-0410-8b47-8ef2f437770f
-revert the part of 1.174 that stopped complaining about not finding
fast posting handles.
-pull REPORT LUNS (and LUN INVENTORY MAY HAVE CHANGE CA condition) from
multi-channel branch
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@256 d57e44dd-8a1f-0410-8b47-8ef2f437770f
- clean up tpublic notes and change tmd_xfr_t to tmd_xact_t
- minor cleanups from mendocino
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@255 d57e44dd-8a1f-0410-8b47-8ef2f437770f
+ The 24XX code in isp_target_start_ctio was setting the wrong values
to set SENSE LENGTH VALID for the FCP RSPNS IU.
+ Amusingly enough, this apparently didn't matter. In fact, once sense
data was being put into the ct7_entry_t there was *still* a problem
and REQUEST SENSE was being sent by the Linux initiator.
+ What *was* happening is that the 24XX requries the response data to
be 32 bit swapped. This is not obvious from the chip documents.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@215 d57e44dd-8a1f-0410-8b47-8ef2f437770f
set it up. Otherwise we get irq number from legacy BIOS range and proper irq
(other number from PCI range) is not handled or handled by other driver -
- VERY VERY BAD THINGS happen then.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@178 d57e44dd-8a1f-0410-8b47-8ef2f437770f
This is SCST driver for ISP Qlogic chipsets commonly used in many SCSI and FC
host bus adapters. Supported chipset are listed in README file, incomplete
list of supported HBA's is in doc/Hardware.txt .
It is based on Matthew Jacob's multiplatform driver for ISP chipsets,
which can be download from ftp://ftp.feral.com/pub/isp/isp_dist.tgz
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@135 d57e44dd-8a1f-0410-8b47-8ef2f437770f