Received: by 2002:a05:6a10:c604:0:0:0:0 with SMTP id y4csp3756292pxt; Tue, 10 Aug 2021 10:34:51 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyw0KcciYN/XfV/W5e67jePQexp3uamxA/1xxE/9HGrmPy7HLy8Lf2P9vDlZ1Gaash4h+uu X-Received: by 2002:a17:907:2cf0:: with SMTP id hz16mr16077913ejc.466.1628616891285; Tue, 10 Aug 2021 10:34:51 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1628616891; cv=none; d=google.com; s=arc-20160816; b=njUQRanf1/mTJBGjelUPUnZHLH3APw9pz/3d5og4/efiMDxsgh1xc9GGNPk1ODl+M9 TAx8l5G3XAyELLwVeNw3GWPoBCR7+jr1/L41itlu31PbFYaVX3+xRJ/Nd2no+z+GcTvj +yNmAK6dY7FXFFyRZu5k4YV+lJp6AL3fvzKaAqUUALZBUf/8rjDDZUoqnn2YOtRLd/QL KxFnUNzltdB0WwJtolxaQ+YsCgYahgz4TWt8a8d3KhO92I+GEyA8lczCZub0dIn43btr Xkn7XJZ/eztWh+bw2h/pxbBnDDAttFiP+LX/Cxst+AsWQ7LNzGkg8CSMLKDcIJNyJqMm Q9EQ== 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=+eykKDJ11EQAPaWlBrZjYybtOA/lgKJLmNq5fuiQVrs=; b=HONLdKUcGvS4dlk0JLlqcYC8sewBgl2XzkUnEjJM8R343fwwPnt8HhYAOWj/KmJqbI 7ZnGw/nn/AHhfOxgUh+N3vpgVh8SX0gVsThiqJbrsGqQ0m8hHt8bYVFFTBNPTRhuOXrE Hs2LbTx4q4LeNZ6Wa67iK/y+LXp15s+8jnBakYeHU8wEj12myz/kpOz+qVq8vnBtY7AL zjT6UZJqhpPz6DB4zH30ivfXcGnqQML7UuCgeuqzZhDF4W29OYIukd8zNrIJwaYuswSD CTgr6dl2FtPDciO6P33z1XOT8Og5mrlRQO4GJoD24VGooDxhsbG26Wr8p53kMpnNJv2/ OgbQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=Tp9htIiL; 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 24si285324edv.331.2021.08.10.10.34.23; Tue, 10 Aug 2021 10:34:51 -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=Tp9htIiL; 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 S231794AbhHJRcr (ORCPT + 99 others); Tue, 10 Aug 2021 13:32:47 -0400 Received: from mail.kernel.org ([198.145.29.99]:32854 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231465AbhHJRce (ORCPT ); Tue, 10 Aug 2021 13:32:34 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id D727360F13; Tue, 10 Aug 2021 17:32:11 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1628616732; bh=6aDcVA48kqfRMlXtJ3vMSq4cdUNQ0LF5woQJAJxunB4=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Tp9htIiL7zIiQCYJUFTZ8NhJojbF4JHLvdqlrzfb4P90bBFdPFqaB6LXPW2RQGIQK cNLnMDt9GMhZUcJTaq1IscIZ0DBa7htuIdu5fTqOi+PTEDonAnIYWq3HAaw5VkSYrF 7daL7fPaDHwWUbAFCOx3MQ+pp5eC4/2MiwWe4NhQ= 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.19 23/54] USB: serial: ch341: fix character loss at high transfer rates Date: Tue, 10 Aug 2021 19:30:17 +0200 Message-Id: <20210810172944.935001202@linuxfoundation.org> X-Mailer: git-send-email 2.32.0 In-Reply-To: <20210810172944.179901509@linuxfoundation.org> References: <20210810172944.179901509@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 @@ -625,6 +625,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,