From owner-cvs-all Sat Jun 17 21:56:21 2000 Delivered-To: cvs-all@freebsd.org Received: from freefall.freebsd.org (freefall.FreeBSD.ORG [204.216.27.21]) by hub.freebsd.org (Postfix) with ESMTP id 7003237B530; Sat, 17 Jun 2000 21:56:18 -0700 (PDT) (envelope-from mjacob@FreeBSD.org) Received: (from mjacob@localhost) by freefall.freebsd.org (8.9.3/8.9.2) id VAA37520; Sat, 17 Jun 2000 21:56:18 -0700 (PDT) (envelope-from mjacob@FreeBSD.org) Message-Id: <200006180456.VAA37520@freefall.freebsd.org> From: Matt Jacob Date: Sat, 17 Jun 2000 21:56:18 -0700 (PDT) To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/dev/isp isp.c X-FreeBSD-CVS-Branch: HEAD Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG mjacob 2000/06/17 21:56:18 PDT Modified files: sys/dev/isp isp.c Log: Once we have firmware running (if isp_reset) and this is the first time through, establish what our LUN width is. Unfortunately, we can't ask the f/w. If we loaded the f/w, we'll now assume we have expanded LUNs (SCCLUN for fibre channel, just plain 32 LUN for SCSI). If we didn't load firmware, assume 8 LUNs for SCSI and 1 LUN for Fibre Channel. We have to assume only one LUN for Fibre Channel because the LUN setting in Request Queue entries is in different places whether we have SCCLUN firmware or not, so the only LUN guaranteed to work for both is LUN 0. Clean up the rest of isp.c so that ISP2100_SCCLUN defines aren't used- instead use run time determinants based upon isp->isp_maxluns. After starting firmware, delay 500us to give it a chance to get rolling. Fix the interrupt service routine to check for both isr && sema being zero before thinking this was a spurious interrupt. Following the manuals, allow for both Mailbox as well as Queue Reponse type interrupts for regular SCSI. Revision Changes Path 1.44 +75 -35 src/sys/dev/isp/isp.c To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message