public inbox for linux-clk@vger.kernel.org
 help / color / mirror / Atom feed
From: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
To: Miquel Raynal <miquel.raynal@bootlin.com>
Cc: Viresh Kumar <vireshk@kernel.org>, Vinod Koul <vkoul@kernel.org>,
	Geert Uytterhoeven <geert+renesas@glider.be>,
	Magnus Damm <magnus.damm@gmail.com>,
	Michael Turquette <mturquette@baylibre.com>,
	Stephen Boyd <sboyd@kernel.org>, Rob Herring <robh+dt@kernel.org>,
	devicetree@vger.kernel.org, dmaengine@vger.kernel.org,
	linux-renesas-soc@vger.kernel.org, linux-clk@vger.kernel.org,
	Thomas Petazzoni <thomas.petazzoni@bootlin.com>,
	Milan Stevanovic <milan.stevanovic@se.com>,
	Jimmy Lalande <jimmy.lalande@se.com>,
	Laetitia MARIOTTINI <laetitia.mariottini@se.com>,
	Phil Edworthy <phil.edworthy@renesas.com>
Subject: Re: [PATCH 5/8] dma: dw: Avoid partial transfers
Date: Sun, 20 Feb 2022 12:49:47 +0200	[thread overview]
Message-ID: <YhIcyyBp53LnMbjU@smile.fi.intel.com> (raw)
In-Reply-To: <20220218181226.431098-6-miquel.raynal@bootlin.com>

On Fri, Feb 18, 2022 at 07:12:23PM +0100, Miquel Raynal wrote:
> From: Phil Edworthy <phil.edworthy@renesas.com>
> 
> Pausing a partial transfer only causes data to be written to mem that is
> a multiple of the memory width setting.
> 
> However, when a DMA client driver finishes DMA early, e.g. due to UART
> char timeout interrupt, all data read from the DEV must be written to MEM.
> 
> Therefore, allow the slave to limit the memory width to ensure all data
> read from the DEV is written to MEM when DMA is paused.

Is this a fix?
What happens to the data if you don't do this?
As far as I understood the Synopsys DesignWare specification the DMA controller
is capable of flushing FIFO in that case on byte-by-byte basis. Do you have an
HW integration bug?

TL;DR: tell us more about this.

...

> +		if (sconfig->dst_addr_width && sconfig->dst_addr_width < data_width)
> +			data_width = sconfig->dst_addr_width;

But here no check that you do it for explicitly peripheral to memory, so this
will affect memory to peripheral transfers as well.


-- 
With Best Regards,
Andy Shevchenko



  reply	other threads:[~2022-02-20 10:50 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-02-18 18:12 [PATCH 0/8] RZN1 DMA support Miquel Raynal
2022-02-18 18:12 ` [PATCH 1/8] dt-bindings: dma: Introduce RZN1 dmamux bindings Miquel Raynal
2022-02-18 18:12 ` [PATCH 2/8] dt-bindings: dma: Introduce RZN1 DMA compatible Miquel Raynal
2022-02-21  2:36   ` Rob Herring
2022-02-21 14:24     ` Miquel Raynal
2022-02-18 18:12 ` [PATCH 3/8] soc: renesas: rzn1-sysc: Export function to set dmamux Miquel Raynal
2022-02-20 18:16   ` kernel test robot
2022-02-20 19:28   ` kernel test robot
2022-02-21  9:16   ` Geert Uytterhoeven
2022-02-21 15:01     ` Miquel Raynal
2022-02-25 18:32   ` Rob Herring
2022-02-27 14:09     ` Miquel Raynal
2022-02-18 18:12 ` [PATCH 4/8] dma: dmamux: Introduce RZN1 DMA router support Miquel Raynal
2022-02-20 10:56   ` Andy Shevchenko
2022-02-21 15:13     ` Miquel Raynal
2022-02-21 16:47       ` Andy Shevchenko
2022-02-20 21:22   ` kernel test robot
2022-02-21  4:15   ` kernel test robot
2022-02-18 18:12 ` [PATCH 5/8] dma: dw: Avoid partial transfers Miquel Raynal
2022-02-20 10:49   ` Andy Shevchenko [this message]
2022-02-21  8:14     ` Phil Edworthy
2022-02-21 12:59       ` Miquel Raynal
2022-02-21 16:52       ` Andy Shevchenko
2022-02-23  7:45         ` Phil Edworthy
2022-02-23  8:01           ` Phil Edworthy
2022-02-23 13:38             ` Andy Shevchenko
2022-02-18 18:12 ` [PATCH 6/8] dma: dw: Add RZN1 compatible Miquel Raynal
2022-02-18 18:12 ` [PATCH 7/8] ARM: dts: r9a06g032: Add the two DMA nodes Miquel Raynal
2022-02-18 18:12 ` [PATCH 8/8] ARM: dts: r9a06g032: Describe the DMA router Miquel Raynal

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=YhIcyyBp53LnMbjU@smile.fi.intel.com \
    --to=andriy.shevchenko@linux.intel.com \
    --cc=devicetree@vger.kernel.org \
    --cc=dmaengine@vger.kernel.org \
    --cc=geert+renesas@glider.be \
    --cc=jimmy.lalande@se.com \
    --cc=laetitia.mariottini@se.com \
    --cc=linux-clk@vger.kernel.org \
    --cc=linux-renesas-soc@vger.kernel.org \
    --cc=magnus.damm@gmail.com \
    --cc=milan.stevanovic@se.com \
    --cc=miquel.raynal@bootlin.com \
    --cc=mturquette@baylibre.com \
    --cc=phil.edworthy@renesas.com \
    --cc=robh+dt@kernel.org \
    --cc=sboyd@kernel.org \
    --cc=thomas.petazzoni@bootlin.com \
    --cc=vireshk@kernel.org \
    --cc=vkoul@kernel.org \
    /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