From owner-p4-projects@FreeBSD.ORG Thu Jan 8 17:27:23 2009 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3F5EC10657E0; Thu, 8 Jan 2009 17:27:21 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5F431106586E; Thu, 8 Jan 2009 17:27:20 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from harmony.bsdimp.com (bsdimp.com [199.45.160.85]) by mx1.freebsd.org (Postfix) with ESMTP id EF0E08FC20; Thu, 8 Jan 2009 17:27:19 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from localhost (localhost [127.0.0.1]) by harmony.bsdimp.com (8.14.2/8.14.1) with ESMTP id n08HNjrW079989; Thu, 8 Jan 2009 10:23:45 -0700 (MST) (envelope-from imp@bsdimp.com) Date: Thu, 08 Jan 2009 10:24:00 -0700 (MST) Message-Id: <20090108.102400.-1877578186.imp@bsdimp.com> To: hselasky@FreeBSD.org From: "M. Warner Losh" In-Reply-To: <200901071041.n07AfHG9061148@repoman.freebsd.org> References: <200901071041.n07AfHG9061148@repoman.freebsd.org> X-Mailer: Mew version 5.2 on Emacs 21.3 / Mule 5.0 (SAKAKI) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Cc: perforce@FreeBSD.org Subject: Re: PERFORCE change 155750 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 08 Jan 2009 17:27:26 -0000 In message: <200901071041.n07AfHG9061148@repoman.freebsd.org> Hans Petter Selasky writes: : http://perforce.freebsd.org/chv.cgi?CH=155750 : : Change 155750 by hselasky@hselasky_laptop001 on 2009/01/07 10:40:28 : : : Patch to resolve problems with power mode off. Can you please use more descriptive commits? This doesn't tell us much about what the problems were, or how this fixes them. Warner : Reported by Alexander Best. : : Affected files ... : : .. //depot/projects/usb/src/sys/dev/usb2/core/usb2_generic.c#39 edit : .. //depot/projects/usb/src/sys/dev/usb2/core/usb2_hub.c#27 edit : : Differences ... : : ==== //depot/projects/usb/src/sys/dev/usb2/core/usb2_generic.c#39 (text+ko) ==== : : @@ -1699,11 +1699,12 @@ : } : switch (mode) { : case USB_POWER_MODE_OFF: : - /* clear suspend */ : - err = usb2_req_clear_port_feature(udev->parent_hub, : - NULL, udev->port_no, UHF_PORT_SUSPEND); : - if (err) : - break; : + /* get the device unconfigured */ : + err = ugen_set_config(f, USB_UNCONFIG_INDEX); : + if (err) { : + DPRINTFN(0, "Could not unconfigure " : + "device (ignored)\n"); : + } : : /* clear port enable */ : err = usb2_req_clear_port_feature(udev->parent_hub, : : ==== //depot/projects/usb/src/sys/dev/usb2/core/usb2_hub.c#27 (text+ko) ==== : : @@ -1823,7 +1823,8 @@ : usb2_set_power_mode(struct usb2_device *udev, uint8_t power_mode) : { : /* filter input argument */ : - if (power_mode != USB_POWER_MODE_ON) { : + if ((power_mode != USB_POWER_MODE_ON) && : + (power_mode != USB_POWER_MODE_OFF)) { : power_mode = USB_POWER_MODE_SAVE; : } : udev->power_mode = power_mode; /* update copy of power mode */ :