From owner-freebsd-arch Mon Oct 14 13:37: 4 2002 Delivered-To: freebsd-arch@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 54C7B37B401; Mon, 14 Oct 2002 13:37:03 -0700 (PDT) Received: from cimlogic.com.au (cimlog.lnk.telstra.net [139.130.51.31]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2251043EAA; Mon, 14 Oct 2002 13:37:01 -0700 (PDT) (envelope-from jb@cimlogic.com.au) Received: from freebsd1.cimlogic.com.au (localhost.cimlogic.com.au [127.0.0.1]) by cimlogic.com.au (8.12.6/8.12.6) with ESMTP id g9EKarVe042150; Tue, 15 Oct 2002 06:36:53 +1000 (EST) (envelope-from jb@cimlogic.com.au) Received: (from jb@localhost) by freebsd1.cimlogic.com.au (8.12.6/8.12.6/Submit) id g9EKaqR8042149; Tue, 15 Oct 2002 06:36:52 +1000 (EST) Date: Tue, 15 Oct 2002 06:36:52 +1000 From: John Birrell To: Josef Karthauser Cc: John Birrell , arch@FreeBSD.org Subject: Re: USB driver design issues Message-ID: <20021015063651.I261@freebsd1.cimlogic.com.au> References: <20021014083622.G261@freebsd1.cimlogic.com.au> <20021014170949.GB25180@genius.tao.org.uk> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5.1i In-Reply-To: <20021014170949.GB25180@genius.tao.org.uk>; from joe@FreeBSD.org on Mon, Oct 14, 2002 at 06:09:49PM +0100 Sender: owner-freebsd-arch@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG On Mon, Oct 14, 2002 at 06:09:49PM +0100, Josef Karthauser wrote: > There are known bugs in -stable that I imagine won't ever get fixed. > The stack has been reengineered in NetBSD though and ported to > -current, but it remains to be seen whether anyone's got the time > to port it to -stable. I might try that. A potential problem is that I only have a few USB devices. > I don't know about the issue that you mention particularly, but it does > appear that device disconnection is now very stable in -current. It may > be worth trying to put a current box together to try it, or finding > someone who can test your driver on a -current box. No it doesn't (on inspection). The uhub driver is missing DEVMETHOD(bus_child_detached, uhub_child_detached) in the uhubroot so that device isn't cleared when a driver is kldunloaded. The -current version has DEVMETHOD(bus_driver_added, uhub_driver_added), but the method is empty. This is required in -stable to stop the bus_generic_driver_added from being called and probing the devices without setting up the attach_arg structure. And empty uhub_driver_added method means that a USB device has to be disconnected and re-connected before the device is probed as ugen after a driver is kldunloaded. -- John Birrell To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-arch" in the body of the message