Skip to content

Conversation

@mcuxted
Copy link
Contributor

@mcuxted mcuxted commented Dec 2, 2025

  1. Remove DMA_MCUX_EDMA_V5 configuration.
  2. Add dmamux support with edma.
  3. Add mcxe31b edma support.
  4. Enable MCXE31B dma_loop_transfer case.
    Test Result:
    `Running TESTSUITE dma_m2m_loop

===================================================================

START - test_tst_dma0_m2m_loop

DMA memory to memory transfer started

Preparing DMA Controller: edma@20c000

Starting the transfer on channel 0 and waiting for 1 second

Each RX buffer should contain the full TX buffer string.

RX data Loop 0

RX data Loop 1

RX data Loop 2

RX data Loop 3

Finished DMA: edma@20c000

PASS - test_tst_dma0_m2m_loop in 0.275 seconds

===================================================================

START - test_tst_dma0_m2m_loop_repeated_start_stop

DMA memory to memory transfer started

Preparing DMA Controller

Starting the transfer on channel 0 and waiting for 1 second

Each RX buffer should contain the full TX buffer string.

RX data Loop 0

RX data Loop 1

RX data Loop 2

RX data Loop 3

Finished: DMA

PASS - test_tst_dma0_m2m_loop_repeated_start_stop in 0.273 seconds

===================================================================

START - test_tst_dma0_m2m_loop_suspend_resume

DMA memory to memory transfer started

Preparing DMA Controller: edma@20c000

Starting the transfer on channel 0 and waiting for 1 second

suspended after 0 transfers occurred

resuming after 0 transfers occurred

Resumed transfers

Transfer count 4

Each RX buffer should contain the full TX buffer string.

RX data Loop 0

RX data Loop 1

RX data Loop 2

RX data Loop 3

Finished DMA: edma@20c000

PASS - test_tst_dma0_m2m_loop_suspend_resume in 0.535 seconds

===================================================================

TESTSUITE dma_m2m_loop succeeded

------ TESTSUITE SUMMARY START ------

SUITE PASS - 100.00% [dma_m2m_loop]: pass = 3, fail = 0, skip = 0, total = 3 duration = 1.083 seconds

  • PASS - [dma_m2m_loop.test_tst_dma0_m2m_loop] duration = 0.275 seconds

  • PASS - [dma_m2m_loop.test_tst_dma0_m2m_loop_repeated_start_stop] duration = 0.273 seconds

  • PASS - [dma_m2m_loop.test_tst_dma0_m2m_loop_suspend_resume] duration = 0.535 seconds

------ TESTSUITE SUMMARY END ------

===================================================================

PROJECT EXECUTION SUCCESSFUL
`

@mcuxted mcuxted force-pushed the add_mcxe31b_edma_support branch from 5c880e3 to 4c5bb30 Compare December 30, 2025 09:45
@mcuxted mcuxted force-pushed the add_mcxe31b_edma_support branch 2 times, most recently from 4f0a8a2 to 9a5e09f Compare December 30, 2025 10:00
@mcuxted
Copy link
Contributor Author

mcuxted commented Jan 6, 2026

Does anyone have any other suggestions regarding this EDMA patch? Can we approve and merge this PR?

@mcuxted mcuxted force-pushed the add_mcxe31b_edma_support branch from 9a5e09f to 2a1e6d3 Compare January 7, 2026 05:31
@zephyrbot zephyrbot added the area: Devicetree Binding PR modifies or adds a Device Tree binding label Jan 7, 2026
@mcuxted mcuxted force-pushed the add_mcxe31b_edma_support branch from 2a1e6d3 to 2b24ca0 Compare January 7, 2026 06:48
DMA
===

* Removed ``DMA_MCUX_EDMA_V5`` (:github:`100341`). This macro previously distinguished between
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

use ":kconfig:option:CONFIG_DMA_MCUX_EDMA_V5", it is a kconfig option.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done

@mcuxted mcuxted force-pushed the add_mcxe31b_edma_support branch from 2b24ca0 to d62d5eb Compare January 8, 2026 07:53
zejiang0jason
zejiang0jason previously approved these changes Jan 8, 2026
ZhaoxiangJin
ZhaoxiangJin previously approved these changes Jan 8, 2026
Holt-Sun
Holt-Sun previously approved these changes Jan 8, 2026
The DMA_MCUX_EDMA_V5 configuration option has been removed and replaced
with DMA_MCUX_EDMA_V4, as both versions share the same register layout
and can use the same driver implementation.

Key changes:
- Remove CONFIG_DMA_MCUX_EDMA_V5 Kconfig option
- Replace DMA_MCUX_EDMA_V5 conditionals with DMA_MCUX_EDMA_V4
- Remove DMAx_Type typedef, use DMA_Type directly
- Update EDMA_HW_TCD macros for V4 to use HAL-provided accessor macros
- Add DMA_MCUX_EDMA_DMAMUX Kconfig option to control DMAMUX support
  based on device tree property
- Update device tree binding to add has-dmamux property
- Update HAL driver selection to use DMA_MCUX_EDMA_DMAMUX instead of
  DMA_MCUX_EDMA for DMAMUX component
- Add SOC_SERIES_MCXE31X to DMA_MCUX_TEST_SLOT_START configuration
- Calculate DMA_TCD_ALIGN_SIZE from edma_tcd_t structure size

Signed-off-by: Qiang Zhang <[email protected]>
Update EDMA device tree nodes for NXP MCXE31B platforms to align
with the unified EDMA driver implementation.

Signed-off-by: Qiang Zhang <[email protected]>
Add pinctrl configuration and DMA channel assignments for LPUART2
on the FRDM-MCXE31B board.

Signed-off-by: Qiang Zhang <[email protected]>
Add board-specific configuration and overlay files to enable DMA
testing on the FRDM-MCXE31B board.

Signed-off-by: Qiang Zhang <[email protected]>
Add board-specific overlay file to enable UART async API testing on the
FRDM-MCXE31B board.

Signed-off-by: Qiang Zhang <[email protected]>
Add migration guide entry for the removal of CONFIG_DMA_MCUX_EDMA_V5
configuration option.

Signed-off-by: Qiang Zhang <[email protected]>
@mcuxted mcuxted force-pushed the add_mcxe31b_edma_support branch from 0484b2c to e7d16c3 Compare January 14, 2026 05:10
@sonarqubecloud
Copy link

@MaureenHelm MaureenHelm merged commit 22e754c into zephyrproject-rtos:main Jan 14, 2026
29 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area: Boards/SoCs area: Devicetree Binding PR modifies or adds a Device Tree binding area: Devicetree Bindings area: DMA Direct Memory Access area: Tests Issues related to a particular existing or missing test area: UART Universal Asynchronous Receiver-Transmitter platform: NXP MCU platform: NXP MPU platform: NXP NXP Release Notes To be mentioned in the release notes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

10 participants