Received: by 10.223.164.202 with SMTP id h10csp675018wrb; Tue, 14 Nov 2017 07:53:51 -0800 (PST) X-Google-Smtp-Source: AGs4zMatc8ErMO/oJxG815xQJO0bvwMGYDNnP98gqAAw35+Z6C275ajXdNtkEnOOLajHYlp6qn+S X-Received: by 10.99.156.26 with SMTP id f26mr12639016pge.433.1510674831852; Tue, 14 Nov 2017 07:53:51 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1510674831; cv=none; d=google.com; s=arc-20160816; b=fQx6tGFcF+50IGtCg/4iYv5rX38jc2c43AuhvyTtaOQpy29/e0wXJSMBDonombKTLa ftvg4PoNZmSTu+YYU6Iw8xuljBGaDpTvfQ9uIko7SD2AwJmn91R4Xr6R9mSkcaRBNsuS uwvENGOY++5yCp5hpAWdwyG7kjQTXggz8QlJxhjsqjlxRFeQTCiu1gaVw4+sbMt3WIqX 5uKOJNk1Ifq6JNU/mXmQJ4VNa65sCLSMw9T0cQzc+IauEOHsYkY2Op1CxkmFPb4XrtwQ 9igF2qHNX1YTZmFAnwE2vomImDR56Jxm9MbAgHWgFfSxdyjzA21rOx3P38xzfZYqjK+T 1VHw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:arc-authentication-results; bh=kaOr2bKuslDkfkdzG9fdTz0PmUnLl0cocXx61x7Bsr8=; b=Eho8pmAUN1DgbQaXJbxmbDUaKla454esmbIHi+CBAiQtDmjnS9VCnYAYp4yO7q4Ugo GJEIB/ZHETq3/Xe7LGJ109iDo4/CZtqaig+4Nol6aqFGdKpykuYHYlGOp2V1yPV3b1n/ v5Agm1vPhuoO+tKqi0u7+fYVBJ8GQJxFsasqrgvBAGVXPXbgTqP3OvfwayVWj7suhJXy 3OysNgUPA6V88lG4wKwIPg6ooodpvtMVsUTPsChmC6rmwJ2OJyVuM/MLqiUxsDewbato QO+VaBiiEC9F/l7iEByE13esY1NoxWqSjgPjO8tovHr1m11Z++ZK/msWMHAw4NX/6OAk 4LpQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=nvidia.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id m4si16333015plt.333.2017.11.14.07.53.39; Tue, 14 Nov 2017 07:53:51 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=nvidia.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754742AbdKNOn4 (ORCPT + 87 others); Tue, 14 Nov 2017 09:43:56 -0500 Received: from hqemgate15.nvidia.com ([216.228.121.64]:15547 "EHLO hqemgate15.nvidia.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754161AbdKNOni (ORCPT ); Tue, 14 Nov 2017 09:43:38 -0500 Received: from hqpgpgate101.nvidia.com (Not Verified[216.228.121.13]) by hqemgate15.nvidia.com id ; Tue, 14 Nov 2017 06:43:36 -0800 Received: from HQMAIL106.nvidia.com ([172.20.161.6]) by hqpgpgate101.nvidia.com (PGP Universal service); Tue, 14 Nov 2017 06:43:37 -0800 X-PGP-Universal: processed; by hqpgpgate101.nvidia.com on Tue, 14 Nov 2017 06:43:37 -0800 Received: from HQMAIL112.nvidia.com (172.18.146.18) by HQMAIL106.nvidia.com (172.18.146.12) with Microsoft SMTP Server (TLS) id 15.0.1293.2; Tue, 14 Nov 2017 14:43:37 +0000 Received: from HQMAIL108.nvidia.com (172.18.146.13) by HQMAIL112.nvidia.com (172.18.146.18) with Microsoft SMTP Server (TLS) id 15.0.1293.2; Tue, 14 Nov 2017 14:43:36 +0000 Received: from hqnvemgw02.nvidia.com (172.16.227.111) by HQMAIL108.nvidia.com (172.18.146.13) with Microsoft SMTP Server id 15.0.1293.2 via Frontend Transport; Tue, 14 Nov 2017 14:43:36 +0000 Received: from moonraker.nvidia.com (Not Verified[10.21.132.144]) by hqnvemgw02.nvidia.com with Trustwave SEG (v7,5,8,10121) id ; Tue, 14 Nov 2017 06:43:35 -0800 From: Jon Hunter To: Lee Jones CC: , , "Brian Norris" , Shawn Nematbakhsh , Benson Leung , Jon Hunter Subject: [PATCH V2 2/2] mfd: cros ec: spi: Simplify delay handling between SPI messages Date: Tue, 14 Nov 2017 14:43:28 +0000 Message-ID: <1510670608-19594-2-git-send-email-jonathanh@nvidia.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1510670608-19594-1-git-send-email-jonathanh@nvidia.com> References: <1510670608-19594-1-git-send-email-jonathanh@nvidia.com> X-NVConfidentiality: public MIME-Version: 1.0 Content-Type: text/plain Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The EC SPI driver prevents SPI transfers being to rapidly by keeping track of the time the last transfer was issued via the 'last_transfer_ns' variable. Previously, if the 'last_transfer_ns' variable was zero, this indicated that no previous transfer had been sent and that no delay was needed. However, the EC SPI driver has been updated to always initialise the 'last_transfer_ns' variable during probe and therefore, it is no longer necessary to test if it is zero. Remove the code that checks if this variable is zero. Signed-off-by: Jon Hunter Reviewed-by: Brian Norris --- Changes since V1: - Added Brian's reviewed-by. drivers/mfd/cros_ec_spi.c | 25 +++++++++---------------- 1 file changed, 9 insertions(+), 16 deletions(-) diff --git a/drivers/mfd/cros_ec_spi.c b/drivers/mfd/cros_ec_spi.c index a14196e95e9b..7849d781c6bb 100644 --- a/drivers/mfd/cros_ec_spi.c +++ b/drivers/mfd/cros_ec_spi.c @@ -72,8 +72,7 @@ * struct cros_ec_spi - information about a SPI-connected EC * * @spi: SPI device we are connected to - * @last_transfer_ns: time that we last finished a transfer, or 0 if there - * if no record + * @last_transfer_ns: time that we last finished a transfer. * @start_of_msg_delay: used to set the delay_usecs on the spi_transfer that * is sent when we want to turn on CS at the start of a transaction. * @end_of_msg_delay: used to set the delay_usecs on the spi_transfer that @@ -378,18 +377,15 @@ static int cros_ec_pkt_xfer_spi(struct cros_ec_device *ec_dev, u8 *rx_buf; u8 sum; int ret = 0, final_ret; + unsigned long delay; len = cros_ec_prepare_tx(ec_dev, ec_msg); dev_dbg(ec_dev->dev, "prepared, len=%d\n", len); /* If it's too soon to do another transaction, wait */ - if (ec_spi->last_transfer_ns) { - unsigned long delay; /* The delay completed so far */ - - delay = ktime_get_ns() - ec_spi->last_transfer_ns; - if (delay < EC_SPI_RECOVERY_TIME_NS) - ndelay(EC_SPI_RECOVERY_TIME_NS - delay); - } + delay = ktime_get_ns() - ec_spi->last_transfer_ns; + if (delay < EC_SPI_RECOVERY_TIME_NS) + ndelay(EC_SPI_RECOVERY_TIME_NS - delay); rx_buf = kzalloc(len, GFP_KERNEL); if (!rx_buf) @@ -510,18 +506,15 @@ static int cros_ec_cmd_xfer_spi(struct cros_ec_device *ec_dev, u8 *rx_buf; int sum; int ret = 0, final_ret; + unsigned long delay; len = cros_ec_prepare_tx(ec_dev, ec_msg); dev_dbg(ec_dev->dev, "prepared, len=%d\n", len); /* If it's too soon to do another transaction, wait */ - if (ec_spi->last_transfer_ns) { - unsigned long delay; /* The delay completed so far */ - - delay = ktime_get_ns() - ec_spi->last_transfer_ns; - if (delay < EC_SPI_RECOVERY_TIME_NS) - ndelay(EC_SPI_RECOVERY_TIME_NS - delay); - } + delay = ktime_get_ns() - ec_spi->last_transfer_ns; + if (delay < EC_SPI_RECOVERY_TIME_NS) + ndelay(EC_SPI_RECOVERY_TIME_NS - delay); rx_buf = kzalloc(len, GFP_KERNEL); if (!rx_buf) -- 2.7.4 From 1583611795653589674@xxx Thu Nov 09 17:51:36 +0000 2017 X-GM-THRID: 1583611795653589674 X-Gmail-Labels: Inbox,Category Forums,HistoricalUnread