From patchwork Mon Jun 15 04:05:54 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mark Tomlinson X-Patchwork-Id: 214427 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.8 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU, HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH, MAILING_LIST_MULTI, SIGNED_OFF_BY, SPF_HELO_NONE, SPF_PASS, USER_AGENT_GIT autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id ABA66C433E4 for ; Mon, 15 Jun 2020 04:06:09 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 83955207BC for ; Mon, 15 Jun 2020 04:06:09 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=alliedtelesis.co.nz header.i=@alliedtelesis.co.nz header.b="a/U3scyj" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727987AbgFOEGI (ORCPT ); Mon, 15 Jun 2020 00:06:08 -0400 Received: from gate2.alliedtelesis.co.nz ([202.36.163.20]:50529 "EHLO gate2.alliedtelesis.co.nz" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728143AbgFOEGG (ORCPT ); Mon, 15 Jun 2020 00:06:06 -0400 Received: from mmarshal3.atlnz.lc (mmarshal3.atlnz.lc [10.32.18.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by gate2.alliedtelesis.co.nz (Postfix) with ESMTPS id 9FE06891B1; Mon, 15 Jun 2020 16:05:57 +1200 (NZST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=alliedtelesis.co.nz; s=mail181024; t=1592193957; bh=3cfAFYHU5BJxG56tepVZpAZxLjvCy9XsBWxa/cSrxSo=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=a/U3scyjDp9kk7+DzU/JZRxhiSq5YSOtj5A+EUZB0hDoQp0v9IT01nMfXtxS1a8ry 9q8NCDpRvkIQzZ71vOEFY9qrR97g5Iasx0geEk4V0c8xxgv/zX34sh3aTRLWe0mpzj X/AvcQ+y/nmKwc8fDAU5KsgYfMRKtE0gmZjxYQ1nUrBDO+lxXk4gZPTRoTAPRKjz9I 9C2AxZjE6GTFIS7Q4QOQRIqC7V8w6xgqn4pk3k/dGUHHpWdrG3G7QfAYMAWgonLYM+ QwQyQj0uSRmHXKLB9IIxIbm49khrAjB7GPnhM/G4Kv2cJTgkqGHPlQZ2oKksWsEBl5 bsWLPtasJNTHg== Received: from smtp (Not Verified[10.32.16.33]) by mmarshal3.atlnz.lc with Trustwave SEG (v7, 5, 8, 10121) id ; Mon, 15 Jun 2020 16:05:57 +1200 Received: from markto-dl.ws.atlnz.lc (markto-dl.ws.atlnz.lc [10.33.23.25]) by smtp (Postfix) with ESMTP id 9EC4F13EDE4; Mon, 15 Jun 2020 16:05:56 +1200 (NZST) Received: by markto-dl.ws.atlnz.lc (Postfix, from userid 1155) id 50DA5341107; Mon, 15 Jun 2020 16:05:57 +1200 (NZST) From: Mark Tomlinson To: broonie@kernel.org, kdasu.kdev@gmail.com Cc: linux-kernel@vger.kernel.org, linux-spi@vger.kernel.org, Mark Tomlinson Subject: [PATCH 2/5] spi: bcm-qspi: Improve debug reading SPI data Date: Mon, 15 Jun 2020 16:05:54 +1200 Message-Id: <20200615040557.2011-3-mark.tomlinson@alliedtelesis.co.nz> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20200615040557.2011-1-mark.tomlinson@alliedtelesis.co.nz> References: <20200615040557.2011-1-mark.tomlinson@alliedtelesis.co.nz> MIME-Version: 1.0 x-atlnz-ls: pat Sender: linux-spi-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-spi@vger.kernel.org This patch prevents device debug when data is not read from hardware (i.e. when there is no receive buffer). Reviewed-by: Callum Sinclair Reviewed-by: Chris Packham Signed-off-by: Mark Tomlinson --- drivers/spi/spi-bcm-qspi.c | 31 ++++++++++++++++--------------- 1 file changed, 16 insertions(+), 15 deletions(-) diff --git a/drivers/spi/spi-bcm-qspi.c b/drivers/spi/spi-bcm-qspi.c index 8fc5b9b3757b..92e04d24359f 100644 --- a/drivers/spi/spi-bcm-qspi.c +++ b/drivers/spi/spi-bcm-qspi.c @@ -749,21 +749,22 @@ static void read_from_hw(struct bcm_qspi *qspi, int slots) tp = qspi->trans_pos; for (slot = 0; slot < slots; slot++) { - if (tp.trans->bits_per_word <= 8) { - u8 *buf = tp.trans->rx_buf; - - if (buf) - buf[tp.byte] = read_rxram_slot_u8(qspi, slot); - dev_dbg(&qspi->pdev->dev, "RD %02x\n", - buf ? buf[tp.byte] : 0x0); - } else { - u16 *buf = tp.trans->rx_buf; - - if (buf) - buf[tp.byte / 2] = read_rxram_slot_u16(qspi, - slot); - dev_dbg(&qspi->pdev->dev, "RD %04x\n", - buf ? buf[tp.byte / 2] : 0x0); + if (tp.trans->rx_buf) { + if (tp.trans->bits_per_word <= 8) { + u8 *buf = tp.trans->rx_buf; + + buf[tp.byte] = + read_rxram_slot_u8(qspi, slot); + dev_dbg(&qspi->pdev->dev, "RD %02x\n", + buf[tp.byte]); + } else { + u16 *buf = tp.trans->rx_buf; + + buf[tp.byte / 2] = + read_rxram_slot_u16(qspi, slot); + dev_dbg(&qspi->pdev->dev, "RD %04x\n", + buf[tp.byte / 2]); + } } update_qspi_trans_byte_count(qspi, &tp,