linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Serge Semin <Sergey.Semin@baikalelectronics.ru>
To: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Cc: Serge Semin <fancer.lancer@gmail.com>,
	Mark Brown <broonie@kernel.org>,
	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>,
	Allison Randal <allison@lohutok.net>,
	Gareth Williams <gareth.williams.jx@renesas.com>,
	Rob Herring <robh+dt@kernel.org>, <linux-mips@vger.kernel.org>,
	<devicetree@vger.kernel.org>,
	Georgy Vlasov <Georgy.Vlasov@baikalelectronics.ru>,
	Ramil Zaripov <Ramil.Zaripov@baikalelectronics.ru>,
	Jarkko Nikula <jarkko.nikula@linux.intel.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Wan Ahmad Zainie <wan.ahmad.zainie.wan.mohamad@intel.com>,
	Linus Walleij <linus.walleij@linaro.org>,
	Clement Leger <cleger@kalray.eu>, <linux-spi@vger.kernel.org>,
	<linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v2 10/19] spi: dw: Use DMA max burst to set the request thresholds
Date: Mon, 18 May 2020 15:52:53 +0300	[thread overview]
Message-ID: <20200518125253.r4fpr4mjflclqpym@mobilestation> (raw)
In-Reply-To: <20200518110343.GY1634618@smile.fi.intel.com>

On Mon, May 18, 2020 at 02:03:43PM +0300, Andy Shevchenko wrote:
> On Sat, May 16, 2020 at 11:01:33PM +0300, Serge Semin wrote:
> > On Fri, May 15, 2020 at 05:38:42PM +0300, Andy Shevchenko wrote:
> > > On Fri, May 15, 2020 at 01:47:49PM +0300, Serge Semin wrote:
> > > > Each channel of DMA controller may have a limited length of burst
> > > > transaction (number of IO operations performed at ones in a single
> > > > DMA client request). This parameter can be used to setup the most
> > > > optimal DMA Tx/Rx data level values. In order to avoid the Tx buffer
> > > > overrun we can set the DMA Tx level to be of FIFO depth minus the
> > > > maximum burst transactions length. To prevent the Rx buffer underflow
> > > > the DMA Rx level should be set to the maximum burst transactions length.
> > > > This commit setups the DMA channels and the DW SPI DMA Tx/Rx levels
> > > > in accordance with these rules.
> 
> ...
> 
> > > >  	/* DMA info */
> > > >  	struct dma_chan		*txchan;
> > > > +	u32			txburst;
> > > >  	struct dma_chan		*rxchan;
> > > > +	u32			rxburst;
> > > 
> > > Leave u32 together, it may be optimal on 64-bit architectures where ABIs require padding.
> > 
> > It's not like anyone cared about padding in this structure in the first place)
> 
> I think I have been caring (to some extend).

Well, If you have then instead of asking to rearrange just two members (which
by the way finely grouped by the Tx-Rx affiliation) why not sending a
patch, which would refactor the whole structure so to be optimal for the x64
platforms? I don't really see why this gets very important for you seeing
Mark is Ok with this. My current commit follows the common driver design
including the DW SSI data members grouping. On the second thought I'll leave
it as is then.

-Sergey

> 
> > Though if v3 is required I'll group these members together.
> 
> From what I see v3 is what Mark and me are waiting for. Mark, are we on the
> same page here?
> 
> -- 
> With Best Regards,
> Andy Shevchenko
> 
> 

  parent reply	other threads:[~2020-05-18 12:53 UTC|newest]

Thread overview: 106+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-08 13:29 [PATCH 00/17] spi: dw: Add generic DW DMA controller support Serge Semin
2020-05-08 13:29 ` [PATCH 01/17] dt-bindings: spi: Convert DW SPI binding to DT schema Serge Semin
2020-05-08 19:39   ` Andy Shevchenko
2020-05-12 20:28     ` Serge Semin
2020-05-12 20:35       ` Andy Shevchenko
2020-05-08 13:29 ` [PATCH 02/17] dt-bindings: spi: dw: Add DMA properties bindings Serge Semin
2020-05-08 13:29 ` [PATCH 04/17] spi: dw: Cleanup generic DW DMA code namings Serge Semin
2020-05-08 19:43   ` Andy Shevchenko
2020-05-12 21:26     ` Serge Semin
2020-05-12 21:37       ` Andy Shevchenko
2020-05-08 13:29 ` [PATCH 06/17] spi: dw: Add DW SPI DMA/PCI/MMIO dependency on DW SPI core Serge Semin
2020-05-08 13:29 ` [PATCH 08/17] spi: dw: Clear DMAC register when done or stopped Serge Semin
2020-05-08 17:31   ` Mark Brown
2020-05-13 11:56     ` Serge Semin
2020-05-08 13:29 ` [PATCH 09/17] spi: dw: Enable interrupts in accordance with DMA xfer mode Serge Semin
2020-05-08 13:29 ` [PATCH 10/17] spi: dw: Parameterize the DMA Rx/Tx burst length Serge Semin
2020-05-08 13:29 ` [PATCH 12/17] spi: dw: Fix dma_slave_config used partly uninitialized Serge Semin
2020-05-08 19:20   ` Andy Shevchenko
2020-05-08 13:29 ` [PATCH 13/17] spi: dw: Initialize paddr in DW SPI MMIO private data Serge Semin
2020-05-08 19:21   ` Andy Shevchenko
2020-05-13 12:30     ` Serge Semin
2020-05-08 13:33 ` [PATCH 00/17] spi: dw: Add generic DW DMA controller support Mark Brown
2020-05-12 20:07   ` Serge Semin
2020-05-13 10:23     ` Mark Brown
2020-05-13 11:04       ` Serge Semin
2020-05-13 11:21         ` Mark Brown
2020-05-13 11:42           ` Serge Semin
     [not found] ` <20200508132943.9826-8-Sergey.Semin@baikalelectronics.ru>
2020-05-08 17:30   ` [PATCH 07/17] spi: dw: Add Tx/Rx finish wait methods to DMA Mark Brown
     [not found]     ` <20200513113555.mjivjk374giopnea@mobilestation>
2020-05-13 11:36       ` Mark Brown
2020-05-08 17:36 ` [PATCH 00/17] spi: dw: Add generic DW DMA controller support Mark Brown
2020-05-08 19:16   ` Andy Shevchenko
2020-05-12 20:34     ` Serge Semin
2020-05-12 20:30   ` Serge Semin
     [not found] ` <20200508132943.9826-15-Sergey.Semin@baikalelectronics.ru>
2020-05-08 19:23   ` [PATCH 14/17] spi: dw: Add DMA support to the DW SPI MMIO driver Andy Shevchenko
     [not found] ` <20200508132943.9826-17-Sergey.Semin@baikalelectronics.ru>
2020-05-08 19:27   ` [PATCH 16/17] spi: dw: Fix Rx-only DMA transfers Andy Shevchenko
     [not found] ` <20200508132943.9826-18-Sergey.Semin@baikalelectronics.ru>
2020-05-08 19:30   ` [PATCH 17/17] spi: dw: Use regset32 DebugFS method to create a registers file Andy Shevchenko
     [not found]     ` <20200513124422.z6ctlmvipwer45q4@mobilestation>
2020-05-13 14:41       ` Andy Shevchenko
2020-05-08 19:33 ` [PATCH 00/17] spi: dw: Add generic DW DMA controller support Andy Shevchenko
     [not found] ` <20200508132943.9826-12-Sergey.Semin@baikalelectronics.ru>
2020-05-08 19:39   ` [PATCH 11/17] spi: dw: Fix native CS being unset Linus Walleij
     [not found]     ` <20200513001347.dyt357erev7vzy3l@mobilestation>
2020-05-14  8:31       ` Linus Walleij
     [not found]         ` <20200514115558.e6cqnuxqyqkysfn7@mobilestation>
2020-05-14 12:22           ` Andy Shevchenko
2020-05-14 13:03             ` Mark Brown
2020-05-14 14:35           ` Mark Brown
     [not found] ` <20200508132943.9826-4-Sergey.Semin@baikalelectronics.ru>
2020-05-08 19:41   ` [PATCH 03/17] spi: dw: Split up the generic DMA code and Intel MID driver Andy Shevchenko
     [not found] ` <20200508132943.9826-6-Sergey.Semin@baikalelectronics.ru>
2020-05-08 19:44   ` [PATCH 05/17] spi: dw: Discard static DW DMA slave structures Andy Shevchenko
2020-05-15 10:47 ` [PATCH v2 00/19] spi: dw: Add generic DW DMA controller support Serge Semin
2020-05-15 10:47   ` [PATCH v2 01/19] dt-bindings: spi: dw: Add Tx/Rx DMA properties Serge Semin
2020-05-15 11:51     ` Andy Shevchenko
2020-05-15 12:27       ` Mark Brown
2020-05-15 15:43         ` Serge Semin
2020-05-15 10:47   ` [PATCH v2 03/19] spi: dw: Clear DMAC register when done or stopped Serge Semin
2020-05-15 12:01     ` Andy Shevchenko
2020-05-15 16:42     ` Mark Brown
2020-05-15 17:21       ` Serge Semin
2020-05-15 10:47   ` [PATCH v2 05/19] spi: dw: Enable interrupts in accordance with DMA xfer mode Serge Semin
2020-05-15 12:27     ` Andy Shevchenko
2020-05-16 14:06       ` Serge Semin
2020-05-15 10:47   ` [PATCH v2 09/19] spi: dw: Parameterize the DMA Rx/Tx burst length Serge Semin
2020-05-15 14:01     ` Andy Shevchenko
     [not found]       ` <20200516143353.hw6nny5hbwgiyxfw@mobilestation>
2020-05-18 11:01         ` Andy Shevchenko
2020-05-18 12:41           ` Serge Semin
2020-05-15 10:47   ` [PATCH v2 10/19] spi: dw: Use DMA max burst to set the request thresholds Serge Semin
2020-05-15 14:38     ` Andy Shevchenko
     [not found]       ` <20200516200133.wmaqnfjbr7234fzo@mobilestation>
2020-05-18 11:03         ` Andy Shevchenko
2020-05-18 12:43           ` Mark Brown
2020-05-18 12:52           ` Serge Semin [this message]
2020-05-18 13:25             ` Andy Shevchenko
2020-05-18 13:43               ` Serge Semin
2020-05-18 14:48                 ` Andy Shevchenko
2020-05-18 14:59                   ` Serge Semin
2020-05-15 10:47   ` [PATCH v2 11/19] spi: dw: Initialize paddr in DW SPI MMIO private data Serge Semin
2020-05-15 14:39     ` Andy Shevchenko
2020-05-15 10:47   ` [PATCH v2 14/19] spi: dw: Remove DW DMA code dependency from DW_DMAC_PCI Serge Semin
2020-05-15 15:02     ` Andy Shevchenko
2020-05-15 10:47   ` [PATCH v2 15/19] spi: dw: Add DW SPI DMA/PCI/MMIO dependency on the DW SPI core Serge Semin
2020-05-15 15:03     ` Andy Shevchenko
2020-05-15 10:47   ` [PATCH v2 17/19] spi: dw: Add DMA support to the DW SPI MMIO driver Serge Semin
2020-05-15 15:08     ` Andy Shevchenko
2020-05-15 10:47   ` [PATCH v2 19/19] dt-bindings: spi: Convert DW SPI binding to DT schema Serge Semin
2020-05-16 20:59     ` Serge Semin
2020-05-15 11:49   ` [PATCH v2 00/19] spi: dw: Add generic DW DMA controller support Andy Shevchenko
2020-05-15 15:30     ` Serge Semin
     [not found]   ` <20200515104758.6934-3-Sergey.Semin@baikalelectronics.ru>
2020-05-15 12:01     ` [PATCH v2 02/19] spi: dw: Add Tx/Rx finish wait methods to the MID DMA Andy Shevchenko
2020-05-15 12:18       ` Mark Brown
2020-05-15 12:37         ` Andy Shevchenko
2020-05-15 12:41           ` Mark Brown
     [not found]             ` <20200515200250.zjsv5uaftwqcnwud@mobilestation>
2020-05-18 10:51               ` Mark Brown
     [not found]                 ` <20200518110453.w3ko5a5yzwyr73ir@mobilestation>
2020-05-18 11:11                   ` Mark Brown
     [not found]       ` <20200515194058.pmpd4wa7lw2dle3g@mobilestation>
2020-05-18 10:55         ` Andy Shevchenko
     [not found]   ` <20200515104758.6934-5-Sergey.Semin@baikalelectronics.ru>
2020-05-15 12:05     ` [PATCH v2 04/19] spi: dw: Fix native CS being unset Andy Shevchenko
     [not found]   ` <20200515104758.6934-7-Sergey.Semin@baikalelectronics.ru>
2020-05-15 12:34     ` [PATCH v2 06/19] spi: dw: Discard static DW DMA slave structures Andy Shevchenko
     [not found]       ` <20200516142030.kburieaxjg4n7c42@mobilestation>
2020-05-18 11:00         ` Andy Shevchenko
2020-05-18 11:38           ` Andy Shevchenko
     [not found]             ` <20200518123242.xoosc4pcj7heo4he@mobilestation>
2020-05-18 13:22               ` Andy Shevchenko
     [not found]   ` <20200515104758.6934-8-Sergey.Semin@baikalelectronics.ru>
2020-05-15 12:38     ` [PATCH v2 07/19] spi: dw: Discard unused void priv pointer Andy Shevchenko
     [not found]   ` <20200515104758.6934-9-Sergey.Semin@baikalelectronics.ru>
2020-05-15 13:03     ` [PATCH v2 08/19] spi: dw: Discard dma_width member of the dw_spi structure Andy Shevchenko
     [not found]       ` <20200515130559.psq2zwfhovt6rzhl@mobilestation>
2020-05-15 13:49         ` Andy Shevchenko
     [not found]           ` <20200515141627.pqdaic6wksatusl6@mobilestation>
2020-05-15 15:00             ` Andy Shevchenko
     [not found]   ` <20200515104758.6934-13-Sergey.Semin@baikalelectronics.ru>
2020-05-15 14:40     ` [PATCH v2 12/19] spi: dw: Fix Rx-only DMA transfers Andy Shevchenko
2020-05-15 16:55       ` Mark Brown
     [not found]   ` <20200515104758.6934-14-Sergey.Semin@baikalelectronics.ru>
2020-05-15 14:51     ` [PATCH v2 13/19] spi: dw: Move Non-DMA code to the DW PCIe-SPI driver Andy Shevchenko
     [not found]       ` <20200516201724.7q5uhxmzpr6xjooj@mobilestation>
     [not found]         ` <20200518125850.jnhaqlr2ticu3ivs@mobilestation>
2020-05-18 13:00           ` Mark Brown
     [not found]   ` <20200515104758.6934-19-Sergey.Semin@baikalelectronics.ru>
2020-05-15 15:10     ` [PATCH v2 18/19] spi: dw: Use regset32 DebugFS method to create regdump file Andy Shevchenko
     [not found]       ` <20200516204634.td52orxfnh7iewg6@mobilestation>
2020-05-18 11:18         ` Andy Shevchenko
     [not found]           ` <20200518140825.jnkfpybxnwq7fx2m@mobilestation>
2020-05-18 15:06             ` Andy Shevchenko
2020-05-15 18:21   ` [PATCH v2 00/19] spi: dw: Add generic DW DMA controller support Mark Brown

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=20200518125253.r4fpr4mjflclqpym@mobilestation \
    --to=sergey.semin@baikalelectronics.ru \
    --cc=Alexey.Malahov@baikalelectronics.ru \
    --cc=Georgy.Vlasov@baikalelectronics.ru \
    --cc=Ramil.Zaripov@baikalelectronics.ru \
    --cc=allison@lohutok.net \
    --cc=andriy.shevchenko@linux.intel.com \
    --cc=arnd@arndb.de \
    --cc=broonie@kernel.org \
    --cc=cleger@kalray.eu \
    --cc=devicetree@vger.kernel.org \
    --cc=fancer.lancer@gmail.com \
    --cc=gareth.williams.jx@renesas.com \
    --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=wan.ahmad.zainie.wan.mohamad@intel.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).