Received: by 10.223.164.202 with SMTP id h10csp38224wrb; Mon, 13 Nov 2017 13:06:51 -0800 (PST) X-Google-Smtp-Source: AGs4zMbOZsZ46B9dY0A1/b7RU27CpdK8vuDsdE6d428cL0+kp0FtlGF/cXk6y99e8c7hgVoLDZPC X-Received: by 10.101.96.48 with SMTP id p16mr9690195pgu.230.1510607211660; Mon, 13 Nov 2017 13:06:51 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1510607211; cv=none; d=google.com; s=arc-20160816; b=vilkrGB2oXGpIuxNSM0anX/xHEa7t4qjGIObwyl8uDYKDFObitB49rT8NW8Wwaw2xO Zi5iAnLmyOU6X9OnGiXWsby2IDp2BeRxhFDxvXk1+wlOYfiJBYzLMuXr95XRdofzCk4c DUd+KdfJp0MP8My41oR4DTKnOE2cEhyIUKgcJQ6WoMo7puw7VkK7aCJ2Oj3rA8uY6Dun 4ns5PHHDH+Q2jAsykqRkk48p+/aOBE0tv+2O5qimNfoxu3Nlq2zQJL2qS9DGjht07pHE Yt46SAC2X30lQn4M9AG2T48bIxtbNsrKsZN98yQZDpx+jADfpbFkw+eheHxQFPjH3ZUX x0Nw== 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=U3xzttv/2lx9kC9RYdR23qsr0gbGNVRslWQGD3Wo2Fg=; b=MMQ0h0Y2qSj8oWYFZseNzMqAx9yuTV1Et1cstt87RQ3Bd+24ucVNPMH8V1kES4q935 SiTH1cTOmovu2/LVc1b+P7kNLfHDWQLDiqNIrqC6DxAZ7OA0QwsH5trwQrMFkfInCJhb fdT5HOZ+0NquBnqAzDnyVaaaJW+/8/+8E1ge6YtO4hb5FDzENJ6khw/T23xIULem8Zjk TAw6OIKFb/J0Yn4/GrUVA5hGK8GyYw5XVwNCdDZdfNlTmK9/LiVqQX21clu7zGRBEDag ePwlB/pba9wopVyR4lr1jX/4nJuUFkNoEso9HSOUA881TUtGb4T48SBw7xocKlUKnSSs CY/w== 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 i11si14516280pgq.753.2017.11.13.13.06.39; Mon, 13 Nov 2017 13:06: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 S1755843AbdKMVFz (ORCPT + 87 others); Mon, 13 Nov 2017 16:05:55 -0500 Received: from hqemgate14.nvidia.com ([216.228.121.143]:19079 "EHLO hqemgate14.nvidia.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755744AbdKMVFv (ORCPT ); Mon, 13 Nov 2017 16:05:51 -0500 Received: from hqpgpgate102.nvidia.com (Not Verified[216.228.121.13]) by hqemgate14.nvidia.com id ; Mon, 13 Nov 2017 13:05:46 -0800 Received: from HQMAIL103.nvidia.com ([172.20.161.6]) by hqpgpgate102.nvidia.com (PGP Universal service); Mon, 13 Nov 2017 13:06:21 -0800 X-PGP-Universal: processed; by hqpgpgate102.nvidia.com on Mon, 13 Nov 2017 13:06:21 -0800 Received: from HQMAIL106.nvidia.com (172.18.146.12) by HQMAIL103.nvidia.com (172.20.187.11) with Microsoft SMTP Server (TLS) id 15.0.1293.2; Mon, 13 Nov 2017 21:05:50 +0000 Received: from hqnvemgw02.nvidia.com (172.16.227.111) by HQMAIL106.nvidia.com (172.18.146.12) with Microsoft SMTP Server id 15.0.1293.2 via Frontend Transport; Mon, 13 Nov 2017 21:05:50 +0000 Received: from moonraker.nvidia.com (Not Verified[10.26.11.172]) by hqnvemgw02.nvidia.com with Trustwave SEG (v7,5,8,10121) id ; Mon, 13 Nov 2017 13:05:49 -0800 From: Jon Hunter To: Lee Jones CC: , , Brian Norris , Shawn Nematbakhsh , Jon Hunter Subject: [PATCH 2/2] mfd: cros ec: spi: Simplify delay handling between SPI messages Date: Mon, 13 Nov 2017 21:05:40 +0000 Message-ID: <1510607140-30582-2-git-send-email-jonathanh@nvidia.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1510607140-30582-1-git-send-email-jonathanh@nvidia.com> References: <1510607140-30582-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 --- 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 1586632757490778259@xxx Wed Dec 13 02:08:30 +0000 2017 X-GM-THRID: 1586632757490778259 X-Gmail-Labels: Inbox,Category Forums,HistoricalUnread