Skip to content

Commit

Permalink
soc: silabs: efr32xg23: add DMA support
Browse files Browse the repository at this point in the history
Added DMA support to efr32xg23 socs and boards containing them.

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
  • Loading branch information
yishai1999 authored and kartben committed Dec 30, 2024
1 parent 9d3d67d commit 0f948fd
Show file tree
Hide file tree
Showing 8 changed files with 58 additions and 0 deletions.
2 changes: 2 additions & 0 deletions boards/silabs/radio_boards/xg23_rb4210a/doc/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,8 @@ The board configuration supports the following hardware features:
+-----------+------------+-------------------------------------+
| UART | on-chip | serial |
+-----------+------------+-------------------------------------+
| DMA | on-chip | ldma |
+-----------+------------+-------------------------------------+
| I2C | on-chip | i2c |
+-----------+------------+-------------------------------------+
| SPI | on-chip | spi |
Expand Down
1 change: 1 addition & 0 deletions boards/silabs/radio_boards/xg23_rb4210a/xg23_rb4210a.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ supported:
- pinctrl
- spi
- uart
- dma
- watchdog
testing:
ignore_tags:
Expand Down
9 changes: 9 additions & 0 deletions dts/arm/silabs/efr32xg23.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -424,6 +424,15 @@
reg = <0x5003c440 0xbc0>;
};

dma0: dma@50040000{
compatible = "silabs,ldma";
reg = <0x50040000 0x4000>;
interrupts = <22 0>;
#dma-cells = <3>;
dma_channels = <8>;
status = "disabled";
};

wdog0: wdog@5b004000 {
compatible = "silabs,gecko-wdog";
reg = <0x5b004000 0x4000>;
Expand Down
11 changes: 11 additions & 0 deletions tests/drivers/dma/chan_blen_transfer/boards/xg23_rb4210a.overlay
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
/*
* Copyright (c) 2024 Silicon Laboratories, Inc.
*
* SPDX-License-Identifier: Apache-2.0
*/

&dma0 {
status = "okay";
};

tst_dma0: &dma0 { };
5 changes: 5 additions & 0 deletions tests/drivers/dma/loop_transfer/boards/xg23_rb4210a.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# Copyright (c) 2024 Silicon Laboratories, Inc.
# SPDX-License-Identifier: Apache-2.0

CONFIG_DMA_LOOP_TRANSFER_CHANNEL_NR=0
CONFIG_DMA_LOOP_TRANSFER_SIZE=2048
11 changes: 11 additions & 0 deletions tests/drivers/dma/loop_transfer/boards/xg23_rb4210a.overlay
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
/*
* Copyright (c) 2024 Silicon Laboratories, Inc.
*
* SPDX-License-Identifier: Apache-2.0
*/

&dma0 {
status = "okay";
};

tst_dma0: &dma0 { };
4 changes: 4 additions & 0 deletions tests/drivers/dma/scatter_gather/boards/xg23_rb4210a.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# Copyright (c) 2024 Silicon Laboratories, Inc.
# SPDX-License-Identifier: Apache-2.0

CONFIG_DMA_SG_CHANNEL_NR=0
15 changes: 15 additions & 0 deletions tests/drivers/dma/scatter_gather/boards/xg23_rb4210a.overlay
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
/*
* Copyright (c) 2024 Silicon Laboratories, Inc.
*
* SPDX-License-Identifier: Apache-2.0
*/

/ {
aliases {
dma0 = &dma0;
};
};

&dma0 {
status = "okay";
};

0 comments on commit 0f948fd

Please sign in to comment.