Skip to content

Commit f671b68

Browse files
smalaekartben
authored andcommitted
drivers: i2s: siwx91x: DTS changes for siwx91x I2S driver
1. Create a YAML file for I2S node 2. Add I2S node in the siwx917.dtsi Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
1 parent dcdc8e8 commit f671b68

File tree

2 files changed

+56
-0
lines changed

2 files changed

+56
-0
lines changed

dts/arm/silabs/siwg917.dtsi

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -351,6 +351,33 @@
351351
clocks = <&clock0 SIWX91X_CLK_GSPI>;
352352
status = "disabled";
353353
};
354+
355+
i2s0: i2s@47050000 {
356+
compatible = "silabs,siwx91x-i2s";
357+
#address-cells = <1>;
358+
#size-cells = <0>;
359+
reg = <0x47050000 0x200>;
360+
interrupts = <64 0>;
361+
interrupt-names = "i2s0";
362+
silabs,channel-group = <0>;
363+
silabs,max-channel-count = <2>;
364+
clocks = <&clock0 SIWX91X_CLK_I2S0>, <&clock0 SIWX91X_CLK_STATIC_I2S0>;
365+
status = "disabled";
366+
};
367+
368+
ulpi2s: i2s@24040400 {
369+
compatible = "silabs,siwx91x-i2s";
370+
#address-cells = <1>;
371+
#size-cells = <0>;
372+
reg = <0x24040400 0x200>;
373+
interrupts = <14 0>;
374+
interrupt-names = "ulpi2s";
375+
silabs,channel-group = <0>;
376+
silabs,max-channel-count = <1>;
377+
clocks = <&clock0 SIWX91X_CLK_ULP_I2S>,
378+
<&clock0 SIWX91X_CLK_STATIC_ULP_I2S>;
379+
status = "disabled";
380+
};
354381
};
355382
};
356383

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
description: Silabs siwx91x I2S (Inter-IC sound interface)
2+
3+
compatible: "silabs,siwx91x-i2s"
4+
5+
include: [i2s-controller.yaml, pinctrl-device.yaml]
6+
7+
properties:
8+
reg:
9+
required: true
10+
11+
interrupts:
12+
required: true
13+
14+
silabs,channel-group:
15+
type: int
16+
description: |
17+
Each channel group within the I2S module consists of both transmit (TX) and
18+
receive (RX) channels. The I2S0 interface supports two channel groups (0 and 1),
19+
In contrast, the ULP_I2S interface is more constrained, offering only a single
20+
channel group for its TX and RX operations.
21+
required: true
22+
23+
silabs,max-channel-count:
24+
type: int
25+
description: |
26+
Maximum channel count of I2S peripheral. "silabs,channel-group" attribute should
27+
be always less than this value. This value is fixed for an instance
28+
and not expected to change by user in any application overlay.
29+
required: true

0 commit comments

Comments
 (0)