Skip to content
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

drivers: dma: Introduce driver for NXP's eDMA IP #65671

Merged
merged 2 commits into from
Jan 23, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions drivers/dma/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -39,3 +39,4 @@ zephyr_library_sources_ifdef(CONFIG_DMA_SEDI dma_sedi.c)
zephyr_library_sources_ifdef(CONFIG_DMA_SMARTBOND dma_smartbond.c)
zephyr_library_sources_ifdef(CONFIG_DMA_NXP_SOF_HOST_DMA dma_nxp_sof_host_dma.c)
zephyr_library_sources_ifdef(CONFIG_DMA_EMUL dma_emul.c)
zephyr_library_sources_ifdef(CONFIG_DMA_NXP_EDMA dma_nxp_edma.c)
2 changes: 2 additions & 0 deletions drivers/dma/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -74,4 +74,6 @@ source "drivers/dma/Kconfig.nxp_sof_host_dma"

source "drivers/dma/Kconfig.emul"

source "drivers/dma/Kconfig.nxp_edma"

endif # DMA
34 changes: 34 additions & 0 deletions drivers/dma/Kconfig.nxp_edma
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
# Copyright 2024 NXP
# SPDX-License-Identifier: Apache-2.0

config DMA_NXP_EDMA
bool "NXP enhanced Direct Memory Access (eDMA) driver"
default y
depends on DT_HAS_NXP_EDMA_ENABLED
help
Enable driver for NXP's eDMA IP.

if DMA_NXP_EDMA

config DMA_NXP_EDMA_ALIGN
int "Alignment (in bytes) required for the transfers"
default 8
help
Use this to set the alignment (in bytes)
used by entities employing this driver to
adjust the addresses and sizes of the memory
regions involved in the transfer process.
This value needs to match one of the possible
values for SSIZE and DSIZE, otherwise the
driver will return an error upon configuration.

config DMA_NXP_EDMA_ENABLE_HALFMAJOR_IRQ
bool "Set if CPU should be interrupted when CITER = BITER / 2"
default n
help
Enable this configuration if the CPU should be
interrupted when CITER = BITER / 2. Using this,
the CPU will be interrupted when CITER = BITER and
when CITER = BITER / 2.

endif # DMA_NXP_EDMA
Loading
Loading