From patchwork Fri Dec 2 16:18:09 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Richard Fitzgerald X-Patchwork-Id: 2543 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:adf:f944:0:0:0:0:0 with SMTP id q4csp964095wrr; Fri, 2 Dec 2022 08:52:29 -0800 (PST) X-Google-Smtp-Source: AA0mqf6SQi4LPDALFcgoLKavf5cbYeywvC3v0qnvFRtAwGqIM+gwG1Jf1RyzWJFCWfrlaRrF04ln X-Received: by 2002:a62:62c2:0:b0:56e:e2f4:4191 with SMTP id w185-20020a6262c2000000b0056ee2f44191mr74852329pfb.27.1669999948002; Fri, 02 Dec 2022 08:52:28 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1669999947; cv=none; d=google.com; s=arc-20160816; b=E5iE54W76NHCDccaR/+mGCfdEoXo8cao9FpHZLdZgD/WCb0mXCxRL3wMGawdAMvMhZ fhdNu9TebZDLFXxi9EB3kVkowVAtd5R4J7N1fZhWRZbIOi7C1LwIfTUJ9Cj0jizpisme YDeuAN5cFXSoGHZEpgZojhkLufa0N1+mXDrHKOice00FdTbyFYp6nSFKh2CTYwPwKjzF 2YqyFymj1x4kMOvkDodTpGJgsHoXmwjtBXiAmyhslo69LbxnByd2i3yEB+DTZs89uTEw VZrf2oDbf7NsNoWNnp3wBjNDFtngHquI06UG7cCxmRx7l2AxGvmG3f4rMmqd6efF5GA+ UQcA== 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 :message-id:date:subject:cc:to:from:dkim-signature; bh=RIFCmyy6/4s76okPuZ7eQuTU58jGZcnvgrzMHZqxzxY=; b=tANRPgwZxreMSz+D453hVJFUkKpMMYP1QEPKzAunIa+VLuf7b1jOaPh72kSp/x8+uA lo6HzVMQlg33BBRpRjOYnbWp0jymXZEHD5H35JpDlYJooPKUVfdT92EKpbVDo6D/vfvs kVY6VQf3HuhdYs/c+f5hLDij0PcAm/sUfKPyk0osU70Z/tIFv8k6lUvVNdHOvrEM5HQr 9bhIiucarT4tQ+1HG6gCNTWvacYWp6DR24kM2N4YrHzCaAaQaUwATrgP33A7PdYQLOBy tMK8Bzrrd0u6PtAoXoDEXvMCKTxGCACToEYZGYASx5iaTH8CT60aVgBO3j+CoNvQRekR fp3Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@cirrus.com header.s=PODMain02222019 header.b=mAE7Tqx7; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=cirrus.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id i6-20020a170902cf0600b001868277386dsi7710347plg.192.2022.12.02.08.52.12; Fri, 02 Dec 2022 08:52:27 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@cirrus.com header.s=PODMain02222019 header.b=mAE7Tqx7; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=cirrus.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234036AbiLBQhd (ORCPT + 99 others); Fri, 2 Dec 2022 11:37:33 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:59486 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233795AbiLBQhZ (ORCPT ); Fri, 2 Dec 2022 11:37:25 -0500 Received: from mx0b-001ae601.pphosted.com (mx0b-001ae601.pphosted.com [67.231.152.168]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id ACEDBB0B45 for ; Fri, 2 Dec 2022 08:37:24 -0800 (PST) Received: from pps.filterd (m0077474.ppops.net [127.0.0.1]) by mx0b-001ae601.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 2B28j12k022681; Fri, 2 Dec 2022 10:18:14 -0600 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cirrus.com; h=from : to : cc : subject : date : message-id : mime-version : content-transfer-encoding : content-type; s=PODMain02222019; bh=RIFCmyy6/4s76okPuZ7eQuTU58jGZcnvgrzMHZqxzxY=; b=mAE7Tqx7LOPHnchN2hJ3/2V2i231GtpO4kElveA8j+WCzOAc80n4NmkTlqEoSZD0gVnG be56TQwteIRDe1Z3RoOO+ZzPZ9x2RqzVIuAVjpiCy6wr01GfqAovyAUmSMbsWC2zqEul wzkWI1IetFJXQTCWNgNvRL6vc/JMi0nw3Gczy7Wvd6EmCQjXIia//LStczR2ubvptL++ Ezf+OgYtsGM/M+pgpmUDYXtPRYx3RZXOMg9a0R03xnEBani+6dcboONc2WuZEV1nXJCR z80hHYo/z8EdTHeLpkl6+fd2cGSMF9Ehk3KqTALxsRYeQ3zDXH3cGoLjbajN5PJmjBHE aA== Received: from ediex01.ad.cirrus.com ([84.19.233.68]) by mx0b-001ae601.pphosted.com (PPS) with ESMTPS id 3m6k2vt0n6-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Fri, 02 Dec 2022 10:18:14 -0600 Received: from ediex01.ad.cirrus.com (198.61.84.80) by ediex01.ad.cirrus.com (198.61.84.80) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1118.20; Fri, 2 Dec 2022 10:18:12 -0600 Received: from ediswmail.ad.cirrus.com (198.61.86.93) by ediex01.ad.cirrus.com (198.61.84.80) with Microsoft SMTP Server id 15.2.1118.20 via Frontend Transport; Fri, 2 Dec 2022 10:18:12 -0600 Received: from edi-sw-dsktp-006.ad.cirrus.com (edi-sw-dsktp-006.ad.cirrus.com [198.90.251.111]) by ediswmail.ad.cirrus.com (Postfix) with ESMTP id 71E17B10; Fri, 2 Dec 2022 16:18:12 +0000 (UTC) From: Richard Fitzgerald To: , CC: , , , , , Richard Fitzgerald Subject: [PATCH v2 0/3] soundwire: cadence: Fix oversized FIFO size define Date: Fri, 2 Dec 2022 16:18:09 +0000 Message-ID: <20221202161812.4186897-1-rf@opensource.cirrus.com> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 X-Proofpoint-GUID: s3b6a1tc7ugk36PbSMbViYKf154AY-yy X-Proofpoint-ORIG-GUID: s3b6a1tc7ugk36PbSMbViYKf154AY-yy X-Proofpoint-Spam-Reason: safe X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_LOW,SPF_HELO_NONE,SPF_PASS autolearn=ham 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 X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1751121865637316321?= X-GMAIL-MSGID: =?utf-8?q?1751121865637316321?= As determined by experimentation and asking a hardware person, the FIFO in the Cadence IP is actually only 8 entries long, not 32. This is fixed in patch #1. As a bonus, patches #2 and #3 fix two other things I noticed while debugging this. Changes since v1: - Rewrite commit message of patch #1 - Only reduce response_buf to 34 (32 + 2) - Trim RX_FIFO_AVAIL to length of response_buf instead of expected FIFO size Richard Fitzgerald (3): soundwire: cadence: Don't overflow the command FIFOs soundwire: cadence: Remove wasted space in response_buf soundwire: cadence: Drain the RX FIFO after an IO timeout drivers/soundwire/cadence_master.c | 46 +++++++++++++++++++----------- drivers/soundwire/cadence_master.h | 13 ++++++++- 2 files changed, 41 insertions(+), 18 deletions(-) Reviewed-by: Pierre-Louis Bossart