From patchwork Wed Mar 26 09:28:06 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Roger Quadros X-Patchwork-Id: 27095 Return-Path: X-Original-To: linaro@patches.linaro.org Delivered-To: linaro@patches.linaro.org Received: from mail-oa0-f72.google.com (mail-oa0-f72.google.com [209.85.219.72]) by ip-10-151-82-157.ec2.internal (Postfix) with ESMTPS id 70EB020062 for ; Wed, 26 Mar 2014 09:28:43 +0000 (UTC) Received: by mail-oa0-f72.google.com with SMTP id eb12sf6540647oac.3 for ; Wed, 26 Mar 2014 02:28:42 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:delivered-to:from:to:cc:subject:date:message-id :mime-version:sender:precedence:list-id:x-original-sender :x-original-authentication-results:mailing-list:list-post:list-help :list-archive:list-unsubscribe:content-type; bh=kW9lMvSm1G9+yWrqGvfkdrLswNUtZQ/KuB2ddR4cJrA=; b=Yfgodc9e3I3jx51jqUmZ+FmdRviQM8X1aYKVfdz3wLHyRa5ijUFk9bYr9CoTHUGPN+ agiCMnufroAMbOOrgl1KNB8FQTDj+gB/Zbrf0naTN1DFgpaNR8AZ1aoTz0YI5Utbuye5 1Mv2PWBLrpv6O3X7vJ+fBaq6w/UFsUKmJSoWPHztoSDRmmqS0HsQr2YRsed+FA/4mDmm WKO3YlvlAh+9/h2ZaVsyGggmG1YoVQ7FZWuq35YUBSaGUH35djW3yR02iP2ps4VWuggx wKGrjV6tzj0Xh0e5seT39Cu2LC90sFdyqcTCjQqGeBExeVMOlOu6eDqeZvh+kFhGDQmv V9Mw== X-Gm-Message-State: ALoCoQnlPCKt7PC3KCpLZYX9188Xjo0tXtc+CbeauPzTHzhR2sxDt7OyXxcZXNXX+JSpjmh1QCU0 X-Received: by 10.182.70.106 with SMTP id l10mr7053404obu.7.1395826122845; Wed, 26 Mar 2014 02:28:42 -0700 (PDT) X-BeenThere: patchwork-forward@linaro.org Received: by 10.140.23.234 with SMTP id 97ls594565qgp.68.gmail; Wed, 26 Mar 2014 02:28:42 -0700 (PDT) X-Received: by 10.58.229.167 with SMTP id sr7mr57691096vec.7.1395826122651; Wed, 26 Mar 2014 02:28:42 -0700 (PDT) Received: from mail-vc0-f182.google.com (mail-vc0-f182.google.com [209.85.220.182]) by mx.google.com with ESMTPS id i7si4380574vei.193.2014.03.26.02.28.42 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Wed, 26 Mar 2014 02:28:42 -0700 (PDT) Received-SPF: neutral (google.com: 209.85.220.182 is neither permitted nor denied by best guess record for domain of patch+caf_=patchwork-forward=linaro.org@linaro.org) client-ip=209.85.220.182; Received: by mail-vc0-f182.google.com with SMTP id ks9so2081180vcb.27 for ; Wed, 26 Mar 2014 02:28:42 -0700 (PDT) X-Received: by 10.52.51.197 with SMTP id m5mr19786426vdo.9.1395826122574; Wed, 26 Mar 2014 02:28:42 -0700 (PDT) X-Forwarded-To: patchwork-forward@linaro.org X-Forwarded-For: patch@linaro.org patchwork-forward@linaro.org Delivered-To: patch@linaro.org Received: by 10.220.78.9 with SMTP id i9csp31457vck; Wed, 26 Mar 2014 02:28:42 -0700 (PDT) X-Received: by 10.67.3.97 with SMTP id bv1mr3331652pad.54.1395826121662; Wed, 26 Mar 2014 02:28:41 -0700 (PDT) Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id xj10si13414719pab.122.2014.03.26.02.28.41; Wed, 26 Mar 2014 02:28:41 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-usb-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751213AbaCZJ2j (ORCPT + 3 others); Wed, 26 Mar 2014 05:28:39 -0400 Received: from bear.ext.ti.com ([192.94.94.41]:36177 "EHLO bear.ext.ti.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751045AbaCZJ2Z (ORCPT ); Wed, 26 Mar 2014 05:28:25 -0400 Received: from dlelxv90.itg.ti.com ([172.17.2.17]) by bear.ext.ti.com (8.13.7/8.13.7) with ESMTP id s2Q9SDoI015136; Wed, 26 Mar 2014 04:28:13 -0500 Received: from DFLE73.ent.ti.com (dfle73.ent.ti.com [128.247.5.110]) by dlelxv90.itg.ti.com (8.14.3/8.13.8) with ESMTP id s2Q9SDsl016365; Wed, 26 Mar 2014 04:28:13 -0500 Received: from dlep33.itg.ti.com (157.170.170.75) by DFLE73.ent.ti.com (128.247.5.110) with Microsoft SMTP Server id 14.3.174.1; Wed, 26 Mar 2014 04:28:12 -0500 Received: from localhost.localdomain (ileax41-snat.itg.ti.com [10.172.224.153]) by dlep33.itg.ti.com (8.14.3/8.13.8) with ESMTP id s2Q9SAlc030752; Wed, 26 Mar 2014 04:28:11 -0500 From: Roger Quadros To: CC: , , Roger Quadros , "3.9+" , Sebastian Andrzej Siewior Subject: [PATCH] usb: gadget: zero: Fix SuperSpeed enumeration for alternate setting 1 Date: Wed, 26 Mar 2014 11:28:06 +0200 Message-ID: <1395826086-5097-1-git-send-email-rogerq@ti.com> X-Mailer: git-send-email 1.8.3.2 MIME-Version: 1.0 Sender: linux-usb-owner@vger.kernel.org Precedence: list List-ID: X-Mailing-List: linux-usb@vger.kernel.org X-Removed-Original-Auth: Dkim didn't pass. X-Original-Sender: rogerq@ti.com X-Original-Authentication-Results: mx.google.com; spf=neutral (google.com: 209.85.220.182 is neither permitted nor denied by best guess record for domain of patch+caf_=patchwork-forward=linaro.org@linaro.org) smtp.mail=patch+caf_=patchwork-forward=linaro.org@linaro.org Mailing-list: list patchwork-forward@linaro.org; contact patchwork-forward+owners@linaro.org X-Google-Group-Id: 836684582541 List-Post: , List-Help: , List-Archive: List-Unsubscribe: , It was impossible to enumerate on a SuperSpeed (XHCI) host with alternate setting = 1 due to the wrongly set 'bMaxBurst' field in the SuperSpeed Endpoint Companion descriptor. Testcase: modprobe -r usbtest; modprobe usbtest alt=1 modprobe g_zero plug device to SuperSpeed port on the host. Without this patch the host always complains like so "usb 12-2: Not enough bandwidth for new device state. usb 12-2: Not enough bandwidth for altsetting 1" Bug was introduced by commit cf9a08ae in v3.9 Cc: 3.9+ # 3.9+ Cc: Sebastian Andrzej Siewior Reviewed-by: Felipe Balbi Signed-off-by: Roger Quadros Acked-by: Sebastian Andrzej Siewior --- drivers/usb/gadget/zero.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/usb/gadget/zero.c b/drivers/usb/gadget/zero.c index 9f170c5..134f354 100644 --- a/drivers/usb/gadget/zero.c +++ b/drivers/usb/gadget/zero.c @@ -300,7 +300,7 @@ static int __init zero_bind(struct usb_composite_dev *cdev) ss_opts->isoc_interval = gzero_options.isoc_interval; ss_opts->isoc_maxpacket = gzero_options.isoc_maxpacket; ss_opts->isoc_mult = gzero_options.isoc_mult; - ss_opts->isoc_maxburst = gzero_options.isoc_maxpacket; + ss_opts->isoc_maxburst = gzero_options.isoc_maxburst; ss_opts->bulk_buflen = gzero_options.bulk_buflen; func_ss = usb_get_function(func_inst_ss);