Commit Graph

39 Commits

Author SHA1 Message Date
mjacob dfb8f5f43f Include isp_ioctl.h. 2001-04-10 21:52:15 +00:00
mjacob 98381c7a2d ANSIfy source. 2001-03-14 05:44:46 +00:00
mjacob bcc65cfc34 roll platform minor 2001-02-28 05:53:59 +00:00
mjacob 4409fa23b2 Remove ISP2100_FABRIC (we're always fabric now). Fix usage of isp_lastmbxcmd
to report the mailbox command that times out. Fix isp_unswizzle_sns_rsp
which for reasons *I* find obscurer just doesn't work correctly on sparc64
with words past 128. I have no idea why this *does* work on SparcLinux.
2001-02-12 23:32:11 +00:00
mjacob 6cb4620b76 (some of these changes were made in the previous revision- oops)
Say which mailbox command times out (polled or interrupting). Also,
give them a bit more time to timeout (5 seconds instead of 2).
2001-01-05 07:03:54 +00:00
mjacob 9d7f6e219f Ian McDonnell <apriori@world.std.com> made me see the error of my ways.
*Cough*. Ahem. I hadn't been setting error to XS_SENSE when there was
a check condition. Major blunder.
2001-01-05 07:02:00 +00:00
wiz c8b0b91e7e Fix pathnames in comment. 2000-12-23 01:37:57 +00:00
mjacob af2807f9f7 Finally fix this driver to be sensible about the ENDIAN dance. It's not
quite simply a question of the Qlogic being little endian and having
to have stuff swapped on big endian machines- it also has to do with the
fact that the SBus and PCI DMA layouts are wierd with respect to this.

At any rate, now finally fixed- works on Mac G4, tested it on a SS10
for sparc, checked on alpha to see if I've broken anything, and as
soon as I get another spare afternoon I'll finally install a sparc64
version which should just work (as it'll be like the Mac).
2000-12-09 08:06:31 +00:00
thorpej 60f33f91c2 Pull in <uvm/uvm_extern.h> 2000-11-14 18:35:10 +00:00
mjacob c64069308b Make changes relevant to changes in WWN defaults.
Also fix egregious bug where we would never decrement
the islocked recursion counter. I guess this means
that we don't recurse on this platform! All of this should
go away when we have real lock primitives to use in drivers.
2000-10-16 05:18:15 +00:00
mjacob b1c18a6bc7 Add a maintenance note. Move the single bit tags of islocked and
onintstack to be real integers. Add ISP_ILOCK/ISP_IUNLOCK macros.

Fix the isp_lock/isp_unlock inlines to stop being so embarrassingly
in error. Why, or why, can't I have mutex_enter/mutex_exit, pretty please?
2000-08-14 07:10:09 +00:00
tls c9dc8413bb Make our policy WRT tagged queueing consistent and sane: ordered tags for sync writes, simple tags for all else. Should make ahc and adv a bit more reliable (metadata writes won't get reordered incorrectly...) and isp a bit more performant (it was using ordered tags all the time). 2000-08-11 21:31:19 +00:00
mjacob 068c76fc80 Core version 2.0 (platform version 1.0) rewrite of ISP driver. Some
interace cleanups, some new common functions. The major impact that
will be noticeable right away is that if you boot with not Fibre connected
to the FC cards, you no longer hang indefinitely.
2000-08-01 23:55:09 +00:00
mjacob 3626695b49 Roll platform minor. We are now always supporting ISP2100_FABRIC. Add
in new MBOX_WAIT_COMPLETE/MBOX_NOTIFY_COMPLETE macros (ready for SMPizing).
Define STRNCAT inline for our usage.

Stealing a bit of the xs_status flags to maintain command state that
is pertinent for the hBA- should really reserve them for private usage
in scsipiconf.h.
2000-07-05 22:25:06 +00:00
mrg 314f1e97c5 remove include of <vm/vm.h>. <vm/vm.h> -> <uvm/uvm_extern.h> 2000-06-28 17:12:48 +00:00
mrg 89d0a3e519 remove redundant vm includes. 2000-06-26 14:38:50 +00:00
thorpej fc96443d15 New callout mechanism with two major improvements over the old
timeout()/untimeout() API:
- Clients supply callout handle storage, thus eliminating problems of
  resource allocation.
- Insertion and removal of callouts is constant time, important as
  this facility is used quite a lot in the kernel.

The old timeout()/untimeout() API has been removed from the kernel.
2000-03-23 07:01:25 +00:00
mjacob b6dd4ddacf Add in ISP_SWIZZLE_CONTINUATION macro. 2000-02-19 01:51:21 +00:00
mjacob 8f18ef5b45 restore (by request) CFGPRINTF to DIAGNOSTIC level kernels 1999-12-20 00:37:49 +00:00
mjacob edf809c8b6 Dual LVD (1280) support. 1999-12-16 05:35:42 +00:00
mjacob e363023daf Rearrange defines to make the file diff cleaner with OpenBSD. Change CFGPRINTF
and default verbose levels. Add in a forced compile in f/w define unless
either IS_DISABLE_FW or ISP_COMPILE_FW defined.
1999-12-04 02:59:29 +00:00
mjacob 3f83c69972 Roll platform version. Keep a bitmap of 'discovered' devices for SCSI adapters
so we'll know when it's time to switch from 'slow' command mode to normal.
Change some settings for configuration printfs and debug levels. Redo the
internal ispscsicmd return definitions and let isp_cmd translate them as
approrpriate to NetBSD values. Remove the inline functions from here- they're
now in isp_inline.h. Put in the start of the correct SWIZZLE/UNSWIZZLE
functions.
1999-10-14 02:33:38 +00:00
thorpej fe12736867 Update for SCSIPI changes. Note that capabilities update is disabled
until Matt Jacob has a change to update the driver for the latest
firmware, etc. since update device parameters seems to fail once the
system is really up and running, and eventually causes the controller
to wedge.  This may be due to a firmware bug.

Per discussion with Matt.
1999-09-30 23:06:18 +00:00
mjacob 6913f83874 A useful discussion with Jason convinced me that I had selected the
wrong tag as the default tag to use- we should use ORDERED, no SIMPLE.
1999-09-07 22:54:45 +00:00
mjacob f428cf36fa Change to approved NASA/Ames copyright. Add Fabric support. Fix SCCLUN support.
Add code that tries to track LoopID shifting.
1999-07-05 20:31:35 +00:00
mjacob 61bf929d14 Do a fairly large internal restructuring to accomodate dual-bus host adapters
(e.g., the 1240). Include the new 1080/1240 NVRAM layout reading code. Some
moderately significant mailbox changes were necessary also to accomodate a
second channel.
1999-05-12 18:59:23 +00:00
mjacob 2b311c7218 roll internal revs 1999-04-04 02:29:51 +00:00
mjacob 99d46bf762 add isp1080 support and some basic PDB change stuff 1999-03-26 22:39:44 +00:00
mjacob 008b51d0a6 Update the driver with some infrastructure for the 1080. Fix an embarrassing
clock botch bug. Additional infrastructure for PDB change stuff.
1999-03-17 06:15:47 +00:00
mjacob ee45547dde Roll platform revision level. Add blocked flag and waitq to osinfo structure. 1999-02-09 00:37:35 +00:00
mjacob 6bcdc2b5d2 Implement and use Fast Posting for both parallel && fibre. Redo a bit of
the startup code. Implement a call to outer framework function so that
asynchronous events can be handled (e.g., speed negotiation, target mode).

Roll internal release tags.
1999-01-30 07:31:50 +00:00
mjacob b503bb5337 cross platform define MEMZERO added 1999-01-10 05:04:18 +00:00
mjacob e5e787230b clean up headers; move uninit/watch to outer layers 1998-12-28 19:10:43 +00:00
mjacob d610e1ad3f Update BA for new max_lun parameter for SCSIbusses. Clearify maximum luns
for FC HB based upon a SCCLUN define (15 for normal- 255 out of a possible
65535 for SCCLUN). Propagate loopid as adapter_target.

Roll minor platform version. Roll core version number.

Update mailbox definitions with cleaner target mode structure definitions.
Clean up some ENDIAN stuff. Correct botched ISP2100_NVRAM_HARDLOOPID offset.
1998-12-05 19:48:23 +00:00
thorpej 5f0577babc Adapt to the new scsipi_adapter interface. 1998-11-19 21:43:00 +00:00
mjacob 24717f3c3a cleanup header to be just NetBSD 1998-09-17 22:50:53 +00:00
mjacob 9752520872 roll revision, change default tagging to simple tags 1998-09-08 07:18:56 +00:00
mjacob 576988940f roll revision 1998-07-18 21:04:46 +00:00
mjacob d96bd50c07 NetBSD OS specific routines and definitions. 1998-07-15 19:44:04 +00:00