-
Notifications
You must be signed in to change notification settings - Fork 8k
Enabling DMA Support for frdm_mcxw7x #91869
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Enabling DMA Support for frdm_mcxw7x #91869
Conversation
7043218
to
8fb1415
Compare
|
8fb1415
to
22d8690
Compare
90c083d
to
2cdd5f9
Compare
re-assigned to platform owner, no changes to DMA API in PR, all soc, dts, and driver changes from what I can tell. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
Enables DMA support for the frdm_mcxw7x family of boards by implementing EDMA v3 controller support and adding necessary board configurations.
- Adds EDMA device tree node to nxp_mcxw7x_common.dtsi with DMA channel and request configurations
- Enables DMA support in board YAML files and device tree overlays for frdm_mcxw71 and frdm_mcxw72
- Implements EDMA v3-specific configuration and handling in the DMA driver, including memory-to-memory transfer support without DMAMUX
Reviewed Changes
Copilot reviewed 12 out of 12 changed files in this pull request and generated 3 comments.
Show a summary per file
File | Description |
---|---|
dts/arm/nxp/nxp_mcxw7x_common.dtsi | Adds EDMA controller node and DMA properties to UART nodes |
boards/nxp/frdm_mcxw72/frdm_mcxw72_mcxw727c_cpu0.yaml | Adds DMA to supported features list |
boards/nxp/frdm_mcxw72/frdm_mcxw72_mcxw727c_cpu0.dts | Enables EDMA controller |
boards/nxp/frdm_mcxw71/frdm_mcxw71.yaml | Adds DMA to supported features list |
boards/nxp/frdm_mcxw71/frdm_mcxw71.dts | Enables EDMA controller |
soc/nxp/mcx/mcxw/soc.c | Adds clock initialization for DMA controller |
drivers/dma/dma_mcux_edma.c | Refactors driver to support EDMA v3 without DMAMUX |
include/zephyr/dt-bindings/clock/scg_k4.h | Adds EDMA clock definition |
modules/hal_nxp/mcux/mcux-sdk-ng/drivers/drivers.cmake | Updates build configuration for MCXW family |
tests/drivers/dma/loop_transfer/boards/ | Adds test overlay files for new boards |
tests/drivers/uart/uart_async_api/testcase.yaml | Adds test configuration for frdm_mcxw72 |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
You can also share your feedback on Copilot code review for a chance to win a $100 gift card. Take the survey.
5c5ad8a
to
0a764df
Compare
This comment was marked as duplicate.
This comment was marked as duplicate.
0a764df
to
39657dc
Compare
39657dc
to
dd15029
Compare
|
tests/drivers/uart/uart_async_api/drivers.uart.async_api.lpuart test failure which is OK in mainline. and
|
@EmilioCBen please address Hakes issue |
I am not seeing these build failures, with |
Split this function up even more Signed-off-by: Declan Snyder <[email protected]>
Support EDMAv3 platform that do not have dmamux or always on capability. Therefore, memory to memory transfer is limited in this environment. Signed-off-by: Declan Snyder <[email protected]> Co-authored-by: Emilio Benavente <[email protected]>
Add DMA nodes for MCXW7X SOC DTS. This SOC used TRIGMUX instead of DMAMUX. Enable EDMAv3 for the frdm_mcxw71 and frdm_mcxw72 platforms. Signed-off-by: Emilio Benavente <[email protected]> Co-authored-by: Declan Snyder <[email protected]>
dd15029
to
e243beb
Compare
rebased, fixed conflict, added mcxw71 overlay to test @hakehuang i cannot get uart async test to pass on main with other platform mcxa153, so I am thinking there is something wrong with the uart driver or test, are you able to get any lpuart platform on main passing ? |
|
below is the failure platform. rt5/6xx is due to the mpu region issues, frdm_ke17z512 and lpc55 series are due to board design issue. I send you the full report.
|
- platform:frdm_mcxn236/mcxn236:"DTC_OVERLAY_FILE=nxp/dut_flexcomm2_lpuart2.overlay" | ||
- platform:frdm_mcxn947/mcxn947/cpu0:"DTC_OVERLAY_FILE=nxp/dut_flexcomm2_lpuart2.overlay" | ||
- platform:frdm_mcxn947/mcxn947/cpu0/qspi:"DTC_OVERLAY_FILE=nxp/dut_flexcomm2_lpuart2.overlay" | ||
- platform:frdm_mcxw72/mcxw727c/cpu0:"DTC_OVERLAY_FILE=nxp/dut_lpuart1.overlay" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would recommend to add dut_lpuart0_loopback.overlay, change from ut_lpuart0_loopback.overlay, as lpuart ip has a internal loopback. no need to fly wire. and in frdm_mcxw72, lpuart1 is reused with can and used by mculink as uart interface.
- platform:frdm_mcxn947/mcxn947/cpu0:"DTC_OVERLAY_FILE=nxp/dut_flexcomm2_lpuart2.overlay" | ||
- platform:frdm_mcxn947/mcxn947/cpu0/qspi:"DTC_OVERLAY_FILE=nxp/dut_flexcomm2_lpuart2.overlay" | ||
- platform:frdm_mcxw72/mcxw727c/cpu0:"DTC_OVERLAY_FILE=nxp/dut_lpuart1.overlay" | ||
- platform:frdm_mcxw71/mcxw716c:"DTC_OVERLAY_FILE=nxp/dut_lpuart1.overlay" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
for frdm_mcxw71 we can not use lpuart1, as this is used as default uart, we need use lpuart0 with loopback mode
dut_lpuart0_loopback.overlay
Enabling DMA Support for frdm_mcxw7x