From owner-freebsd-hackers@FreeBSD.ORG Sun May 21 08:08:03 2006 Return-Path: X-Original-To: freebsd-hackers@freebsd.org Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B11E716A470 for ; Sun, 21 May 2006 08:08:03 +0000 (UTC) (envelope-from fierykylin@gmail.com) Received: from wx-out-0102.google.com (wx-out-0102.google.com [66.249.82.201]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0F6AF43D5E for ; Sun, 21 May 2006 08:08:00 +0000 (GMT) (envelope-from fierykylin@gmail.com) Received: by wx-out-0102.google.com with SMTP id i31so742718wxd for ; Sun, 21 May 2006 01:08:00 -0700 (PDT) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:sender:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references:x-google-sender-auth; b=oF2n5XK2rd3bCcAq6sgaBj51O1XYSP+l+Wci60hGgaPkcvNoIDhZ+dBwUVV2LEaCKCXjrRgwmHjb9/QCINX5rho+SM+ygdupw/syjFjl42X6pTDAgr1AsQ8ajZFhOzwO16050r1SL0tXgig0lhNFC/EjNWYioOZnnJLe5MvLXGk= Received: by 10.70.47.11 with SMTP id u11mr3950185wxu; Sun, 21 May 2006 01:08:00 -0700 (PDT) Received: by 10.70.43.11 with HTTP; Sun, 21 May 2006 01:08:00 -0700 (PDT) Message-ID: <87ab37ab0605210108w127a235bue281428f52bbc784@mail.gmail.com> Date: Sun, 21 May 2006 16:08:00 +0800 From: "william wallace" Sender: fierykylin@gmail.com To: "Warner Losh" In-Reply-To: <20060521.000729.41671970.imp@bsdimp.com> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: quoted-printable Content-Disposition: inline References: <87ab37ab0605192239n73b7fcdbtbdd5dbd3f1099fc3@mail.gmail.com> <20060520.013546.104050983.imp@bsdimp.com> <87ab37ab0605201942o3e27c46w2ac57261e02a2890@mail.gmail.com> <20060521.000729.41671970.imp@bsdimp.com> X-Google-Sender-Auth: 782d1d438831a1ef Cc: "freebsd-hackers@freebsd.org" Subject: Re: misc questions about the device&driver arch X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 21 May 2006 08:08:03 -0000 On 5/21/06, Warner Losh wrote: > nope. It may be called once per bus instance per driver, if the bus > is not self-identifying. If the bus is self-idntiying, chances are > that it will not be called. pci never calls its children drivers' > identify routine because it already knows all the children on the bus > and doesn't need the leaf drivers to go find instances of themselves. > the isa bus driver, on the other hand, does call the identify routine > so that pre-plug and play standard device enumeration can happen. > > Warner the defination of self-enumerating 1 what does self-enumerating mean ? 2 does that mean the pci way of looping through configuration space ? 3 does that happen in start time and hotplug time ? 4 pci doesn't need the leaf drivers to go find instances of themselves. does that mean that self-enumerating device system use the top down w= ay , and the non- self-enumerating device system use the down -top way 5 i guest pci hot plug need some magic to identify or emulae(loop pci sons ) BTW There r so many hot plug specifications ,SHPC hotplug ,PCIE hotplug and compaq hotplug and so on , in linux ,they use different driver for different pci bridge so i think for us to implement in freeBSD ,just do 1 by 1:) --=20 we who r about to die,salute u!