Received: by 2002:a05:6a10:17d3:0:0:0:0 with SMTP id hz19csp739019pxb; Thu, 15 Apr 2021 05:34:22 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxq1/D083SwlAqQO5tlgjT0Xunl9gEGNstaH6DsJs/pMv8wC+UYIv8xRX11c/b+RqA20cNJ X-Received: by 2002:a17:90a:a395:: with SMTP id x21mr3608622pjp.95.1618490062392; Thu, 15 Apr 2021 05:34:22 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1618490062; cv=none; d=google.com; s=arc-20160816; b=dKwz0bi/IdYkGCV0CIC8iX93uNP5GVsmNEjhN4TkP5IoeYLGJwNDjAeg8+pAFkBcJ5 vdaxbb3BlTRJvzmQgDT13GbG3/+S+xyHLqDIuhak5RlnnKW0/B4FAcugiV5aB9m3v+f2 NiT9lblrxaAXpnU4b4SO0JfSBQ4WPyGShGEuv5F6MBXXVqHYbFLvkc+KPzqZ/ytQzu2I 1OBOfxvZhB2Z5lN1zCyi4kWnTlMMTZ9iNOkBb07wOCwwsYafTMCbxwdE02ZbLMGI12VT dPVHtsArnPvFrYOU9nLofSvlX4ZmuiwxDYyLYt3dGe6AI9HXIRfWTvKhHeGhoKhe5HvH +TMw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:dkim-signature; bh=/hAldO+LJNwSaguNLcPomxn4t0yXXXFVjwIO/9ZYi58=; b=WhWQubr7Mrgyw2KfR6n3NlpNQe/pl0KsD5L8K7t0984ywDOvyZ816CHbwq9r629IdW z/JuvA0ZwVp6sGtJvYHHA6Nj/GFuSiYGVTtBISpgdVmIVJYJnTTAwTL/eOd9y19KCvW2 fovC66aMSQm0UKYvZlLAArtstGGXOejWZSmtcohF6lzBhSMJzsjFTaLqeeuyW/KQIOwe YbcLHhiH8+9sjJAKa94u/s3A1r6C3Iz/KG8t3EV3MRHwFZlb5UYEDAn183cuYVlu3J9w 9JGwSIZtyEdp8TqlIwZ36KYMBRNHUEe2S7wwHnNclGrYbn08bjpabwl43J0wqZmENaD2 W7nw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=DALDjikH; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id j9si3295034pga.323.2021.04.15.05.34.08; Thu, 15 Apr 2021 05:34:22 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=DALDjikH; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232901AbhDOMcZ (ORCPT + 99 others); Thu, 15 Apr 2021 08:32:25 -0400 Received: from mail.kernel.org ([198.145.29.99]:48070 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230056AbhDOMcY (ORCPT ); Thu, 15 Apr 2021 08:32:24 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 6EE156044F; Thu, 15 Apr 2021 12:32:01 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1618489921; bh=RNLyWYivf1iCOu+XiSao9whpVt5jOI9e5kwCwe8J3pE=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=DALDjikH1xYjbgAE5ZFULhAmlzFpYm8GTppSG2ZGuDBqASeVmY7hS3mli9ZAIWm8m KTQfZwqZMT6wy5u+5KTdnLbYoa9sjYrHsbyr0WZRtdR3DrYdAWaZh44IM0+Pk/lTrs 1Xgv6BAacZV5RpwD07Y4gE0xta0IKFoqx2ZJjFFA= Date: Thu, 15 Apr 2021 14:31:59 +0200 From: Greg KH To: chris.chiu@canonical.com Cc: stern@rowland.harvard.edu, m.v.b@runbox.com, hadess@hadess.net, linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v3] USB: Don't set USB_PORT_FEAT_SUSPEND on WD19's Realtek Hub Message-ID: References: <20210415114856.4555-1-chris.chiu@canonical.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20210415114856.4555-1-chris.chiu@canonical.com> Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, Apr 15, 2021 at 07:48:56PM +0800, chris.chiu@canonical.com wrote: > From: Chris Chiu > > Realtek Hub (0bda:5487) in Dell Dock WD19 sometimes fails to work > after the system resumes from suspend with remote wakeup enabled > device connected: > [ 1947.640907] hub 5-2.3:1.0: hub_ext_port_status failed (err = -71) > [ 1947.641208] usb 5-2.3-port5: cannot disable (err = -71) > [ 1947.641401] hub 5-2.3:1.0: hub_ext_port_status failed (err = -71) > [ 1947.641450] usb 5-2.3-port4: cannot reset (err = -71) How does other operating systems handle this? The hardware seems like it does not follow the USB spec, how did it get "certified"? > Information of this hub: > T: Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 10 Spd=480 MxCh= 5 > D: Ver= 2.10 Cls=09(hub ) Sub=00 Prot=02 MxPS=64 #Cfgs= 1 > P: Vendor=0bda ProdID=5487 Rev= 1.47 > S: Manufacturer=Dell Inc. > S: Product=Dell dock > C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA > I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=01 Driver=hub > E: Ad=81(I) Atr=03(Int.) MxPS= 1 Ivl=256ms > I:* If#= 0 Alt= 1 #EPs= 1 Cls=09(hub ) Sub=00 Prot=02 Driver=hub > E: Ad=81(I) Atr=03(Int.) MxPS= 1 Ivl=256ms > > The failure results from the ETIMEDOUT by chance when turning on > the suspend feature for the target port of the hub. The port > will be unresponsive and placed in unknown state. The hub_activate > invoked during resume will fail to get the port stautus with -EPROTO. > Then all devices connected to the hub will never be found and probed. > > The USB_PORT_FEAT_SUSPEND is not really necessary due to the > "global suspend" in USB 2.0 spec. It's only for many hub devices > which don't relay wakeup requests from the devices connected to > downstream ports. For this realtek hub, there's no problem waking > up the system from connected keyboard. > > This commit bypasses the USB_PORT_FEAT_SUSPEND for the quirky hub. Can you make this only be allowed for hubs? But why doesn't the nomal "this can not suspend properly" bit work for this? We have that for other USB devices already. thanks, greg k-h