isp Tape Drive no longer detected

Matthew Jacob mj at feral.com
Mon Jun 25 02:39:39 UTC 2012


Actually, can you try this patch please? I won't be able to get to my 
lab and get a working 1040 card into a system until tomorrow.



-------------- next part --------------
diff -r 5aba1b04ddd5 isp.c
--- a/isp.c	Sun Jun 24 10:22:10 2012 -0700
+++ b/isp.c	Sun Jun 24 19:36:06 2012 -0700
@@ -710,8 +710,11 @@
 			0x6666, 0x6677, 0x1122, 0x33ff,
 			0x0000, 0x0001, 0x1000, 0x1010,
 		};
+		int nmbox = ISP_NMBOX(isp);
+		if (IS_SCSI(isp))
+			nmbox = 6;
 		MBSINIT(&mbs, MBOX_MAILBOX_REG_TEST, MBLOGALL, 0);
-		for (i = 1; i < ISP_NMBOX(isp); i++) {
+		for (i = 1; i < nmbox; i++) {
 			mbs.param[i] = patterns[i];
 		}
 		isp_mboxcmd(isp, &mbs);
@@ -719,7 +722,7 @@
 			ISP_RESET0(isp);
 			return;
 		}
-		for (i = 1; i < ISP_NMBOX(isp); i++) {
+		for (i = 1; i < nmbox; i++) {
 			if (mbs.param[i] != patterns[i]) {
 				ISP_RESET0(isp);
 				isp_prt(isp, ISP_LOGERR, "Register Test Failed at Register %d: should have 0x%04x but got 0x%04x", i, patterns[i], mbs.param[i]);


More information about the freebsd-current mailing list