Received: by 2002:a05:6a10:2726:0:0:0:0 with SMTP id ib38csp953467pxb; Wed, 6 Apr 2022 05:12:38 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyHFvdIcujWZ7w8dqSz7sivQwsG3aknyBMTfrgrAFfdOHoHLarkC57rZqIy7DxjSDGU0wgs X-Received: by 2002:a17:902:e882:b0:154:445d:9818 with SMTP id w2-20020a170902e88200b00154445d9818mr8400006plg.40.1649247157798; Wed, 06 Apr 2022 05:12:37 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1649247157; cv=none; d=google.com; s=arc-20160816; b=QCSAsePWuj6mFj+AugcbyKrcBs6jMaMr07dSkV3xdAYRhoy7VqPzVpz1NM5YjePaYl PRAH3mpF3Rbu9scLv/3JfkLHxme+ryylXv9CLbQCCM1bCY0a6OVwYKh+AP6uon4/ECZU KDkVC4a+NFOGs1C0borT+oO+KcCFxtLXDYFMK30uKCWdFmInb5uV9hCgfCu7pMwnIBiO xX+P3SqPozZlyWuuLObltNBZv7ZUNDe5ogs+3GFPvxacG1nWbZ9mXHU4xHM/spwGUEiU a1Zhko00PJYk5fSUlxF0RRzTVe/6xOr+oKPO+49PBcbGiSzBvJlXU2ju9i8u84zLfB4f tDrA== 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=xHyyEu2zCQbbhirMNmSzhvkhZ9KJfEVVgqQVS8kr7pc=; b=Oje6fRsFowLu2wSvUJmc/hJdKnqeDeyNrm5vBdVmQf1aceXuyOQHtHFw5sAw+lIIgK PGlPgAJADXiZj+SFC9faqWTN0Ok1jpJaGdcNTieOH9selCZFwSgrmqqaiJ3zDuHy4TYa zCGFu8Boqs+lY26HLpjiSC6AgUAt8wth9+bjKkhb9S6lmUE3ueM5G1y1Lkf3P2MlAKNl E5/52/AeDDzjrLOJuzRkpaJLp/tRRrC+Zl+a1oO76uEhIgBojwfMzETXx6Dy3E6rTvYJ TQcqVxUGV2uijG4yORJEwohyvs4Io3qcoyVRn/brE7/CQrGZlSbWJqYxBaGfknXPz96m BeTw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=YSm5xkFU; spf=softfail (google.com: domain of transitioning linux-kernel-owner@vger.kernel.org does not designate 23.128.96.19 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 lindbergh.monkeyblade.net (lindbergh.monkeyblade.net. [23.128.96.19]) by mx.google.com with ESMTPS id q10-20020a056a00088a00b004faaaf135b9si16875047pfj.345.2022.04.06.05.12.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 06 Apr 2022 05:12:37 -0700 (PDT) Received-SPF: softfail (google.com: domain of transitioning linux-kernel-owner@vger.kernel.org does not designate 23.128.96.19 as permitted sender) client-ip=23.128.96.19; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=YSm5xkFU; spf=softfail (google.com: domain of transitioning linux-kernel-owner@vger.kernel.org does not designate 23.128.96.19 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id E1C016AABDB; Wed, 6 Apr 2022 03:50:28 -0700 (PDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1357354AbiDEUj7 (ORCPT + 99 others); Tue, 5 Apr 2022 16:39:59 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57676 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1355248AbiDEKSn (ORCPT ); Tue, 5 Apr 2022 06:18:43 -0400 Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 48D8FFD3A; Tue, 5 Apr 2022 03:04:36 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ams.source.kernel.org (Postfix) with ESMTPS id E633FB81C8B; Tue, 5 Apr 2022 10:04:34 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 425AEC385A2; Tue, 5 Apr 2022 10:04:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1649153073; bh=CLWf3OMHKzeZvde0sUqk3oNEVx0H7Xs+0c0PJsByIdQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=YSm5xkFUkayn6nZEAuWe5/Uqv1Ga1MBxQSR+bKv1Reqj56WS6jYqVbPtBV25L81R3 92n/WnjMs3nuATnm8o/FKBlsCkKQ8Mxo/PhFHBmRhO8R64IZqxtI0BpHMeFqw66pu/ n7NKasoh0mO4zFUNfeLHfyVclaZsNuiA5Smj3rqk= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Pekka Pessi , Jon Hunter , Thierry Reding , Jassi Brar Subject: [PATCH 5.10 093/599] mailbox: tegra-hsp: Flush whole channel Date: Tue, 5 Apr 2022 09:26:27 +0200 Message-Id: <20220405070301.595991009@linuxfoundation.org> X-Mailer: git-send-email 2.35.1 In-Reply-To: <20220405070258.802373272@linuxfoundation.org> References: <20220405070258.802373272@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-2.0 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RDNS_NONE,SPF_HELO_NONE,T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Pekka Pessi commit 60de2d2dc284e0dd1c2c897d08625bde24ef3454 upstream. The txdone can re-fill the mailbox. Keep polling the mailbox during the flush until all the messages have been delivered. This fixes an issue with the Tegra Combined UART (TCU) where output can get truncated under high traffic load. Signed-off-by: Pekka Pessi Tested-by: Jon Hunter Fixes: 91b1b1c3da8a ("mailbox: tegra-hsp: Add support for shared mailboxes") Cc: stable@vger.kernel.org Signed-off-by: Thierry Reding Reviewed-by: Jon Hunter Signed-off-by: Jassi Brar Signed-off-by: Greg Kroah-Hartman --- drivers/mailbox/tegra-hsp.c | 5 +++++ 1 file changed, 5 insertions(+) --- a/drivers/mailbox/tegra-hsp.c +++ b/drivers/mailbox/tegra-hsp.c @@ -410,6 +410,11 @@ static int tegra_hsp_mailbox_flush(struc value = tegra_hsp_channel_readl(ch, HSP_SM_SHRD_MBOX); if ((value & HSP_SM_SHRD_MBOX_FULL) == 0) { mbox_chan_txdone(chan, 0); + + /* Wait until channel is empty */ + if (chan->active_req != NULL) + continue; + return 0; }