From mboxrd@z Thu Jan 1 00:00:00 1970 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=-15.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED 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 D1AD9C433DB for ; Wed, 10 Mar 2021 07:17:44 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 924FA64FED for ; Wed, 10 Mar 2021 07:17:44 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230269AbhCJHRK (ORCPT ); Wed, 10 Mar 2021 02:17:10 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:50460 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229516AbhCJHRG (ORCPT ); Wed, 10 Mar 2021 02:17:06 -0500 Received: from mail-vs1-xe2e.google.com (mail-vs1-xe2e.google.com [IPv6:2607:f8b0:4864:20::e2e]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 83352C061761 for ; Tue, 9 Mar 2021 23:17:04 -0800 (PST) Received: by mail-vs1-xe2e.google.com with SMTP id v123so8217916vsv.9 for ; Tue, 09 Mar 2021 23:17:04 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=deviqon.com; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=5O4bWXBCQeQuk0BdQom2dNS7Jmj8ph1wsbHk08MJAMo=; b=h1lBv7HHj122ZOQj79sUyMEcd0w5tZ5oV+JyqbEAP6IjncbQiGVy8O14kGSopZ/RBx 9v2gMNrpI9dt04NG+QIN/gmmZWg3fVjIn1tcv81o1Zn57C+4gpo/i+K6DDJGIjAYDD1d KZbwTuKJwz1WrxDTxcAVijM/GojWEq9d8mJct7JWW7QAaNeF1syI/sRvDtbi+HPObcfq 5uHQyTctmvjfVGPbz5aASZ00uqwQaJVO9XeaiinwzqpdY68XcFk8CFpmzqPAMAbdjUeH vuZGlGdUJgO/m0f2Ul4b4DUBi6I43LHxDjtkfkGsgWwGw6cEOKY5wfKkRuGxJLBAuKXt OI4A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=5O4bWXBCQeQuk0BdQom2dNS7Jmj8ph1wsbHk08MJAMo=; b=bscnzkvRPJ/dgWXDzMBW8/ozh1GkwD0zdOnNcutQumwfEswHrrHBauxjeiy79PD/Q5 cFTY6TqONvcvGQ4QsomBDkBzh5slfWR0PrESI+oAvOiChxkpxF2pcgQ37UQVh2iwqM2H LmS0PstVME7Uyvhz9JI6uqznJtHzEZQT3aqH66pl4snQlVuOS4ik9WXgf5fn+k1TXcQX gomsiv18m7d8wRnUvR0hx7EGEjFKvn+Io/l8twBJslVcWaaQXKG4/+o7Idg8dbLEYLz4 aFsfDG9QkNsE8mwGei+U5dwHrqD6FbsIgCaTvixyIimeYF+U16JxFS8HLHIcUgQSLn4z uDig== X-Gm-Message-State: AOAM533+ieUNeQ7EGk2vwa1zryw6CVO3Qk1BKgILw0MwpzSAzvOvp/ne 1KPvC+xE2y5RDm2WwwMQjKp0NubWbSi22a7YDmMiUg== X-Google-Smtp-Source: ABdhPJytTW7QIOLB8UPImbCUal1chmTmNyv6Z6uRJmeRfc+N68L2N1shNta5YcuAAXSn3Da5NzDEfquDQar0GSWxbDA= X-Received: by 2002:a67:31d1:: with SMTP id x200mr972514vsx.16.1615360622918; Tue, 09 Mar 2021 23:17:02 -0800 (PST) MIME-Version: 1.0 References: <20210308145502.1075689-1-aardelean@deviqon.com> <20210308145502.1075689-2-aardelean@deviqon.com> <8a6ec9a1-71f8-ce1d-600a-66eba9244a54@metafoo.de> In-Reply-To: <8a6ec9a1-71f8-ce1d-600a-66eba9244a54@metafoo.de> From: Alexandru Ardelean Date: Wed, 10 Mar 2021 09:16:51 +0200 Message-ID: Subject: Re: [PATCH 01/10] spi: spi-axi-spi-engine: remove usage of delay_usecs To: Lars-Peter Clausen Cc: linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, greybus-dev@lists.linaro.org, devel@driverdev.osuosl.org, linux-tegra@vger.kernel.org, bcm-kernel-feedback-list@broadcom.com, broonie@kernel.org, gregkh@linuxfoundation.org, elder@kernel.org, johan@kernel.org, vireshk@kernel.org, rmfrfs@gmail.com, f.fainelli@gmail.com, ldewangan@nvidia.com, thierry.reding@gmail.com, jonathanh@nvidia.com, linux@deviqon.com Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-tegra@vger.kernel.org On Mon, 8 Mar 2021 at 18:42, Lars-Peter Clausen wrote: > > On 3/8/21 3:54 PM, Alexandru Ardelean wrote: > > The 'delay_usecs' field was handled for backwards compatibility in case > > there were some users that still configured SPI delay transfers with > > this field. > > > > They should all be removed by now. > > > > Signed-off-by: Alexandru Ardelean > > --- > > drivers/spi/spi-axi-spi-engine.c | 12 ++++-------- > > 1 file changed, 4 insertions(+), 8 deletions(-) > > > > diff --git a/drivers/spi/spi-axi-spi-engine.c b/drivers/spi/spi-axi-spi-engine.c > > index af86e6d6e16b..80c3e38f5c1b 100644 > > --- a/drivers/spi/spi-axi-spi-engine.c > > +++ b/drivers/spi/spi-axi-spi-engine.c > > @@ -170,14 +170,10 @@ static void spi_engine_gen_sleep(struct spi_engine_program *p, bool dry, > > unsigned int t; > > int delay; > > > > - if (xfer->delay_usecs) { > > - delay = xfer->delay_usecs; > > - } else { > > - delay = spi_delay_to_ns(&xfer->delay, xfer); > > - if (delay < 0) > > - return; > > - delay /= 1000; > > - } > > + delay = spi_delay_to_ns(&xfer->delay, xfer); > > + if (delay < 0) > > + return; > > Bit of a nit, but this could be `delay <= 0` and then drop the check for > `delay == 0` below. hmm, that's a bit debatable, because the `delay == 0` check comes after `delay /= 1000` ; to do what you're suggesting, it would probably need a DIV_ROUND_UP(delay, 1000) to make sure that even sub-microsecond delays don't become zero; if you're acking this suggestion i'll implement it; i'll wait a few more days to see if there are any other acks or complaints on the set before sending a V2; btw: this new spi_delay struct supports delays in microseconds, nanoseconds and clock cycles; at some point it may be interesting to use a `spi_delay_to_clk_cycles()` for this driver and other similar; > > > + delay /= 1000; > > > > if (delay == 0) > > return; > > From mboxrd@z Thu Jan 1 00:00:00 1970 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=-13.6 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=ham 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 26D7AC433E0 for ; Wed, 10 Mar 2021 07:17:09 +0000 (UTC) Received: from smtp4.osuosl.org (smtp4.osuosl.org [140.211.166.137]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id A7C7564FED for ; Wed, 10 Mar 2021 07:17:08 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org A7C7564FED Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=deviqon.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=driverdev-devel-bounces@linuxdriverproject.org Received: from localhost (localhost [127.0.0.1]) by smtp4.osuosl.org (Postfix) with ESMTP id 3FD094EC5A; Wed, 10 Mar 2021 07:17:08 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from smtp4.osuosl.org ([127.0.0.1]) by localhost (smtp4.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id yhoBnavNfGxY; Wed, 10 Mar 2021 07:17:07 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by smtp4.osuosl.org (Postfix) with ESMTP id 1821D4EC5C; Wed, 10 Mar 2021 07:17:06 +0000 (UTC) Received: from smtp3.osuosl.org (smtp3.osuosl.org [140.211.166.136]) by ash.osuosl.org (Postfix) with ESMTP id F258C1BF47E for ; Wed, 10 Mar 2021 07:17:04 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp3.osuosl.org (Postfix) with ESMTP id E1A0A6F48C for ; Wed, 10 Mar 2021 07:17:04 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Authentication-Results: smtp3.osuosl.org (amavisd-new); dkim=pass (2048-bit key) header.d=deviqon.com Received: from smtp3.osuosl.org ([127.0.0.1]) by localhost (smtp3.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id TyW6QodZfVmc for ; Wed, 10 Mar 2021 07:17:04 +0000 (UTC) X-Greylist: whitelisted by SQLgrey-1.8.0 Received: from mail-vs1-xe2e.google.com (mail-vs1-xe2e.google.com [IPv6:2607:f8b0:4864:20::e2e]) by smtp3.osuosl.org (Postfix) with ESMTPS id 1E9E86F48A for ; Wed, 10 Mar 2021 07:17:04 +0000 (UTC) Received: by mail-vs1-xe2e.google.com with SMTP id s8so8203554vsc.8 for ; Tue, 09 Mar 2021 23:17:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=deviqon.com; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=5O4bWXBCQeQuk0BdQom2dNS7Jmj8ph1wsbHk08MJAMo=; b=h1lBv7HHj122ZOQj79sUyMEcd0w5tZ5oV+JyqbEAP6IjncbQiGVy8O14kGSopZ/RBx 9v2gMNrpI9dt04NG+QIN/gmmZWg3fVjIn1tcv81o1Zn57C+4gpo/i+K6DDJGIjAYDD1d KZbwTuKJwz1WrxDTxcAVijM/GojWEq9d8mJct7JWW7QAaNeF1syI/sRvDtbi+HPObcfq 5uHQyTctmvjfVGPbz5aASZ00uqwQaJVO9XeaiinwzqpdY68XcFk8CFpmzqPAMAbdjUeH vuZGlGdUJgO/m0f2Ul4b4DUBi6I43LHxDjtkfkGsgWwGw6cEOKY5wfKkRuGxJLBAuKXt OI4A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=5O4bWXBCQeQuk0BdQom2dNS7Jmj8ph1wsbHk08MJAMo=; b=aFfcYCKTjLj0zJKtL5jxxqRicN0l/rBwDiRzoVXYEfn42W/WFp1EybxYu4VO2sQ+e/ 8tnnXohp/M3Qs9xbQKHAqa4QeNTlzfUdQIcgZOZUTA/x5bSu5Z5pfDUjebnNZRFZG47t 0Cbz7hMuY9VdwLkCmrVzDDWb4D5Lx5vvyfkaAK3ug2K9nFvuTrnhFrT5kdF2nWDE/H0g aNpijPGHM6iiZx+Wak8mflZhpc/YXiOjvN/1t0tx+0rWLE6T/hBlJ/h+aUss6qP00KmO Iq0fzi9cwViGCKKrdmxYudhXnjPJOJQ6SQPgCxTQF8Wugq39BVYGVR0HzEy9KJHt9RG+ FAlQ== X-Gm-Message-State: AOAM5319wOBevK+pqoachnL+ORijIrFwQKy8dhCB8HX5hubDcL8FZTuO yL0D1soONNQoMmVePMeBl6ia5J2BL+OadCWYuvj4oA== X-Google-Smtp-Source: ABdhPJytTW7QIOLB8UPImbCUal1chmTmNyv6Z6uRJmeRfc+N68L2N1shNta5YcuAAXSn3Da5NzDEfquDQar0GSWxbDA= X-Received: by 2002:a67:31d1:: with SMTP id x200mr972514vsx.16.1615360622918; Tue, 09 Mar 2021 23:17:02 -0800 (PST) MIME-Version: 1.0 References: <20210308145502.1075689-1-aardelean@deviqon.com> <20210308145502.1075689-2-aardelean@deviqon.com> <8a6ec9a1-71f8-ce1d-600a-66eba9244a54@metafoo.de> In-Reply-To: <8a6ec9a1-71f8-ce1d-600a-66eba9244a54@metafoo.de> From: Alexandru Ardelean Date: Wed, 10 Mar 2021 09:16:51 +0200 Message-ID: Subject: Re: [PATCH 01/10] spi: spi-axi-spi-engine: remove usage of delay_usecs To: Lars-Peter Clausen X-BeenThere: driverdev-devel@linuxdriverproject.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Linux Driver Project Developer List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: devel@driverdev.osuosl.org, elder@kernel.org, gregkh@linuxfoundation.org, ldewangan@nvidia.com, linux-kernel@vger.kernel.org, jonathanh@nvidia.com, linux-spi@vger.kernel.org, greybus-dev@lists.linaro.org, broonie@kernel.org, bcm-kernel-feedback-list@broadcom.com, vireshk@kernel.org, linux-tegra@vger.kernel.org, f.fainelli@gmail.com, johan@kernel.org, thierry.reding@gmail.com, linux@deviqon.com Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: driverdev-devel-bounces@linuxdriverproject.org Sender: "devel" On Mon, 8 Mar 2021 at 18:42, Lars-Peter Clausen wrote: > > On 3/8/21 3:54 PM, Alexandru Ardelean wrote: > > The 'delay_usecs' field was handled for backwards compatibility in case > > there were some users that still configured SPI delay transfers with > > this field. > > > > They should all be removed by now. > > > > Signed-off-by: Alexandru Ardelean > > --- > > drivers/spi/spi-axi-spi-engine.c | 12 ++++-------- > > 1 file changed, 4 insertions(+), 8 deletions(-) > > > > diff --git a/drivers/spi/spi-axi-spi-engine.c b/drivers/spi/spi-axi-spi-engine.c > > index af86e6d6e16b..80c3e38f5c1b 100644 > > --- a/drivers/spi/spi-axi-spi-engine.c > > +++ b/drivers/spi/spi-axi-spi-engine.c > > @@ -170,14 +170,10 @@ static void spi_engine_gen_sleep(struct spi_engine_program *p, bool dry, > > unsigned int t; > > int delay; > > > > - if (xfer->delay_usecs) { > > - delay = xfer->delay_usecs; > > - } else { > > - delay = spi_delay_to_ns(&xfer->delay, xfer); > > - if (delay < 0) > > - return; > > - delay /= 1000; > > - } > > + delay = spi_delay_to_ns(&xfer->delay, xfer); > > + if (delay < 0) > > + return; > > Bit of a nit, but this could be `delay <= 0` and then drop the check for > `delay == 0` below. hmm, that's a bit debatable, because the `delay == 0` check comes after `delay /= 1000` ; to do what you're suggesting, it would probably need a DIV_ROUND_UP(delay, 1000) to make sure that even sub-microsecond delays don't become zero; if you're acking this suggestion i'll implement it; i'll wait a few more days to see if there are any other acks or complaints on the set before sending a V2; btw: this new spi_delay struct supports delays in microseconds, nanoseconds and clock cycles; at some point it may be interesting to use a `spi_delay_to_clk_cycles()` for this driver and other similar; > > > + delay /= 1000; > > > > if (delay == 0) > > return; > > _______________________________________________ devel mailing list devel@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel