diff --git a/qla_isp/LICENSE b/qla_isp/LICENSE index fe47a29ea..c6aca8d85 100644 --- a/qla_isp/LICENSE +++ b/qla_isp/LICENSE @@ -1,4 +1,4 @@ -Copyright (c) 1997-2007 by Matthew Jacob +Copyright (c) 1997-2008 by Matthew Jacob All rights reserved. Redistribution and use in source and binary forms, with or without @@ -50,4 +50,4 @@ USA gplbsd at feral com -$Id: LICENSE,v 1.9 2007/07/07 23:20:56 mjacob Exp $ +$Id: LICENSE,v 1.10 2008/02/11 23:59:06 mjacob Exp $ diff --git a/qla_isp/common/isp.c b/qla_isp/common/isp.c index e51c19279..be11345e7 100644 --- a/qla_isp/common/isp.c +++ b/qla_isp/common/isp.c @@ -1,6 +1,6 @@ -/* $Id: isp.c,v 1.195 2008/01/25 22:20:15 mjacob Exp $ */ +/* $Id: isp.c,v 1.197 2008/02/11 23:59:06 mjacob Exp $ */ /*- - * Copyright (c) 1997-2007 by Matthew Jacob + * Copyright (c) 1997-2008 by Matthew Jacob * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -2318,7 +2318,7 @@ isp_plogx(ispsoftc_t *isp, int chan, uint16_t handle, uint32_t portid, SNPRINTF(buf, sizeof (buf), "already logged in with N-Port handle 0x%x", parm1); msg = buf; - rval = MBOX_PORT_ID_USED | (handle << 16); + rval = MBOX_PORT_ID_USED | (parm1 << 16); break; case PLOGX_IOCBERR_HNDLUSED: lev = ISP_LOGSANCFG|ISP_LOGDEBUG0; @@ -2437,7 +2437,7 @@ isp_getpdb(ispsoftc_t *isp, int chan, uint16_t id, isp_pdb_t *pdb, int dolock) MEMZERO(&mbs, sizeof (mbs)); mbs.param[0] = MBOX_GET_PORT_DB; if (IS_24XX(isp)) { - mbs.ibits = (1 << 9); + mbs.ibits = (1 << 9)|(1 << 10); mbs.param[1] = id; mbs.param[9] = chan; } else if (ISP_CAP_2KLOGIN(isp)) { @@ -6691,6 +6691,7 @@ isp_parse_status_24xx(ispsoftc_t *isp, isp24xx_statusreq_t *sp, isp_prt(isp, ISP_LOGINFO, "Chan %d port %s for target %d", chan, reason, XS_TGT(xs)); + /* * There is no MBOX_INIT_LIP for the 24XX. */ diff --git a/qla_isp/common/isp_library.c b/qla_isp/common/isp_library.c index 0ff5c6120..6f14adb85 100644 --- a/qla_isp/common/isp_library.c +++ b/qla_isp/common/isp_library.c @@ -1,6 +1,6 @@ -/* $Id: isp_library.c,v 1.49 2008/01/04 16:48:57 mjacob Exp $ */ +/* $Id: isp_library.c,v 1.50 2008/02/11 23:59:06 mjacob Exp $ */ /*- - * Copyright (c) 1997-2007 by Matthew Jacob + * Copyright (c) 1997-2008 by Matthew Jacob * All rights reserved. * * Redistribution and use in source and binary forms, with or without diff --git a/qla_isp/common/isp_library.h b/qla_isp/common/isp_library.h index 449faa949..06b4db069 100644 --- a/qla_isp/common/isp_library.h +++ b/qla_isp/common/isp_library.h @@ -1,6 +1,6 @@ -/* $Id: isp_library.h,v 1.27 2008/01/04 16:48:57 mjacob Exp $ */ +/* $Id: isp_library.h,v 1.28 2008/02/11 23:59:06 mjacob Exp $ */ /*- - * Copyright (c) 1997-2007 by Matthew Jacob + * Copyright (c) 1997-2008 by Matthew Jacob * All rights reserved. * * Redistribution and use in source and binary forms, with or without diff --git a/qla_isp/common/isp_stds.h b/qla_isp/common/isp_stds.h index 035bb02b9..211cc3af3 100644 --- a/qla_isp/common/isp_stds.h +++ b/qla_isp/common/isp_stds.h @@ -1,6 +1,6 @@ -/* $Id: isp_stds.h,v 1.13 2007/12/02 22:02:04 mjacob Exp $ */ +/* $Id: isp_stds.h,v 1.14 2008/02/11 23:59:06 mjacob Exp $ */ /*- - * Copyright (c) 1997-2007 by Matthew Jacob + * Copyright (c) 1997-2008 by Matthew Jacob * All rights reserved. * * Redistribution and use in source and binary forms, with or without diff --git a/qla_isp/common/isp_target.c b/qla_isp/common/isp_target.c index 69904c826..ed2afcc15 100644 --- a/qla_isp/common/isp_target.c +++ b/qla_isp/common/isp_target.c @@ -1,6 +1,6 @@ -/* $Id: isp_target.c,v 1.74 2008/01/04 16:47:18 mjacob Exp $ */ +/* $Id: isp_target.c,v 1.75 2008/02/11 23:59:06 mjacob Exp $ */ /*- - * Copyright (c) 1997-2007 by Matthew Jacob + * Copyright (c) 1997-2008 by Matthew Jacob * All rights reserved. * * Redistribution and use in source and binary forms, with or without diff --git a/qla_isp/common/isp_target.h b/qla_isp/common/isp_target.h index a8dcca8cf..4018b9d7b 100644 --- a/qla_isp/common/isp_target.h +++ b/qla_isp/common/isp_target.h @@ -1,6 +1,6 @@ -/* $Id: isp_target.h,v 1.59 2008/01/04 16:47:18 mjacob Exp $ */ +/* $Id: isp_target.h,v 1.60 2008/02/11 23:59:06 mjacob Exp $ */ /*- - * Copyright (c) 1997-2007 by Matthew Jacob + * Copyright (c) 1997-2008 by Matthew Jacob * All rights reserved. * * Redistribution and use in source and binary forms, with or without diff --git a/qla_isp/common/isp_tpublic.h b/qla_isp/common/isp_tpublic.h index 9a20597f4..82102a671 100644 --- a/qla_isp/common/isp_tpublic.h +++ b/qla_isp/common/isp_tpublic.h @@ -1,6 +1,6 @@ -/* $Id: isp_tpublic.h,v 1.40 2007/12/20 18:27:06 mjacob Exp $ */ +/* $Id: isp_tpublic.h,v 1.41 2008/02/11 23:59:06 mjacob Exp $ */ /*- - * Copyright (c) 1997-2007 by Matthew Jacob + * Copyright (c) 1997-2008 by Matthew Jacob * All rights reserved. * * Redistribution and use in source and binary forms, with or without diff --git a/qla_isp/common/ispmbox.h b/qla_isp/common/ispmbox.h index 58c2510eb..d6543679f 100644 --- a/qla_isp/common/ispmbox.h +++ b/qla_isp/common/ispmbox.h @@ -1,6 +1,6 @@ -/* $Id: ispmbox.h,v 1.70 2008/01/07 19:07:07 mjacob Exp $ */ +/* $Id: ispmbox.h,v 1.71 2008/02/11 23:59:06 mjacob Exp $ */ /*- - * Copyright (c) 1997-2007 by Matthew Jacob + * Copyright (c) 1997-2008 by Matthew Jacob * All rights reserved. * * Redistribution and use in source and binary forms, with or without diff --git a/qla_isp/common/ispreg.h b/qla_isp/common/ispreg.h index 8f20e9672..f35b767c2 100644 --- a/qla_isp/common/ispreg.h +++ b/qla_isp/common/ispreg.h @@ -1,6 +1,6 @@ -/* $Id: ispreg.h,v 1.27 2007/12/02 22:02:04 mjacob Exp $ */ +/* $Id: ispreg.h,v 1.28 2008/02/11 23:59:06 mjacob Exp $ */ /*- - * Copyright (c) 1997-2007 by Matthew Jacob + * Copyright (c) 1997-2008 by Matthew Jacob * All rights reserved. * * Redistribution and use in source and binary forms, with or without diff --git a/qla_isp/common/ispvar.h b/qla_isp/common/ispvar.h index f5ed946b0..39015e09e 100644 --- a/qla_isp/common/ispvar.h +++ b/qla_isp/common/ispvar.h @@ -1,6 +1,6 @@ -/* $Id: ispvar.h,v 1.91 2008/01/08 20:40:22 mjacob Exp $ */ +/* $Id: ispvar.h,v 1.92 2008/02/11 23:59:06 mjacob Exp $ */ /*- - * Copyright (c) 1997-2007 by Matthew Jacob + * Copyright (c) 1997-2008 by Matthew Jacob * All rights reserved. * * Redistribution and use in source and binary forms, with or without diff --git a/qla_isp/doc/DriverManual.txt b/qla_isp/doc/DriverManual.txt index f8b979d2c..9ea641086 100644 --- a/qla_isp/doc/DriverManual.txt +++ b/qla_isp/doc/DriverManual.txt @@ -1,5 +1,5 @@ -$Id: DriverManual.txt,v 1.6 2006/02/17 22:53:44 mjacob Exp $ -Copyright (c) 1997-2004 by Matthew Jacob +$Id: DriverManual.txt,v 1.7 2008/02/11 23:59:06 mjacob Exp $ +Copyright (c) 1997-2008 by Matthew Jacob All rights reserved. Driver Theory of Operation Manual diff --git a/qla_isp/doc/Hardware.txt b/qla_isp/doc/Hardware.txt index 5241cbccf..006eddd3e 100644 --- a/qla_isp/doc/Hardware.txt +++ b/qla_isp/doc/Hardware.txt @@ -1,5 +1,5 @@ -$Id: Hardware.txt,v 1.6 2006/02/17 22:53:44 mjacob Exp $ -Copyright (c) 1997-2004 by Matthew Jacob +$Id: Hardware.txt,v 1.7 2008/02/11 23:59:06 mjacob Exp $ +Copyright (c) 1997-2008 by Matthew Jacob All rights reserved. Hardware that is Known To or Should Work with This Driver diff --git a/qla_isp/linux-2.6/Makefile b/qla_isp/linux-2.6/Makefile index ccdca3d8f..8ccb90fbe 100644 --- a/qla_isp/linux-2.6/Makefile +++ b/qla_isp/linux-2.6/Makefile @@ -1,8 +1,8 @@ -# $Id: Makefile,v 1.9 2007/12/11 22:19:39 mjacob Exp $ +# $Id: Makefile,v 1.10 2008/02/11 23:59:06 mjacob Exp $ # # Makefile # -# Copyright (c) 2006-2007 by Matthew Jacob +# Copyright (c) 2006-2008 by Matthew Jacob # # This program is free software; you can redistribute it and/or modify # it under the terms of The Version 2 GNU General Public License as published diff --git a/qla_isp/linux/isp_cb_ops.c b/qla_isp/linux/isp_cb_ops.c index 641c77a97..27fd94918 100644 --- a/qla_isp/linux/isp_cb_ops.c +++ b/qla_isp/linux/isp_cb_ops.c @@ -1,6 +1,6 @@ -/* $Id: isp_cb_ops.c,v 1.85 2008/01/14 18:39:10 mjacob Exp $ */ +/* $Id: isp_cb_ops.c,v 1.86 2008/02/11 23:59:06 mjacob Exp $ */ /* - * Copyright (c) 1997-2007 by Matthew Jacob + * Copyright (c) 1997-2008 by Matthew Jacob * All rights reserved. * * Redistribution and use in source and binary forms, with or without diff --git a/qla_isp/linux/isp_ioctl.h b/qla_isp/linux/isp_ioctl.h index 9d0578bc3..78a1f3bfb 100644 --- a/qla_isp/linux/isp_ioctl.h +++ b/qla_isp/linux/isp_ioctl.h @@ -1,6 +1,6 @@ -/* $Id: isp_ioctl.h,v 1.27 2008/01/08 18:31:21 mjacob Exp $ */ +/* $Id: isp_ioctl.h,v 1.28 2008/02/11 23:59:06 mjacob Exp $ */ /* - * Copyright (c) 1997-2007 by Matthew Jacob + * Copyright (c) 1997-2008 by Matthew Jacob * All rights reserved. * * Redistribution and use in source and binary forms, with or without diff --git a/qla_isp/linux/isp_linux.c b/qla_isp/linux/isp_linux.c index d2fc991d2..d2551eb66 100644 --- a/qla_isp/linux/isp_linux.c +++ b/qla_isp/linux/isp_linux.c @@ -1,6 +1,6 @@ -/* $Id: isp_linux.c,v 1.224 2008/01/25 22:22:47 mjacob Exp $ */ +/* $Id: isp_linux.c,v 1.226 2008/02/12 00:40:51 mjacob Exp $ */ /* - * Copyright (c) 1997-2007 by Matthew Jacob + * Copyright (c) 1997-2008 by Matthew Jacob * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -1498,7 +1498,6 @@ isp_target_start_ctio(ispsoftc_t *isp, tmd_xact_t *xact) */ if (tmd->cd_lflags & CDFL_ABORTED) { isp_prt(isp, ISP_LOGINFO, "[%llx] already ABORTED- not sending a CTIO", tmd->cd_tagval); - dump_stack(); xact->td_error = -ENXIO; goto out; } diff --git a/qla_isp/linux/isp_linux.h b/qla_isp/linux/isp_linux.h index c58510131..ad99c09f3 100644 --- a/qla_isp/linux/isp_linux.h +++ b/qla_isp/linux/isp_linux.h @@ -1,6 +1,6 @@ -/* $Id: isp_linux.h,v 1.153 2008/01/25 22:22:47 mjacob Exp $ */ +/* $Id: isp_linux.h,v 1.154 2008/02/11 23:59:06 mjacob Exp $ */ /* - * Copyright (c) 1997-2007 by Matthew Jacob + * Copyright (c) 1997-2008 by Matthew Jacob * All rights reserved. * * Redistribution and use in source and binary forms, with or without diff --git a/qla_isp/linux/isp_pci.c b/qla_isp/linux/isp_pci.c index 76bd063d8..a0469b085 100644 --- a/qla_isp/linux/isp_pci.c +++ b/qla_isp/linux/isp_pci.c @@ -1,6 +1,6 @@ -/* $Id: isp_pci.c,v 1.159 2008/01/27 01:10:42 mjacob Exp $ */ +/* $Id: isp_pci.c,v 1.161 2008/02/12 00:40:51 mjacob Exp $ */ /* - * Copyright (c) 1997-2007 by Matthew Jacob + * Copyright (c) 1997-2008 by Matthew Jacob * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -74,7 +74,7 @@ static void isp_pci_wr_reg_1080(ispsoftc_t *, int, uint32_t); defined(ISP_DISABLE_2100_SUPPORT) && defined(ISP_DISABLE_2200_SUPPORT)) static int isp_pci_rd_isr(ispsoftc_t *, uint32_t *, uint16_t *, uint16_t *); #endif -#ifndef ISP_DISABLE_2300_SUPPORT +#if !(defined(ISP_DISABLE_2300_SUPPORT) && defined(ISP_DISABLE_2322_SUPPORT)) static int isp_pci_rd_isr_2300(ispsoftc_t *, uint32_t *, uint16_t *, uint16_t *); #endif #ifndef ISP_DISABLE_2400_SUPPORT @@ -122,7 +122,8 @@ static int isplinux_pci_exclude(struct pci_dev *); #define ISP_2322_RISC_CODE NULL #define ISP_2400_RISC_CODE NULL -#if !(defined(CONFIG_FW_LOADER) || defined(CONFIG_FW_LOADER_MODULE)) +#define DISABLE_FW_LOADER 1 +#if defined(DISABLE_FW_LOADER) || !(defined(CONFIG_FW_LOADER) || defined(CONFIG_FW_LOADER_MODULE)) #ifndef ISP_DISABLE_1020_SUPPORT #include "asm_1040.h" #endif @@ -141,7 +142,7 @@ static int isplinux_pci_exclude(struct pci_dev *); #ifndef ISP_DISABLE_2300_SUPPORT #include "asm_2300.h" #endif -#ifndef ISP_DISABLE_2300_SUPPORT +#ifndef ISP_DISABLE_2322_SUPPORT #include "asm_2322.h" #endif #ifndef ISP_DISABLE_2400_SUPPORT @@ -240,6 +241,8 @@ static struct ispmdvec mdvec_2300 = { isp_pci_dumpregs, ISP_2300_RISC_CODE }; +#endif +#ifndef ISP_DISABLE_2322_SUPPORT static struct ispmdvec mdvec_2322 = { isp_pci_rd_isr_2300, isp_pci_rd_reg, @@ -787,6 +790,8 @@ isplinux_pci_init_one(struct Scsi_Host *host) if (isp->isp_mdvec->dv_ispfw == NULL) fwname = "ql2300_fw.bin"; } +#endif +#ifndef ISP_DISABLE_2322_SUPPORT if (pdev->device == PCI_DEVICE_ID_QLOGIC_ISP2322) { isp->isp_mdvec = &mdvec_2322; isp->isp_type = ISP_HA_FC_2322; @@ -1050,7 +1055,7 @@ isp_pci_rd_isr(ispsoftc_t *isp, uint32_t *isrp, uint16_t *semap, uint16_t *mbp) } #endif -#if !(defined(ISP_DISABLE_2300_SUPPORT) && defined(ISP_DISABLE_2400_SUPPORT)) +#if !(defined(ISP_DISABLE_2300_SUPPORT) && defined(ISP_DISASBLE_2322_SUPPORT) && defined(ISP_DISABLE_2400_SUPPORT)) static __inline uint32_t ispregrd32(struct isp_pcisoftc *pcs, vm_offset_t offset) { @@ -1066,7 +1071,7 @@ ispregrd32(struct isp_pcisoftc *pcs, vm_offset_t offset) } #endif -#ifndef ISP_DISABLE_2300_SUPPORT +#if !(defined(ISP_DISABLE_2300_SUPPORT) && defined(ISP_DISABLE_2322_SUPPORT)) static int isp_pci_rd_isr_2300(ispsoftc_t *isp, uint32_t *isrp, uint16_t *semap, uint16_t *mbox0p) { @@ -3314,8 +3319,10 @@ static struct pci_device_id isp_pci_tbl[] __devinitdata = { #ifndef ISP_DISABLE_2300_SUPPORT { PCI_DEVICE(PCI_VENDOR_ID_QLOGIC, PCI_DEVICE_ID_QLOGIC_ISP2300) }, { PCI_DEVICE(PCI_VENDOR_ID_QLOGIC, PCI_DEVICE_ID_QLOGIC_ISP2312) }, - { PCI_DEVICE(PCI_VENDOR_ID_QLOGIC, PCI_DEVICE_ID_QLOGIC_ISP2322) }, +#endif +#ifndef ISP_DISABLE_2322_SUPPORT { PCI_DEVICE(PCI_VENDOR_ID_QLOGIC, PCI_DEVICE_ID_QLOGIC_ISP6312) }, + { PCI_DEVICE(PCI_VENDOR_ID_QLOGIC, PCI_DEVICE_ID_QLOGIC_ISP2322) }, { PCI_DEVICE(PCI_VENDOR_ID_QLOGIC, PCI_DEVICE_ID_QLOGIC_ISP6322) }, #endif #ifndef ISP_DISABLE_2400_SUPPORT diff --git a/qla_isp/linux/scsi_target.c b/qla_isp/linux/scsi_target.c index d3e70c6c5..74d79687a 100644 --- a/qla_isp/linux/scsi_target.c +++ b/qla_isp/linux/scsi_target.c @@ -1,6 +1,6 @@ -/* $Id: scsi_target.c,v 1.80 2008/01/18 20:18:02 mjacob Exp $ */ +/* $Id: scsi_target.c,v 1.81 2008/02/11 23:59:06 mjacob Exp $ */ /* - * Copyright (c) 1997-2007 by Matthew Jacob + * Copyright (c) 1997-2008 by Matthew Jacob * All rights reserved. * * Redistribution and use in source and binary forms, with or without diff --git a/qla_isp/linux/scsi_target.h b/qla_isp/linux/scsi_target.h index d3477dcca..99f4da041 100644 --- a/qla_isp/linux/scsi_target.h +++ b/qla_isp/linux/scsi_target.h @@ -1,6 +1,6 @@ -/* $Id: scsi_target.h,v 1.29 2007/12/11 22:16:09 mjacob Exp $ */ +/* $Id: scsi_target.h,v 1.30 2008/02/11 23:59:06 mjacob Exp $ */ /* - * Copyright (c) 1997-2007 by Matthew Jacob + * Copyright (c) 1997-2008 by Matthew Jacob * All rights reserved. * * Redistribution and use in source and binary forms, with or without diff --git a/qla_isp/linux/scsi_target_ctl.c b/qla_isp/linux/scsi_target_ctl.c index f9a240192..b18e4627d 100644 --- a/qla_isp/linux/scsi_target_ctl.c +++ b/qla_isp/linux/scsi_target_ctl.c @@ -1,6 +1,6 @@ -/* $Id: scsi_target_ctl.c,v 1.21 2007/12/11 22:16:55 mjacob Exp $ */ +/* $Id: scsi_target_ctl.c,v 1.22 2008/02/11 23:59:06 mjacob Exp $ */ /* - * Copyright (c) 1997-2007 by Matthew Jacob + * Copyright (c) 1997-2008 by Matthew Jacob * All rights reserved. * * Redistribution and use in source and binary forms, with or without