aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/isp
Commit message (Collapse)AuthorAgeFilesLines
* MFC:Matt Jacob2002-05-021-6/+23
| | | | | | | | | | | | | | If we get a DATA UNDERRUN error from QLogic FC cards, but the RQCS_RU bit is not set in the scsi completion status, or if the residual is clearly nonsense, then this was a command that suffered the loss of one or more FC frames in the middle of the exchange. Set HBA_BOTCH and hope it will get retried. It's the only thing we can do. Approved by: re@freebsd.org Notes: svn path=/stable/4/; revision=95907
* MFC: new way of getting stuff from fabric name servers; slight cleanup ofMatt Jacob2002-04-167-293/+882
| | | | | | | dma stuff; increase size of FC scratch area. Notes: svn path=/stable/4/; revision=94882
* MFC:Matt Jacob2002-03-214-23/+54
| | | | | | | | | | | | | | | | | | | | | Limit fabric search to a default 256 entries. This will all go away soon because it's just getting harder and harder to find switches that correctly implement the GET ALL NEXT subcommands for the SNS protocol. Latch up result out pointer and set a busy flag when we're looking at the response queue. This allows for a cleaner way to make sure we don't get multiple CPUs trying to read the same response queue entries. Change how isp_handle_other_response returns values (clarity). Make PORT UNAVAILABLE the same as PORT LOGOUT (force a LIP). Do some formatting changes. Notes: svn path=/stable/4/; revision=92912
* Move isp_pci.c to dev/isp in RELENG_4 branch.Matt Jacob2002-02-221-136/+102
| | | | Notes: svn path=/stable/4/; revision=91088
* MFC: Separation of 2300/2312 support. Enabling of RIO for FC && LVD cards.Matt Jacob2002-02-2210-91/+869
| | | | | | | | | Implementation of f/w crash dumps. Fixing problems with port logouts. Snagging 'lost command' cases for 1080 cards. Mailbox continuations to reduce sleep/wakeup load (and make for fast boots) Notes: svn path=/stable/4/; revision=91076
* This commit was manufactured by cvs2svn to create branch 'RELENG_4'.cvs2svn2002-02-221-0/+2062
| | | | Notes: svn path=/stable/4/; revision=91044
* MFC: Add missing move of relative offset for CTIO2 updates.Matt Jacob2002-01-121-0/+1
| | | | | | | Approved by: re@freebsd.org Notes: svn path=/stable/4/; revision=89291
* MFC: Major restructuring for swizzling to the request queue and unswizzling fromMatt Jacob2001-12-148-425/+1408
| | | | | | | | | | the response queue. Instead of the ad hoc ISP_SWIZZLE_REQUEST, we now have a complete set of inline functions in isp_inline.h. Each platform is responsible for providing just one of a set of ISP_IOX_{GET,PUT}{8,16,32} macros. Notes: svn path=/stable/4/; revision=87851
* MFC 1.81: Set QFULL scsi status if we get RQCS_QUEUE_FULL.Matt Jacob2001-10-291-8/+25
| | | | Notes: svn path=/stable/4/; revision=85702
* MFC: Protect against deranged fabric nameservers that spit out 10000 identicalMatt Jacob2001-10-201-3/+16
| | | | | | | port numbers. Notes: svn path=/stable/4/; revision=85253
* MFC: various things, mostly the most recent 2300 support.Matt Jacob2001-10-089-607/+993
| | | | Notes: svn path=/stable/4/; revision=84657
* MFC 1.69- handle ISPASYNC_UNHANDLED_RESPONSE.Matt Jacob2001-08-161-1/+2
| | | | | | | Approved by: re@freebsd.org Notes: svn path=/stable/4/; revision=81801
* MFC 1.71: Oops- don't set 'goal' twice when you mean to set 'nvrm' as well.Matt Jacob2001-08-021-1/+1
| | | | | | | This breaks bogus NVRAM boards. Notes: svn path=/stable/4/; revision=81027
* MFC SCSI device flag changes; Roll core minorMatt Jacob2001-07-301-10/+14
| | | | Notes: svn path=/stable/4/; revision=80587
* roll platform minorMatt Jacob2001-07-301-1/+1
| | | | Notes: svn path=/stable/4/; revision=80586
* MFC:Matt Jacob2001-07-301-86/+65
| | | | | | | | | | SCSI device flag changes Fix for 28992- (mixed results- wilko still sees the problem, fix works for me) Notes: svn path=/stable/4/; revision=80585
* MFC:Matt Jacob2001-07-301-162/+154
| | | | | | | | changes to SCSI device flag settings scanning local loop addresses for FL port topologies Notes: svn path=/stable/4/; revision=80584
* Not Quite MFC (-current has ithreads):Matt Jacob2001-07-081-7/+18
| | | | | | | | Be more cautions about saying intsok (which is a misnomer- it really should 'tsleep okay'). Notes: svn path=/stable/4/; revision=79421
* fix munged header lineMatt Jacob2001-07-071-1/+1
| | | | Notes: svn path=/stable/4/; revision=79407
* Ooops- don't forget to pull isp_ioctl.h back into RELENG_4 branch.Matt Jacob2001-07-041-1/+1
| | | | Notes: svn path=/stable/4/; revision=79244
* Massive MFC- probably breaking lots of rules to do this, but limitedMatt Jacob2001-07-049-967/+1252
| | | | | | | | | | | | | | | | | | | | time, etc., etc... Basic gist of changes: Beginnings of 2300 support. Addition of a /dev entry and ioctl entry point for the HBA (sort of meaningless in RELENG_4- it's really only useful in DEVFS for -current- but you *could* make the entries by hand (not worth really asking for a reserved major as this is edge case debugging stuff for me mostly). Implementation of kthread for Fibre Channel loop cleanup. Lots of buglet fixes. Ansification. Lots of target mode cleanup. Notes: svn path=/stable/4/; revision=79243
* This commit was manufactured by cvs2svn to create branch 'RELENG_4'.cvs2svn2001-06-011-0/+76
| | | | Notes: svn path=/stable/4/; revision=77591
* MFC: Role core minor. Handles are 16, not 32 bits. Add the ISPCTL_RUN_MBOXCMDMatt Jacob2001-03-041-3/+11
| | | | | | | | isp_control functio. Add the ISPASYNC_UNHANDLED_RESPONSE response async event code. Notes: svn path=/stable/4/; revision=73549
* MFC: The flag ICBOPT_BOTH_WWNS is more descriptive than ICBOPT_USE_PORTNAME.Matt Jacob2001-03-041-1/+1
| | | | Notes: svn path=/stable/4/; revision=73547
* MFC: Update copyright. Accomodate changes to Qlogic parallel SCSI targetMatt Jacob2001-03-041-9/+13
| | | | | | | | | | | mode spec (half of what had been a 32 bit 'driver reserved' value is now a 16 bit handle that is used to correllate CTIOs with a specific ATIO- we have to make sure we pass it on thru. Propagate back proper at2_entry format (instead of one derived from an at_entry). Handles are 16, not 32 bits. Notes: svn path=/stable/4/; revision=73546
* MFC: rev copyright. propage Asmodai's spelling correction. HandlesMatt Jacob2001-03-041-3/+4
| | | | | | | are 16 not 32 bits now. Notes: svn path=/stable/4/; revision=73545
* MFC: handles are 16 not 32 bits now.Matt Jacob2001-03-041-14/+14
| | | | Notes: svn path=/stable/4/; revision=73544
* Roll platform minor.Matt Jacob2001-03-041-9/+9
| | | | | | | | MFC: Remove name/unit from softc- replace with device_t from probe. Store default WWWs for both port && node. Notes: svn path=/stable/4/; revision=73543
* MFC: Remove usage of isp->isp_name/isp->isp_unit (use isp->isp_dev). RemoveMatt Jacob2001-03-041-55/+81
| | | | | | | | | | | stray newline in foormat string. Note the we don't support 2nd channel on 12160/1280 cards in target mode yet. Clean up target mode so that it more or less works again. Remove nearly all printfs and use device_printf or isp_prt. Handles are 16- not 32 bits now. We can now cope with at least the latest Qlogic 1040 Target Mode f/w (12160/1X80 not working yet). Notes: svn path=/stable/4/; revision=73542
* MFC: Update Copyright. Change handles from 32 to 16 bits. Catch aMatt Jacob2001-03-041-28/+70
| | | | | | | | longstanding bug about making sure that we're using both WWNs (port and node). Add ISPCTL_RUN_MBOXCMD isp_control function. Notes: svn path=/stable/4/; revision=73541
* MFC: Fix isp_print_qentry to print all four lines- it's been broken for months.Matt Jacob2001-03-021-2/+3
| | | | Notes: svn path=/stable/4/; revision=73312
* MFC: removal of ISP2100_FABRIC. Insertion of extra loop states. MoreMatt Jacob2001-02-121-19/+86
| | | | | | | MFC: isp_control functions && defines && explanations. Ditto isp_control. Notes: svn path=/stable/4/; revision=72385
* MFC: FC-AL position map structure.Matt Jacob2001-02-121-0/+16
| | | | Notes: svn path=/stable/4/; revision=72384
* MFC: implementation of isp_fc_runstate function.Matt Jacob2001-02-121-0/+54
| | | | Notes: svn path=/stable/4/; revision=72383
* Roll version minor. MFC: removal of ISP2100_FABRIC.Matt Jacob2001-02-121-2/+1
| | | | Notes: svn path=/stable/4/; revision=72382
* MFC: cleanup of adapter role, 'fixing' of target mode.Matt Jacob2001-02-121-35/+33
| | | | Notes: svn path=/stable/4/; revision=72381
* MFC: major rework of loop events.Matt Jacob2001-02-121-370/+593
| | | | Notes: svn path=/stable/4/; revision=72380
* MFC: removal of MAINTAINER (let the games begin!)Matt Jacob2001-02-121-2/+0
| | | | Notes: svn path=/stable/4/; revision=72379
* MFC: constify some strings (for better compile time checking support).Matt Jacob2001-01-171-129/+260
| | | | | | | | | | | Reset FPM/FBM for 2X00 cards in isp_reset. Implement HBA role support. Some isp_prt argument cleanup. Change some fabric stuff to use targets 0..125 in F-port topologies, notice when fabric devices go away. Register FC4 types with the name server (so we can work with McData switches). Yet again fool around with some more WWN default stuff. Notes: svn path=/stable/4/; revision=71186
* MFC: fix for overflowing 32 bit timeout tick values (on high HZ alphas).Matt Jacob2001-01-171-22/+49
| | | | | | | | Fix some isp_prt missing/misplaced arguments. Accomodate recent changes to Fabric Support. Notes: svn path=/stable/4/; revision=71185
* MFC: Roll platform version. Wait longer for mailbox commands to time out.Matt Jacob2001-01-171-6/+11
| | | | | | | | Print out opcode if we imeout. MFC fix for 22650 (remember to set CAM_AUTOSNS_VALID if we have sense data). Notes: svn path=/stable/4/; revision=71183
* Add in offsets for ATIO2 WWPN && ATIO2 OXIDs...Matt Jacob2001-01-171-0/+3
| | | | Notes: svn path=/stable/4/; revision=71182
* MFC: add some specific 2X00 status request defines. Add in the SNSMatt Jacob2001-01-171-1/+13
| | | | | | | offsets && sizes for REGISTER FC4 SNS subcommands. Notes: svn path=/stable/4/; revision=71181
* MFC: add enough bits to access and reset the FPM and FBM modules.Matt Jacob2001-01-171-0/+17
| | | | Notes: svn path=/stable/4/; revision=71180
* MFC: Add in HBA roles. Shuffle some fabric stuff so that ISPASYNC_PDB_CHANGEDMatt Jacob2001-01-171-12/+54
| | | | | | | | | | | is gone and replaced by ISPASYNC_LOGGED_INOUT, and ISPASYNC_CHANGE_NOTIFY covers both fabric and local loop stuff. Declare isp_rpt to be a printf like function (for GNUC compilers only). Hey- it helped catch some missing arg cases. Notes: svn path=/stable/4/; revision=71179
* MFC: Add interrupt instrumentation. Change ISP_CFG_NPORT config option toMatt Jacob2000-12-051-1/+11
| | | | | | | | a set of options that allows specific loop, loop-only, nport, nport-only topology settings. Define a required macro for all platforms (USEC_SLEEEP). Notes: svn path=/stable/4/; revision=69602
* MFC: Only call ISP_UNLOCK/ISP_LOCK if isp->isp_osinfo.intsok in USEC_SLEEP.Matt Jacob2000-12-051-42/+45
| | | | | | | | | | Add a test against isp->isp_osinfo.islocked prior to trying to see whether --isp->isp_osinfo.islocked is zero to cause us to unlock (non-SMPLOCK case). Add USEC_SLEEP macro support. Change the location at which we define ISP_LOCK/ISP_UNLOCK macros. Roll minor revision again. Notes: svn path=/stable/4/; revision=69601
* MFC: Replace some more printfs with isp_prt's. Use isp_prt/ISP_LOGDEBUG0Matt Jacob2000-12-051-33/+32
| | | | | | | for rate setting/getting printouts. Remove "SERVICING_INTERRUPT" nonsense Notes: svn path=/stable/4/; revision=69600
* MFC: Make the Not RESPONSE in RESPONSE QUEUE message have a bit more infoMatt Jacob2000-12-051-14/+36
| | | | | | | | | | | (specifically, how many entries we've looked at so far). Maintain interrupt instrumentation. Use USEC_SLEEP instead of USEC_DELAY in a number of places (this allows us to drop locks and sleep instead of spin). Track changes to configuration options for topology preference. Fix botched order of printout for Channel, Target, Lun. Notes: svn path=/stable/4/; revision=69599
* fix copyrightMatt Jacob2000-10-271-1/+0
| | | | Notes: svn path=/stable/4/; revision=67736