Module Name: src
Committed By: martin
Date: Wed Feb 27 09:29:21 UTC 2013
Modified Files:
src/sys/dev/ic: isp.c
Log Message:
Disable ICBOPT_FAST_POST for ISP 2100.
Fixes PR kern/47302. From Matthew Jacob.
To generate a diff of this commit:
cvs rdiff -u -r1.122 -r1.123 src/sys/dev/ic/isp.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/dev/ic/isp.c
diff -u src/sys/dev/ic/isp.c:1.122 src/sys/dev/ic/isp.c:1.123
--- src/sys/dev/ic/isp.c:1.122 Mon Feb 28 17:17:55 2011
+++ src/sys/dev/ic/isp.c Wed Feb 27 09:29:21 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: isp.c,v 1.122 2011/02/28 17:17:55 mjacob Exp $ */
+/* $NetBSD: isp.c,v 1.123 2013/02/27 09:29:21 martin Exp $ */
/*
* Machine and OS Independent (well, as best as possible)
* code for the Qlogic ISP SCSI adapters.
@@ -43,7 +43,7 @@
*/
#ifdef __NetBSD__
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: isp.c,v 1.122 2011/02/28 17:17:55 mjacob Exp $");
+__KERNEL_RCSID(0, "$NetBSD: isp.c,v 1.123 2013/02/27 09:29:21 martin Exp $");
#include <dev/ic/isp_netbsd.h>
#endif
#ifdef __FreeBSD__
@@ -1580,7 +1580,13 @@ isp_fibre_init(ispsoftc_t *isp)
*
* NB: for the 2300, ICBOPT_EXTENDED is required.
*/
- if (IS_2200(isp) || IS_23XX(isp)) {
+ if (IS_2100(isp)) {
+ /*
+ * We can't have Fast Posting any more- we now
+ * have 32 bit handles.
+ */
+ icbp->icb_fwoptions &= ~ICBOPT_FAST_POST;
+ } else if (IS_2200(isp) || IS_23XX(isp)) {
icbp->icb_fwoptions |= ICBOPT_EXTENDED;
/*
* Prefer or force Point-To-Point instead Loop?