Received: by 2002:a05:6a10:8a4d:0:0:0:0 with SMTP id dn13csp872933pxb; Fri, 13 Aug 2021 08:10:40 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwMqSVmhqvdlLEH7v3gfTj+Ift9bh3Ba7LkMJXT2AdJ/wuA3nShjVpfZ7MPniLsl/4/12mS X-Received: by 2002:a05:6e02:1353:: with SMTP id k19mr2067937ilr.157.1628867440082; Fri, 13 Aug 2021 08:10:40 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1628867440; cv=none; d=google.com; s=arc-20160816; b=v0Kk3SL9a7t7OeqITcAA49dWaFVPEoE3InwG06mN9zRcBS7oZW1HJBTu+mhw3sZRBC sKoqQ1NqqJTIec2aMK10iPV8eN4V06L4+mPaI1cAx6R6Ag6BXpqc6wNhMtUkhj8dQGWP pueg4e3v29+oDoCrl+6KxpDnpcd5RGHWmPMO/KraGYJm7CTpN4AMHQmjtXQgxDQxsiNl dQMr6UEbVWyerahHbd7/kEySXP6zKG/IKPRwz+xhVgYJxkVhYUUyAJoVm9KXO47XOBw1 A4YXag3g0bMF0g26DiVOVCVSbBQUHLiLwtCuHIJdtVzw0gFK5EzCNDYLkoyCdN4ZyUHy pHQQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=XC8mdRS7AuQKPMIVNBinjaDHjB3UI7iun525Exw3r28=; b=H3Cf3d6J/03qfwohrARAtRMjVzVSuMe6cvWATkWhlWv5hdYMFgGiR9eWJXr0QS0O4x sKTSlnzPFiYmybbcspiHGfkv9b/kWcsRUMxpFM4+nUFW85BUZvEKYIYPebMOHeBWSJNI sDi0RKfaH4ApGgN4dZ9hqfR5vkUGoUd8cNaTXnCcJoqiJW4dwSM464i8pPN7zk0Ol4js xEf8ekS7prTTtFPC+92bghJEA64tgNPCZK5mlk/n7ttD2VyS/tG8FpqQPbYhTZCSKq1B TMsLiWXy31QaoogRRwoZx9vwshols+R8PZGekSPuO6BMVImg+9quO+SsQg76rSEdkJb4 GSUA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b="k/JBh0Q2"; 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 c6si1738544ioh.27.2021.08.13.08.10.28; Fri, 13 Aug 2021 08:10:40 -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="k/JBh0Q2"; 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 S241383AbhHMPJb (ORCPT + 99 others); Fri, 13 Aug 2021 11:09:31 -0400 Received: from mail.kernel.org ([198.145.29.99]:52118 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S241223AbhHMPJY (ORCPT ); Fri, 13 Aug 2021 11:09:24 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 614466109D; Fri, 13 Aug 2021 15:08:57 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1628867337; bh=I4m2kPY9UgdBTkTiWJFQgRp5uiCVjYQUXB2EydW5tUA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=k/JBh0Q2u9gCqKm25rD7ecukdhO5Agz8fowGYOpHCZEahuySFVa3Pwa8GutdLkbwZ l/4+oe6leNGkgQtRGgmYxpwJwvNMMUVTDdDOWFS2CKCgfcert5NLG9GqPm2u3FapDc ClFH24uZFs+dVYQRI1SVcoLeMfMus3hcFGBKb6Do= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Willy Tarreau , Johan Hovold Subject: [PATCH 4.4 11/25] USB: serial: ch341: fix character loss at high transfer rates Date: Fri, 13 Aug 2021 17:06:35 +0200 Message-Id: <20210813150521.087346803@linuxfoundation.org> X-Mailer: git-send-email 2.32.0 In-Reply-To: <20210813150520.718161915@linuxfoundation.org> References: <20210813150520.718161915@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Willy Tarreau commit 3c18e9baee0ef97510dcda78c82285f52626764b upstream. The chip supports high transfer rates, but with the small default buffers (64 bytes read), some entire blocks are regularly lost. This typically happens at 1.5 Mbps (which is the default speed on Rockchip devices) when used as a console to access U-Boot where the output of the "help" command misses many lines and where "printenv" mangles the environment. The FTDI driver doesn't suffer at all from this. One difference is that it uses 512 bytes rx buffers and 256 bytes tx buffers. Adopting these values completely resolved the issue, even the output of "dmesg" is reliable. I preferred to leave the Tx value unchanged as it is not involved in this issue, while a change could increase the risk of triggering the same issue with other devices having too small buffers. I verified that it backports well (and works) at least to 5.4. It's of low importance enough to be dropped where it doesn't trivially apply anymore. Cc: stable@vger.kernel.org Signed-off-by: Willy Tarreau Link: https://lore.kernel.org/r/20210724152739.18726-1-w@1wt.eu Signed-off-by: Johan Hovold Signed-off-by: Greg Kroah-Hartman --- drivers/usb/serial/ch341.c | 1 + 1 file changed, 1 insertion(+) --- a/drivers/usb/serial/ch341.c +++ b/drivers/usb/serial/ch341.c @@ -585,6 +585,7 @@ static struct usb_serial_driver ch341_de .owner = THIS_MODULE, .name = "ch341-uart", }, + .bulk_in_size = 512, .id_table = id_table, .num_ports = 1, .open = ch341_open,