From: Amelie Delaunay <amelie.delaunay@foss.st.com>
To: Vinod Koul <vkoul@kernel.org>, Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
Maxime Coquelin <mcoquelin.stm32@gmail.com>,
Alexandre Torgue <alexandre.torgue@foss.st.com>
Cc: <dmaengine@vger.kernel.org>,
<linux-stm32@st-md-mailman.stormreply.com>,
<devicetree@vger.kernel.org>,
<linux-arm-kernel@lists.infradead.org>,
<linux-kernel@vger.kernel.org>,
Amelie Delaunay <amelie.delaunay@foss.st.com>
Subject: [PATCH v3 0/9] STM32 DMA3 updates for STM32MP25
Date: Wed, 16 Oct 2024 14:39:52 +0200 [thread overview]
Message-ID: <20241016-dma3-mp25-updates-v3-0-8311fe6f228d@foss.st.com> (raw)
The HW version of STM32 DMA3 inside STM32MP25 requires some tunings to
meet the needs of the interconnect. This series adds the linked list
refactoring feature to have optimal performance when addressing the
memory, and it adds the use of two new bits in the third cell specifying
the DMA transfer requirements:
- bit[16] to prevent packing/unpacking mode to avoid bytes loss in case
of interrupting an ongoing transfer (e.g. UART RX),
- bit[17] to prevent linked-list refactoring because some peripherals
(e.g. FMC ECC) require a one-shot transfer, they trigger the DMA only
once.
It also adds platform data to clamp the burst length on AXI port,
especially when it is interconnected to AXI3 bus, such as on STM32MP25.
Finally this series also contains STM32MP25 device tree updates, to add
DMA support on SPI, I2C, UART and apply the tunings introduced.
Signed-off-by: Amelie Delaunay <amelie.delaunay@foss.st.com>
---
Changes in v3:
- Refine commit description of patch 4 about preventing
additionnal transfers, as per Rob's suggestion.
- Link to v2: https://lore.kernel.org/r/20241015-dma3-mp25-updates-v2-0-b63e21556ec8@foss.st.com
Changes in v2:
- Reword commit title/message/content of patch 4 about preventing
additionnal transfers, as per Rob's suggestion
- Rework AXI maximum burst length management using SoC specific
compatible, as pointed out by Rob
- Drop former patches 6 and 8, which are no longer relevant
- Link to v1: https://lore.kernel.org/r/20241010-dma3-mp25-updates-v1-0-adf0633981ea@foss.st.com
---
Amelie Delaunay (9):
dt-bindings: dma: stm32-dma3: prevent packing/unpacking mode
dmaengine: stm32-dma3: prevent pack/unpack thanks to DT configuration
dmaengine: stm32-dma3: refactor HW linked-list to optimize memory accesses
dt-bindings: dma: stm32-dma3: prevent additional transfers
dmaengine: stm32-dma3: prevent LL refactoring thanks to DT configuration
dmaengine: stm32-dma3: clamp AXI burst using match data
arm64: dts: st: add DMA support on U(S)ART instances of stm32mp25
arm64: dts: st: add DMA support on I2C instances of stm32mp25
arm64: dts: st: add DMA support on SPI instances of stm32mp25
.../bindings/dma/stm32/st,stm32-dma3.yaml | 6 ++
arch/arm64/boot/dts/st/stm32mp251.dtsi | 75 +++++++++++++
arch/arm64/boot/dts/st/stm32mp257f-ev1.dts | 2 +
drivers/dma/stm32/stm32-dma3.c | 119 +++++++++++++++++----
4 files changed, 182 insertions(+), 20 deletions(-)
---
base-commit: 76355c25e4f71ee4667ebaadd9faf8ec29d18f23
change-id: 20241015-dma3-mp25-updates-d7f26753b0dd
Best regards,
--
Amelie Delaunay <amelie.delaunay@foss.st.com>
next reply other threads:[~2024-10-16 12:52 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-16 12:39 Amelie Delaunay [this message]
2024-10-16 12:39 ` [PATCH v3 1/9] dt-bindings: dma: stm32-dma3: prevent packing/unpacking mode Amelie Delaunay
2024-10-16 12:39 ` [PATCH v3 2/9] dmaengine: stm32-dma3: prevent pack/unpack thanks to DT configuration Amelie Delaunay
2024-10-16 12:39 ` [PATCH v3 3/9] dmaengine: stm32-dma3: refactor HW linked-list to optimize memory accesses Amelie Delaunay
2024-10-16 12:39 ` [PATCH v3 4/9] dt-bindings: dma: stm32-dma3: prevent additional transfers Amelie Delaunay
2024-10-16 17:33 ` Rob Herring (Arm)
2024-10-16 12:39 ` [PATCH v3 5/9] dmaengine: stm32-dma3: prevent LL refactoring thanks to DT configuration Amelie Delaunay
2024-10-16 12:39 ` [PATCH v3 6/9] dmaengine: stm32-dma3: clamp AXI burst using match data Amelie Delaunay
2024-10-16 12:39 ` [PATCH v3 7/9] arm64: dts: st: add DMA support on U(S)ART instances of stm32mp25 Amelie Delaunay
2024-10-16 12:40 ` [PATCH v3 8/9] arm64: dts: st: add DMA support on I2C " Amelie Delaunay
2024-10-16 12:40 ` [PATCH v3 9/9] arm64: dts: st: add DMA support on SPI " Amelie Delaunay
2024-10-22 5:32 ` (subset) [PATCH v3 0/9] STM32 DMA3 updates for STM32MP25 Vinod Koul
2024-10-29 16:09 ` Alexandre TORGUE
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=20241016-dma3-mp25-updates-v3-0-8311fe6f228d@foss.st.com \
--to=amelie.delaunay@foss.st.com \
--cc=alexandre.torgue@foss.st.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=dmaengine@vger.kernel.org \
--cc=krzk+dt@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-stm32@st-md-mailman.stormreply.com \
--cc=mcoquelin.stm32@gmail.com \
--cc=robh@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;
as well as URLs for NNTP newsgroup(s).