From patchwork Mon Sep 25 08:01:25 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yoshihiro Shimoda X-Patchwork-Id: 9969393 X-Patchwork-Delegate: geert@linux-m68k.org Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 30F6A602CB for ; Mon, 25 Sep 2017 08:05:38 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 291CA289D3 for ; Mon, 25 Sep 2017 08:05:38 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 1D87128C01; Mon, 25 Sep 2017 08:05:38 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.9 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id A7597289D3 for ; Mon, 25 Sep 2017 08:05:37 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933836AbdIYIFg (ORCPT ); Mon, 25 Sep 2017 04:05:36 -0400 Received: from relmlor3.renesas.com ([210.160.252.173]:15523 "EHLO relmlie2.idc.renesas.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S933619AbdIYIFK (ORCPT ); Mon, 25 Sep 2017 04:05:10 -0400 Received: from unknown (HELO relmlir4.idc.renesas.com) ([10.200.68.154]) by relmlie2.idc.renesas.com with ESMTP; 25 Sep 2017 17:05:08 +0900 Received: from relmlii1.idc.renesas.com (relmlii1.idc.renesas.com [10.200.68.65]) by relmlir4.idc.renesas.com (Postfix) with ESMTP id 6222165701; Mon, 25 Sep 2017 17:05:08 +0900 (JST) X-IronPort-AV: E=Sophos;i="5.42,435,1500908400"; d="scan'208";a="257647962" Received: from mail-hk2apc01lp0211.outbound.protection.outlook.com (HELO APC01-HK2-obe.outbound.protection.outlook.com) ([65.55.88.211]) by relmlii1.idc.renesas.com with ESMTP/TLS/AES256-SHA256; 25 Sep 2017 17:05:07 +0900 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=renesasgroup.onmicrosoft.com; s=selector1-renesas-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=Vcr/yz0rLwgEokLNbwffNm1V7OjK1WWlcS0PnLnWpb0=; b=kE5/3EpbnheypumhiG2C9BWceuv14dOq1EwZbxvnptxol3l4au6EDcia1IAcePlihlebUxTr4BeFNRKaSR0AOyH4CWl7twVajq6czJBgM49JF+8bU1AQceMzxc7Eme9WydxOVhYxuivH+l/69c31n2B6A7Mz8Dd+Bl8zthE5jBc= Received: from localhost.localdomain (211.11.155.138) by HK2PR06MB0979.apcprd06.prod.outlook.com (2a01:111:e400:589d::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.77.7; Mon, 25 Sep 2017 08:05:06 +0000 From: Yoshihiro Shimoda To: balbi@kernel.org Cc: gregkh@linuxfoundation.org, linux-usb@vger.kernel.org, linux-renesas-soc@vger.kernel.org, stable@vger.kernel.org, Yoshihiro Shimoda Subject: [PATCH 3/3] usb: gadget: udc: renesas_usb3: Fix return value of usb3_write_pipe() Date: Mon, 25 Sep 2017 17:01:25 +0900 Message-Id: <1506326485-26254-4-git-send-email-yoshihiro.shimoda.uh@renesas.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1506326485-26254-1-git-send-email-yoshihiro.shimoda.uh@renesas.com> References: <1506326485-26254-1-git-send-email-yoshihiro.shimoda.uh@renesas.com> MIME-Version: 1.0 X-Originating-IP: [211.11.155.138] X-ClientProxiedBy: KAXPR01CA0036.jpnprd01.prod.outlook.com (2603:1096:402:1a::22) To HK2PR06MB0979.apcprd06.prod.outlook.com (2a01:111:e400:589d::25) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 1e1ad477-144f-48e1-e413-08d503ec2298 X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(2017030254152)(48565401081)(2017052603199)(201703131423075)(201703031133081); SRVR:HK2PR06MB0979; X-Microsoft-Exchange-Diagnostics: 1; HK2PR06MB0979; 3:2iG2ZcmS7BcscrR0cc+y3QbuJRU1GJsYLiwsCpmr6qlJWcvxwZex46DxEzl4RQv2tm/9DDZ27m5zWXN8TUkkmEcBsiRWBBWossr9RUm2k/FTm9xaRKV6x+7kKzyqFxgkda3tycyrm63Yagm2y8xuyEUsCP5mLOeurajsWivn0lM5Inrnqm7SpPHO5LNmGFloBoXIUWruOkEj7Rc7KYhZ8wBL94IsRLBj6bal4hD0WXV13DqTVCbHFtoDkeoFU4SZ; 25:lndbXo4UdyWQ/yWupydKlkaR6qt94CdFUYlhv+6Dp/9QcCZ6UkWPMACWrJoKDpBhdr2b2pc0ZkEp09l6njNt8XjV7tGGnnrwi7IlMjBbpk2VM/jrRHmF8YEc96AKxXKjIBAKQqy91jkuQZEY9sknRumpUjujhxGnDcNDLFe5z0bXHauLAPK2Q0l4R5eZev8lWTUlsM66ZdLn04PACmLF628ZbIrrzD074KFdA3zjASCnaVww6c8o/zEtIaWKuri7j0nCqnK2TRBeA3cTpwiNCk6diQBPt9r88Kub5VC6dGWPcPmPtbG1f2WLocHBoWYFkenxkZAypF8MP0sqXPY45A==; 31:6hHfyF/9tTIykgPr/Kl5YyEw7uFTBdFr+g1B7TM89yZPfZDsTOj4KhjFFNuoOy5U0E3xJ4pGVfKsjevNQU5Y+TnTQkFbgvohKvj0h5M6zNnVWuNSLF4mWg8qEkO9H3N7qYRoW9aI5A1NBET+VEM1lFnsjDECKhKB0cedo4e0z7XRca1GpKGg4wT8dUIrWhvcQkjxYkwFDxCdolQ7Bt8r4ESXqHUyONVyFi3Z47lHcLI= X-MS-TrafficTypeDiagnostic: HK2PR06MB0979: X-Microsoft-Exchange-Diagnostics: 1; HK2PR06MB0979; 20:axrw0KT2+h6xT1IspyAbtkbSuNB+at7i5JnuzPeUUmZ/1YqkzHji+K/u9ThiaPahes1lmbH1chSM3DGWM/xc0hVi4iGlePDZg3O/RGRtBay+z3V2GdKWmZ9iMKRwJDU/FH2WT2FWttiHxOHWGzVcb7Y4uqpCgUkF6frVO7B5I5c1FLkyV9vMhwzSsLrQonAVkl+mk5huJiBBvKZ2HxO7JFZHFoIl/duOH+q4wmMdVy3O9X6Nh4zD1VVMBGfed72dxJ7GVedyLOXqudyGvN+tYVgcYxwTQTDnIsXXWSrSgnVyWJpegHS024NkoDiBUkynCphdf78+I6xCslX+ugS5XMzBn406u2MfhKkNmbNCqHWVSTREfoz3nAek4umvhH6FQRqGRgyklmwYTBHMKtDxUjpYNpNGgJ+Omb2Qv0hvJy6Z3h82fx3LAy6D5T8CibEg00JxfXB3tj1zINbrCubATIGWivjWQG+j+PkNkwNpxokdZN9oi36jtQ8ktlkrZHxN; 4:hOG6pXIi8sofoFNTiMeGG07JthkNXMdHLyluwSwGXetF5CiwXrvNLqOevG3LEEUZFzsUDHiFi0MsngyrPIajIvtqdA4byZbiknM9C24d0j4vcLudBCixSRD+pKw5vB+ifKmFb5MFW6rgjoO4CTzodTaJKIl85CrYvWkvsjEa1wIPzG+G+LPVa0L4UZq/pmVk79OneCjhCvq8mnvQh+7GBvvQqZsL89vRRLZK/Bu9Rx/H+Wn6oLOf4OGmhHUiELPeBVDTvHgi1X/FnGuNLNjgW6t4+wCGXiVjYxR8cFjwy2U= X-Exchange-Antispam-Report-Test: UriScan:(9452136761055); X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(2401047)(5005006)(8121501046)(10201501046)(3002001)(100000703101)(100105400095)(93006095)(6055026)(6041248)(20161123564025)(20161123560025)(20161123562025)(201703131423075)(201702281528075)(201703061421075)(201703061750153)(20161123555025)(20161123558100)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:HK2PR06MB0979; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:HK2PR06MB0979; X-Forefront-PRVS: 04410E544A X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(6069001)(6009001)(39860400002)(346002)(376002)(189002)(199003)(76176999)(106356001)(50226002)(6666003)(50466002)(50986999)(48376002)(5660300001)(305945005)(2950100002)(33646002)(6116002)(7736002)(42882006)(101416001)(105586002)(575784001)(5003940100001)(6506006)(6916009)(6486002)(498600001)(3846002)(8936002)(68736007)(8676002)(81156014)(47776003)(2351001)(53936002)(2906002)(36756003)(316002)(107886003)(2361001)(97736004)(16526017)(16586007)(6512007)(66066001)(78352004)(81166006)(4326008)(189998001)(25786009)(3720700003); DIR:OUT; SFP:1102; SCL:1; SRVR:HK2PR06MB0979; H:localhost.localdomain; FPR:; SPF:None; PTR:InfoNoRecords; MX:0; A:0; LANG:en; Received-SPF: None (protection.outlook.com: localhost.localdomain does not designate permitted sender hosts) Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=<>; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HK2PR06MB0979; 23:w4sTjeKtw6JSYhXXUOpgCNlOYiRCoTvycrzFJGtBE?= =?us-ascii?Q?TQo5/4DfFd4MTQG+fGX+tj9aN//8QI7keal1OGHNWTWcQpYc3wRPz/mCWisB?= =?us-ascii?Q?QlWeSkzdQpBl7m8S2yHERQWiHqceT74agYh1PGlN1tAdr/Y8+SBdG6YNSDDE?= =?us-ascii?Q?FTAiNMeTdkdDhiL9EoGdxGPc6RZDO/HGtiDxnUETHbhMUzqBLg1DiKeD4M22?= =?us-ascii?Q?ayv17GSWAisulUg8WsNo2qsYHJoePDIjXTFLomjTR3FuRPpXhGcsoUgN0dU9?= =?us-ascii?Q?MP05fb71nkzxQRuBYTqZepVfm3Kbu6W+P274J2lJuWrAPoK0oTBDa35X3qtf?= =?us-ascii?Q?M05nWU1cUXt/h3OP1OxYisxZ5jY+iDBdYJ/YGk7NeJrEGdhfufbkT9YZ0Uii?= =?us-ascii?Q?L16RUipWBq3dxxdK3KuIvo4It7s3b9K0Wxvi8wVj5FUpM7vnjhxjupR7Z3J9?= =?us-ascii?Q?4ovJNdgOWRad6fw7uE+y1i2TYajB2ObUzHRmMG/1UfXGoWwpfZGvQB1ekP3o?= =?us-ascii?Q?cGl7C3GoGzSBcnSgveNXsyUwc2MBbJ3y2ySxFS4PGEYSu+tMAc3LMH3rj3bd?= =?us-ascii?Q?Mqlw4M2yjfa8xzS84bwifsB1GFfav8AioUDiXpAUb7+tT/5b7znehB36jMv6?= =?us-ascii?Q?lut2cPiYTDG1MXZK6Ww1SFxnVOE7TsIP/yE85P0fQU9azc5FvyaNHo+KxKTG?= =?us-ascii?Q?FY2d3Slw3k4mzQrZ0N9cKCUA2uyXILmorwgqK12Di6nLeTOQibWw7QXXbTN7?= =?us-ascii?Q?fnfI635lYz+EOawQ/883gSaGBtTdWqF0/WrDaWSyumf0hF1obEzxk0dOecRI?= =?us-ascii?Q?66YyO8m4UJ72KUr57AWR/3iiYuOs6wEOlI/t+Can/0bPiKmvXmqnFQGrQC0h?= =?us-ascii?Q?nSO9CdwcooYPL/d5Pxs/T5gOZIkeYeccw9vxPkDerNUma4UxTwpkDH8s1Jqr?= =?us-ascii?Q?k4jgUJaqzFDtG3P1h7C0rFpGvKbdvnMyGvAF2LpDeXld7fGKslLnyRyvJwjw?= =?us-ascii?Q?ciEWYyqhzq4/zSzuCt6b6bB+wZKzeWktPggWBWTxhO7PUzM7z5WjgQ50njIj?= =?us-ascii?Q?TtpiyGiddkY3LyM8vPAsKdvH/v4u0TzBuIA4hCwxVrB2c+vFnbozDZpsPKup?= =?us-ascii?Q?9kMGdlqrt3bwg5dDzX+FELxTHFhznHHDoTyEHf37N1LERJTNYCniRBSsCUKZ?= =?us-ascii?Q?P57WUI/G8eVM8vvPGVx+FFlGEZ/BFjX2ZyBUCYLg3FVNIxCLKEMFKbRnQ=3D?= =?us-ascii?Q?=3D?= X-Microsoft-Exchange-Diagnostics: 1; HK2PR06MB0979; 6:q2Ot0ulOCMzTl6dpzpLlpJcsSmUdivAZ0nPwue+T9NIkMBgBtmMohwUeWabCggbxInEPT8/fKUkziICUbBxgYfwHNuuFtorq4ZWOg8jV/JEDFNO3x397Cle8+1PAY7ThdS0FXosShEVg/5SFe5JQ2U4ry3x3zx1RMNCirhbiyVISkI9tocbtzQ5XmeNnLk6+zCMV1VPq8bdjoqxakBXg4Jjqk9ZRMS+JWL21LcMxoGJLXYinMKha+HHHKSB0l9se4i1kEMMlO9xBpXYcygJ887zWhtwbBDlgX4wHpI6v7uY6cgPnUTilMWiJ1KNvlUH6lYXix6qfLj7zPj64UxXRWA==; 5:gDtXFRZTn+87I+vlsV6rS6a6/9NCW3ld14W0VQ0pa60dUoIh0mtJboZ6sH8HA9Cv4f8xavpwxEB70DCxIZmcZFLT0YqFsVt/jgzEYupl4SDqiX8vXDU3JZPBig+tUGpkO7L2FxpA1foO2keqn0UQKA==; 24:wX5aoGmByJD4RFdf8CBTc9AXnDfaf+pIAgKL7sRt6PqYSboEYR+xtiEajtqkropNoAmzHR8JIXErUhhHskfP1bTGHr2PQeD6i4nFM50pgG4=; 7:4oZtKS/H/7QGZaJPb2OcJSM/Meg8x7QY3oVzlaw+rvEaIOnSg2ivRiAwRYdJ8D5H6nX/ILtObUUj6ERzCnPvOscQ8b4poTLLAGRPEGBeeDexA46tQnPmXm8yTDWQUlz1fv2v9lZHbi8LqqwNO70+ytW1fkuk5IAGG+2r8fb8gdRq8Xm5PZXzjNJoZDeU3jxOsBd0M2ow/UySIajcMyD4q4wEXuZu4DhwptWDVJck5JI= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; HK2PR06MB0979; 20:2TZn4cBKVg2phvmeYODS8Zg06rdCPezRmuM++9kCTOy1/Ui+IU0lA9QhvZ/8oFnm/oMyqtCBPjBwguhdVPX/eM0quibKeOWYmcoDRY7Co0MtygG9P0pr8SsIj3zRbaRw3tdfv3DAU+5ET4eEfTrIXD+96mMlHTpjv9pGGgzTYvI= X-OriginatorOrg: renesas.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Sep 2017 08:05:06.5247 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 53d82571-da19-47e4-9cb4-625a166a4a2a X-MS-Exchange-Transport-CrossTenantHeadersStamped: HK2PR06MB0979 Sender: linux-renesas-soc-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-renesas-soc@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP This patch fixes an issue that this driver cannot go status stage in control read when the req.zero is set to 1 and the len in usb3_write_pipe() is set to 0. Otherwise, if we use g_ncm driver, usb enumeration takes long time (5 seconds or more). Fixes: 746bfe63bba3 ("usb: gadget: renesas_usb3: add support for Renesas USB3.0 peripheral controller") Cc: # v4.5+ Signed-off-by: Yoshihiro Shimoda --- drivers/usb/gadget/udc/renesas_usb3.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/usb/gadget/udc/renesas_usb3.c b/drivers/usb/gadget/udc/renesas_usb3.c index 7e0c534..63a2061 100644 --- a/drivers/usb/gadget/udc/renesas_usb3.c +++ b/drivers/usb/gadget/udc/renesas_usb3.c @@ -1038,7 +1038,7 @@ static int usb3_write_pipe(struct renesas_usb3_ep *usb3_ep, usb3_ep->ep.maxpacket); u8 *buf = usb3_req->req.buf + usb3_req->req.actual; u32 tmp = 0; - bool is_last; + bool is_last = !len ? true : false; if (usb3_wait_pipe_status(usb3_ep, PX_STA_BUFSTS) < 0) return -EBUSY; @@ -1059,7 +1059,8 @@ static int usb3_write_pipe(struct renesas_usb3_ep *usb3_ep, usb3_write(usb3, tmp, fifo_reg); } - is_last = usb3_is_transfer_complete(usb3_ep, usb3_req); + if (!is_last) + is_last = usb3_is_transfer_complete(usb3_ep, usb3_req); /* Send the data */ usb3_set_px_con_send(usb3_ep, len, is_last);