Skip to content

Commit

Permalink
dts: arm/silabs: add dma node for efr32(mg2x/bg2x)
Browse files Browse the repository at this point in the history
Update dts for efr32mg2x and efr32bg2x board that support silabs ldma

Signed-off-by: Martin Hoff <[email protected]>
  • Loading branch information
Martinhoff-maker committed Dec 12, 2024
1 parent 8448860 commit 594a781
Show file tree
Hide file tree
Showing 6 changed files with 60 additions and 0 deletions.
4 changes: 4 additions & 0 deletions dts/arm/silabs/efr32bg22.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,10 @@
clocks = <&cmu CLOCK_GPIO CLOCK_BRANCH_PCLK>;
};

&dma0 {
interrupts = <21 0>;
};

&i2c0 {
interrupts = <27 0>;
clocks = <&cmu CLOCK_I2C0 CLOCK_BRANCH_LSPCLK>;
Expand Down
4 changes: 4 additions & 0 deletions dts/arm/silabs/efr32bg27.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -103,3 +103,7 @@
&dcdc {
interrupts = <8 0>;
};

&dma0 {
interrupts = <26 0>;
};
8 changes: 8 additions & 0 deletions dts/arm/silabs/efr32bg2x.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -343,6 +343,14 @@
reg = <0x5003c440 0xbc0>;
};

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

wdog0: wdog@4a018000 {
compatible = "silabs,gecko-wdog";
reg = <0x4A018000 0x3028>;
Expand Down
9 changes: 9 additions & 0 deletions dts/arm/silabs/efr32mg21.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -329,6 +329,15 @@
status = "okay";
};

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

wdog0: wdog@5a018000 {
compatible = "silabs,gecko-wdog";
reg = <0x5a018000 0x2C>;
Expand Down
9 changes: 9 additions & 0 deletions dts/arm/silabs/efr32mg24.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -394,6 +394,15 @@
reg = <0x5003c440 0xbc0>;
};

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

wdog0: wdog@5b004000 {
compatible = "silabs,gecko-wdog";
reg = <0x5b004000 0x2C>;
Expand Down
26 changes: 26 additions & 0 deletions dts/bindings/dma/silabs,ldma.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# Copyright (c) 2024 Silicon Laboratories Inc.
# SPDX-License-Identifier: Apache-2.0

description: |
Silabs LDMA controller
The Silabs LDMA is a general-purpose direct memory access controller
capable of supporting 8 independent DMA channels. It supports specific
functions like scatter-gather.
It is present on silabs radio board devices like EFR32xG21
compatible: "silabs,ldma"

include: dma-controller.yaml

properties:
reg:
required: true

interrupts:
required: true

dma_channels:
type: int
required: true

0 comments on commit 594a781

Please sign in to comment.