Received: by 2002:a05:6a10:8a4d:0:0:0:0 with SMTP id dn13csp874921pxb; Fri, 13 Aug 2021 08:12:49 -0700 (PDT) X-Google-Smtp-Source: ABdhPJx5/og9FpU6N3d2t23raiOUD/rm8H3dJUc+jc26WBD5XGezUi8roD8aoiHhSOgg2v73jH4a X-Received: by 2002:a02:b68c:: with SMTP id i12mr2669920jam.31.1628867569713; Fri, 13 Aug 2021 08:12:49 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1628867569; cv=none; d=google.com; s=arc-20160816; b=U0Vz9XGhHz+GT6AL97yxPPlHq9CogbcKfsC2ERRFjr0ed+SpmuGSxSWNjmwV5zIKul 0oHAJiMfeyhJqMxphlCpCSbxErjOuL/1ZDVs/Kr5sx2YZ96uEZTkSo/GUTUsTxfciRnr zq+CHXzSR9fxLQgoKb6qIXMuhGBPSbzLJrr+P7teJK1QW3fGXd5WpPG4D1L4af/+UpSI dSBJQtpXlMM1pwoeompYZ7siTjBk7P+vkKidKGZkPwUBatCSexaaTzG6anoviiXNU3Im wR0vD1e6D+RAeDAzkJSW0hbiH8NylKJzXp77ihcO5B6BNKYDuqjOA25L4/a6w25/qpEi H+dw== 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=chKWtslCRlbQCZooJx4SniXwqUbkiKABHGDjOQNHMws4agfy+AV+yPiybU9GBUsBP7 gLA2ZGTsIlrLy+agGXLFTL65MG9NxW1Ha2hdRdn36NMOHwS2N+I3GOteeu2FdSDfNe8V QJrGCANiGBl2zBY3gpeYgTvZ6DCSYirP7sNrARdW5kh9FjQJc3anG+hmUOEk0Fol6aGL xjJS6ksnJH8Pxwgs5AgMBmTFKlP7lkkZZNF0t45kaz5JMhSk0FH0yH8rFBewij6lOlQ+ fd0E/NS3IXRZBfp0IkUgjMVRqvEW9HDmk/pI0NOiF9aZdxAMMVL+60LLXbNjyJqUWf2D aOqA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b="Q6vdLK/v"; 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 u6si1770274ilq.19.2021.08.13.08.12.37; Fri, 13 Aug 2021 08:12:49 -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="Q6vdLK/v"; 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 S241516AbhHMPJ6 (ORCPT + 99 others); Fri, 13 Aug 2021 11:09:58 -0400 Received: from mail.kernel.org ([198.145.29.99]:52610 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S241410AbhHMPJn (ORCPT ); Fri, 13 Aug 2021 11:09:43 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id C0E7C61103; Fri, 13 Aug 2021 15:09:15 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1628867356; bh=I4m2kPY9UgdBTkTiWJFQgRp5uiCVjYQUXB2EydW5tUA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Q6vdLK/va9hlojEXCQglE8iI0qYM5qfnoS065MauaX2aa6fw1LsAS6Uz8869R3BVw 55Ass+hAXdUDZphgazrH3bOf4FnGRp6cBZuDvZZ3jZzbjhsGJu3RKGpvxsHzXC7AC7 1qcGKBsw43voo+CTx1Co/C6yEUMLSCeVDaBNPRuE= 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.9 13/30] USB: serial: ch341: fix character loss at high transfer rates Date: Fri, 13 Aug 2021 17:06:41 +0200 Message-Id: <20210813150522.865665253@linuxfoundation.org> X-Mailer: git-send-email 2.32.0 In-Reply-To: <20210813150522.445553924@linuxfoundation.org> References: <20210813150522.445553924@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,