From owner-freebsd-scsi Thu Jan 20 18:45:54 2000 Delivered-To: freebsd-scsi@freebsd.org Received: from sasami.jurai.net (sasami.jurai.net [63.67.141.99]) by hub.freebsd.org (Postfix) with ESMTP id 677D61537B for ; Thu, 20 Jan 2000 18:45:52 -0800 (PST) (envelope-from winter@jurai.net) Received: from localhost (winter@localhost) by sasami.jurai.net (8.9.3/8.8.7) with ESMTP id VAA07501; Thu, 20 Jan 2000 21:45:43 -0500 (EST) Date: Thu, 20 Jan 2000 21:45:43 -0500 (EST) From: "Matthew N. Dodd" To: Warner Losh Cc: freebsd-scsi@FreeBSD.ORG Subject: Re: aha question In-Reply-To: <200001210222.TAA07743@harmony.village.org> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-scsi@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org On Thu, 20 Jan 2000, Warner Losh wrote: > How important is hard wiring a aha device? I'm reworking the aha > driver to support probing for the self identification and to better > support plug and play. In order to do this, I have created an > identify routine which scans all the devices in the traditional self > probing order and adds device children as needed. The only problem > with this that I can see is that it destroys the ability to hardwire > aha instances to unit numbers in the config file. While no pci > drivers support this, and the isa ep driver provide strong evidence > that I don't need to support this, I thought I'd ask here. Well, I'd argue that you don't need to support hardwired devices but thats only because I was too lazy to properly solve the possible contentions b/t devices found in the IDENTIFY and devices hardcoded and provided by the ISA hint mechanism. Basically, inside the loop of your IDENTIFY method you'll need something like this: while (find_cards) { found = look_for_card(address); if (found) { err = devclass_get_devices(devclass, &listp, &count); if (!err & count) for (i = 0; i < count; i++) { bus_get_resource(listp[i], SYS_RES_IOPORT, 0, &io_start, &io_count); if (io_start == address) { /* cleanup listp etc */ /* "He says they've already got one! */ continue; } } } } > Also, if I need to support this, how would I go about doing that? Like above. :) Good luck; if you implement this we should probably think about generalizing it so everyone can use it. -- | Matthew N. Dodd | '78 Datsun 280Z | '75 Volvo 164E | FreeBSD/NetBSD | | winter@jurai.net | 2 x '84 Volvo 245DL | ix86,sparc,pmax | | http://www.jurai.net/~winter | This Space For Rent | ISO8802.5 4ever | To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-scsi" in the body of the message