From owner-cvs-all Fri Mar 31 16:35:27 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 DFB2F37B62D; Fri, 31 Mar 2000 16:35:21 -0800 (PST) (envelope-from msmith@FreeBSD.org) Received: (from msmith@localhost) by freefall.freebsd.org (8.9.3/8.9.2) id QAA60646; Fri, 31 Mar 2000 16:35:20 -0800 (PST) (envelope-from msmith@FreeBSD.org) Message-Id: <200004010035.QAA60646@freefall.freebsd.org> From: Mike Smith Date: Fri, 31 Mar 2000 16:35:20 -0800 (PST) To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/dev/amr amr.c amr_disk.c amr_pci.c amrvar.h Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG msmith 2000/03/31 16:35:18 PST Modified files: sys/dev/amr amr.c amr_disk.c amr_pci.c amrvar.h Log: Update to latest working version. - Add periodic status monitoring routine. Currently just detects lost commands, further functionality pending data from AMI. Add some new commands states; WEDGED (never coming back) and LATE (for when a command that wasmarked as WEDGED comes bacj, - Remove a number of redundant efforts to poll the card for completed commands. This is what interrupt handlers are for. - Limit the maximum number of outstanding I/O transactions. It seems that some controllers report more than they can really handle, and exceding this limit can cause the controller to lock up. - Don't use 'wait' mode for anything where the controller might not be able to generate interrupts. (Keep the 'wait' mode though sa it will become useful when we start taking userspace commands. - Use a similar atomic locking trategy to the Mylex driver to prevent some reentrancy problems. - Correctly calculate the block count for non-whoile-bloch transfers (actually illegal). - Use the dsik device's si_drv1 field instead of b_driver1 in the buf struct to pass the driver identifier arond. - Rewrite amr_start and amr_done() along the lines of the Mylex driver in order to improve robustnes. - Always force the PCI busmaster bit on. Revision Changes Path 1.10 +188 -71 src/sys/dev/amr/amr.c 1.6 +24 -27 src/sys/dev/amr/amr_disk.c 1.2 +8 -1 src/sys/dev/amr/amr_pci.c 1.4 +32 -1 src/sys/dev/amr/amrvar.h To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message