From owner-freebsd-new-bus@FreeBSD.ORG Tue May 19 19:11:05 2009 Return-Path: Delivered-To: new-bus@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7E4FF1065676; Tue, 19 May 2009 19:11:05 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from cyrus.watson.org (cyrus.watson.org [65.122.17.42]) by mx1.freebsd.org (Postfix) with ESMTP id 5448C8FC13; Tue, 19 May 2009 19:11:05 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from bigwig.baldwin.cx (66.111.2.69.static.nyinternet.net [66.111.2.69]) by cyrus.watson.org (Postfix) with ESMTPSA id 0723046B7F; Tue, 19 May 2009 15:11:05 -0400 (EDT) Received: from jhbbsd.hudson-trading.com (unknown [209.249.190.8]) by bigwig.baldwin.cx (Postfix) with ESMTPA id D32C58A025; Tue, 19 May 2009 15:11:03 -0400 (EDT) From: John Baldwin To: arch@FreeBSD.org Date: Tue, 19 May 2009 15:10:22 -0400 User-Agent: KMail/1.9.7 MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200905191510.23039.jhb@FreeBSD.org> X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.0.1 (bigwig.baldwin.cx); Tue, 19 May 2009 15:11:03 -0400 (EDT) X-Virus-Scanned: clamav-milter 0.95 at bigwig.baldwin.cx X-Virus-Status: Clean X-Spam-Status: No, score=-2.5 required=4.2 tests=AWL,BAYES_00,RDNS_NONE autolearn=no version=3.2.5 X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on bigwig.baldwin.cx Cc: new-bus@FreeBSD.org Subject: [PATCH] Adding support for multiple boot-time passes of the device tree X-BeenThere: freebsd-new-bus@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: FreeBSD's new-bus architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 19 May 2009 19:11:05 -0000 If you were at BSDCan a few weeks ago you may have seen my proposal for extending new-bus to support multiple scans of the device tree during boot-time probing. This patch is the infrastructure work to allow multiple passes. It does not move any drivers (except root0 which is already special) into an early pass, so all devices will still probe as a single pass for now. However, getting this in now before 8.0 will enable folks to start working on other problems such as resource discovery and management and will get the ABI set before the 8.0 feature freeze. The paper where I go into greater detail about the rationale and implementation is available at http://www.FreeBSD.org/~jhb/papers/bsdcan/2009/. The actual patch is available for review at http://www.FreeBSD.org/~jhb/patches/multipass.patch -- John Baldwin