linux-mips.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Mark Brown <broonie@kernel.org>
To: Serge Semin <fancer.lancer@gmail.com>
Cc: Serge Semin <Sergey.Semin@baikalelectronics.ru>,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	Vinod Koul <vkoul@kernel.org>, Feng Tang <feng.tang@intel.com>,
	Grant Likely <grant.likely@secretlab.ca>,
	Georgy Vlasov <Georgy.Vlasov@baikalelectronics.ru>,
	Ramil Zaripov <Ramil.Zaripov@baikalelectronics.ru>,
	Alexey Malahov <Alexey.Malahov@baikalelectronics.ru>,
	Thomas Bogendoerfer <tsbogend@alpha.franken.de>,
	Paul Burton <paulburton@kernel.org>,
	Ralf Baechle <ralf@linux-mips.org>, Arnd Bergmann <arnd@arndb.de>,
	Rob Herring <robh+dt@kernel.org>,
	linux-mips@vger.kernel.org, devicetree@vger.kernel.org,
	Wan Ahmad Zainie <wan.ahmad.zainie.wan.mohamad@intel.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Jarkko Nikula <jarkko.nikula@linux.intel.com>,
	"wuxu.wu" <wuxu.wu@huawei.com>, Clement Leger <cleger@kalray.eu>,
	Linus Walleij <linus.walleij@linaro.org>,
	linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v4 01/16] spi: dw: Add Tx/Rx finish wait methods to the MID DMA
Date: Mon, 25 May 2020 12:41:32 +0100	[thread overview]
Message-ID: <20200525114132.GC4544@sirena.org.uk> (raw)
In-Reply-To: <20200523083410.3qarkfkwsmodvxwk@mobilestation>

[-- Attachment #1: Type: text/plain, Size: 1784 bytes --]

On Sat, May 23, 2020 at 11:34:10AM +0300, Serge Semin wrote:
> On Fri, May 22, 2020 at 04:22:41PM +0100, Mark Brown wrote:

> > Right, that definitely needs to be fixed then - 8MHz is indeed a totally
> > normal clock rate for SPI so people will hit it.  I guess if there's a
> > noticable performance hit to defer to thread then we could implement
> > both and look at how long the delay is going to be to decide which to
> > use, that's annoyingly complicated though so if the overhead is small
> > enough we could just not bother.

> As I suggested before we can implement a solution without performance drop.
> Just wait for the DMA completion locally in the dw_spi_dma_transfer() method and
> return 0 instead of 1 from the transfer_one() callback. In that function we'll
> wait while DMA finishes its business, after that we can check the Tx/Rx FIFO
> emptiness and wait for the data to be completely transferred with delays or
> sleeps or whatever.

No extra context switches there at least, that's the main issue.

> NOTE Currently the DW APB SSI driver doesn't set xfer->effective_speed_hz, though as
> far as I can see that field exists there to be initialized by the SPI controller
> driver, right? If so, strange it isn't done in any SPI drivers...

Yes.  Not that many people are concerned about the exact timing it turns
out, the work that was being used for never fully made it upstream.

> What do think about this?

Sure.

> patchset "spi: dw: Add generic DW DMA controller support" (it's being under
> review in this email thread) ? Anyway, if the fixup is getting to be that
> complicated, will it have to be backported to another stable kernels?

No, if it's too invasive it shouldn't be (though the stable people might
decide they want it anyway these days :/ ).

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

  reply	other threads:[~2020-05-25 11:41 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-22  0:07 [PATCH v4 00/16] spi: dw: Add generic DW DMA controller support Serge Semin
2020-05-22  0:07 ` [PATCH v4 02/16] spi: dw: Enable interrupts in accordance with DMA xfer mode Serge Semin
2020-05-22  0:07 ` [PATCH v4 04/16] spi: dw: Discard unused void priv pointer Serge Semin
2020-05-22  0:07 ` [PATCH v4 06/16] spi: dw: Parameterize the DMA Rx/Tx burst length Serge Semin
2020-05-22 11:06   ` Andy Shevchenko
2020-05-22  0:07 ` [PATCH v4 07/16] spi: dw: Use DMA max burst to set the request thresholds Serge Semin
2020-05-22  0:08 ` [PATCH v4 11/16] spi: dw: Remove DW DMA code dependency from DW_DMAC_PCI Serge Semin
2020-05-22  0:08 ` [PATCH v4 12/16] spi: dw: Add DW SPI DMA/PCI/MMIO dependency on the DW SPI core Serge Semin
2020-05-22 11:07   ` Andy Shevchenko
2020-05-22 11:08     ` Andy Shevchenko
2020-05-22  0:08 ` [PATCH v4 14/16] spi: dw: Add DMA support to the DW SPI MMIO driver Serge Semin
2020-05-22  0:08 ` [PATCH v4 16/16] dt-bindings: spi: Convert DW SPI binding to DT schema Serge Semin
2020-05-28 23:28   ` Rob Herring
     [not found] ` <20200522000806.7381-2-Sergey.Semin@baikalelectronics.ru>
2020-05-22 11:13   ` [PATCH v4 01/16] spi: dw: Add Tx/Rx finish wait methods to the MID DMA Andy Shevchenko
     [not found]     ` <20200522115235.rt3ay7lveimrgooa@mobilestation>
2020-05-22 12:10       ` Mark Brown
2020-05-22 12:12       ` Andy Shevchenko
2020-05-22 12:18         ` Mark Brown
2020-05-22 12:34           ` Andy Shevchenko
     [not found]             ` <20200522124406.co7gmteojfsooerc@mobilestation>
     [not found]               ` <20200522131013.GH5801@sirena.org.uk>
     [not found]                 ` <20200522132742.taf2ixfjpyd5u3dt@mobilestation>
     [not found]                   ` <20200522140025.bmd6bhpjjk5msvsm@mobilestation>
2020-05-22 14:36                     ` Andy Shevchenko
     [not found]                       ` <20200522144542.brhibh453wid2d6v@mobilestation>
2020-05-22 15:22                         ` Mark Brown
2020-05-23  8:34                           ` Serge Semin
2020-05-25 11:41                             ` Mark Brown [this message]
2020-05-25 21:36                               ` Serge Semin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200525114132.GC4544@sirena.org.uk \
    --to=broonie@kernel.org \
    --cc=Alexey.Malahov@baikalelectronics.ru \
    --cc=Georgy.Vlasov@baikalelectronics.ru \
    --cc=Ramil.Zaripov@baikalelectronics.ru \
    --cc=Sergey.Semin@baikalelectronics.ru \
    --cc=andriy.shevchenko@linux.intel.com \
    --cc=arnd@arndb.de \
    --cc=cleger@kalray.eu \
    --cc=devicetree@vger.kernel.org \
    --cc=fancer.lancer@gmail.com \
    --cc=feng.tang@intel.com \
    --cc=grant.likely@secretlab.ca \
    --cc=jarkko.nikula@linux.intel.com \
    --cc=linus.walleij@linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mips@vger.kernel.org \
    --cc=linux-spi@vger.kernel.org \
    --cc=paulburton@kernel.org \
    --cc=ralf@linux-mips.org \
    --cc=robh+dt@kernel.org \
    --cc=tglx@linutronix.de \
    --cc=tsbogend@alpha.franken.de \
    --cc=vkoul@kernel.org \
    --cc=wan.ahmad.zainie.wan.mohamad@intel.com \
    --cc=wuxu.wu@huawei.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).