From owner-cvs-src-old@FreeBSD.ORG Wed May 18 07:40:34 2011 Return-Path: Delivered-To: cvs-src-old@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C0B101065672 for ; Wed, 18 May 2011 07:40:34 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id ADF798FC13 for ; Wed, 18 May 2011 07:40:34 +0000 (UTC) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.4/8.14.4) with ESMTP id p4I7eY0b027351 for ; Wed, 18 May 2011 07:40:34 GMT (envelope-from avg@repoman.freebsd.org) Received: (from svn2cvs@localhost) by repoman.freebsd.org (8.14.4/8.14.4/Submit) id p4I7eYVK027350 for cvs-src-old@freebsd.org; Wed, 18 May 2011 07:40:34 GMT (envelope-from avg@repoman.freebsd.org) Message-Id: <201105180740.p4I7eYVK027350@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: svn2cvs set sender to avg@repoman.freebsd.org using -f From: Andriy Gapon Date: Wed, 18 May 2011 07:40:12 +0000 (UTC) To: cvs-src-old@freebsd.org X-FreeBSD-CVS-Branch: HEAD Subject: cvs commit: src/sys/dev/sound/usb uaudio.c src/sys/dev/usb usb_device.c usbdi.h src/sys/dev/usb/input uhid.c ukbd.c ums.c src/sys/dev/usb/storage umass.c ustorage_fs.c X-BeenThere: cvs-src-old@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: **OBSOLETE** CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 May 2011 07:40:34 -0000 avg 2011-05-18 07:40:12 UTC FreeBSD src repository Modified files: sys/dev/sound/usb uaudio.c sys/dev/usb usb_device.c usbdi.h sys/dev/usb/input uhid.c ukbd.c ums.c sys/dev/usb/storage umass.c ustorage_fs.c Log: SVN rev 222051 on 2011-05-18 07:40:12Z by avg usb: change to one-pass probing of device drivers This brings USB bus more in line with how newbus is supposed to be used. Also, because of the two-pass probing the following message was produced by devd in default configuration when almost any USB device was connected: Unknown USB device: vendor <> product <> bus <> This should be fixed now. Note that many USB device drivers pass some information from probe method to attach method via ivars. For this to continue working we rely on the fact that the subr_bus code calls probe method of a winning driver again before calling its attach method in the case where multiple drivers claim to support a device. This is done because device description is set in successful probe methods and we want to get a correct device description from a winning driver. So now this logic is re-used for setting ivars too. Reviewed by: hselasky MFC after: 1 month Revision Changes Path 1.70 +2 -5 src/sys/dev/sound/usb/uaudio.c 1.19 +0 -4 src/sys/dev/usb/input/uhid.c 1.33 +2 -2 src/sys/dev/usb/input/ukbd.c 1.27 +2 -2 src/sys/dev/usb/input/ums.c 1.42 +1 -4 src/sys/dev/usb/storage/umass.c 1.22 +1 -5 src/sys/dev/usb/storage/ustorage_fs.c 1.73 +0 -11 src/sys/dev/usb/usb_device.c 1.80 +0 -1 src/sys/dev/usb/usbdi.h