Skip to content

Commit 84929c8

Browse files
Martinhoff-makergellhaar
authored andcommitted
drivers: dma: Add initial support for silabs LDMA
Initial support of silabs LDMA using hal library em_ldma. Signed-off-by: Martin Hoff <[email protected]>
1 parent 2151207 commit 84929c8

File tree

4 files changed

+552
-0
lines changed

4 files changed

+552
-0
lines changed

drivers/dma/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ zephyr_library_sources_ifdef(CONFIG_MCUX_PXP dma_mcux_pxp.c)
3737
zephyr_library_sources_ifdef(CONFIG_DMA_MCUX_SMARTDMA dma_mcux_smartdma.c)
3838
zephyr_library_sources_ifdef(CONFIG_DMA_ANDES_ATCDMAC300 dma_andes_atcdmac300.c)
3939
zephyr_library_sources_ifdef(CONFIG_DMA_SEDI dma_sedi.c)
40+
zephyr_library_sources_ifdef(CONFIG_DMA_SILABS_LDMA dma_silabs_ldma.c)
4041
zephyr_library_sources_ifdef(CONFIG_DMA_SMARTBOND dma_smartbond.c)
4142
zephyr_library_sources_ifdef(CONFIG_DMA_NXP_SOF_HOST_DMA dma_nxp_sof_host_dma.c)
4243
zephyr_library_sources_ifdef(CONFIG_DMA_EMUL dma_emul.c)

drivers/dma/Kconfig

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,8 @@ source "drivers/dma/Kconfig.andes_atcdmac300"
6868

6969
source "drivers/dma/Kconfig.sedi"
7070

71+
source "drivers/dma/Kconfig.silabs"
72+
7173
source "drivers/dma/Kconfig.smartbond"
7274

7375
source "drivers/dma/Kconfig.nxp_sof_host_dma"

drivers/dma/Kconfig.silabs

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
# Copyright (c) 2024 Silicon-labs
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
config DMA_SILABS_LDMA
5+
bool "Silabs DMA driver"
6+
default y
7+
select SYS_MEM_BLOCKS
8+
select SOC_GECKO_LDMA
9+
depends on DT_HAS_SILABS_LDMA_ENABLED
10+
help
11+
Driver for Silabs DMA.
12+
13+
if DMA_SILABS_LDMA
14+
15+
config DMA_MAX_DESCRIPTOR
16+
int "Max Number of block_config (LDMA_Descriptor)"
17+
default 8
18+
help
19+
Max Number of block_config (LDMA_Descriptor)
20+
21+
endif

0 commit comments

Comments
 (0)