File tree Expand file tree Collapse file tree 8 files changed +152
-51
lines changed Expand file tree Collapse file tree 8 files changed +152
-51
lines changed Original file line number Diff line number Diff line change
1
+ /*
2
+ * Copyright (c) 2025 Espressif Systems (Shanghai) Co., Ltd.
3
+ *
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+
7
+ &i2s0_default {
8
+ group1 {
9
+ pinmux = <I2S0_O_WS_GPIO33>,
10
+ <I2S0_O_BCK_GPIO32>,
11
+ <I2S0_O_SD_GPIO27>,
12
+ <I2S0_I_WS_GPIO26>,
13
+ <I2S0_I_BCK_GPIO25>;
14
+ output-enable;
15
+ };
16
+ group2 {
17
+ pinmux = <I2S0_I_SD_GPIO18>;
18
+ input-enable;
19
+ };
20
+ };
21
+
22
+ i2s_rxtx: &i2s0 {
23
+ status = "okay";
24
+
25
+ interrupts = <I2S0_INTR_SOURCE IRQ_DEFAULT_PRIORITY 0>,
26
+ <I2S0_INTR_SOURCE IRQ_DEFAULT_PRIORITY 0>;
27
+ interrupt-names = "tx", "rx";
28
+
29
+ };
Original file line number Diff line number Diff line change
1
+ /*
2
+ * Copyright (c) 2025 Espressif Systems (Shanghai) Co., Ltd.
3
+ *
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+
7
+ &i2s0_default {
8
+ group1 {
9
+ pinmux = <I2S0_O_WS_GPIO17>,
10
+ <I2S0_O_BCK_GPIO16>,
11
+ <I2S0_O_SD_GPIO15>,
12
+ <I2S0_I_WS_GPIO11>,
13
+ <I2S0_I_BCK_GPIO10>;
14
+ output-enable;
15
+ };
16
+ group2 {
17
+ pinmux = <I2S0_I_SD_GPIO18>;
18
+ input-enable;
19
+ };
20
+ };
21
+
22
+ i2s_rxtx: &i2s0 {
23
+ status = "okay";
24
+
25
+ interrupts = <I2S0_INTR_SOURCE IRQ_DEFAULT_PRIORITY 0>,
26
+ <I2S0_INTR_SOURCE IRQ_DEFAULT_PRIORITY 0>;
27
+ interrupt-names = "tx", "rx";
28
+
29
+ };
Original file line number Diff line number Diff line change 1
1
/*
2
- * Copyright (c) 2024 Espressif Systems (Shanghai) Co., Ltd.
2
+ * Copyright (c) 2025 Espressif Systems (Shanghai) Co., Ltd.
3
3
*
4
4
* SPDX-License-Identifier: Apache-2.0
5
5
*/
6
6
7
- &pinctrl {
8
- i2s0_pinconf: i2s0_pinconf {
9
- group1 {
10
- pinmux = <I2S0_MCLK_GPIO42>,
11
- <I2S0_O_WS_GPIO41>,
12
- <I2S0_O_BCK_GPIO40>,
13
- <I2S0_O_SD_GPIO39>;
14
- output-enable;
15
- };
7
+ &i2s0_default {
8
+ group1 {
9
+ pinmux = <I2S0_MCLK_GPIO42>,
10
+ <I2S0_O_WS_GPIO41>,
11
+ <I2S0_O_BCK_GPIO40>,
12
+ <I2S0_O_SD_GPIO39>;
13
+ output-enable;
16
14
};
17
-
18
- i2s1_pinconf: i2s1_pinconf {
19
- group1 {
20
- pinmux = <I2S1_MCLK_GPIO35>,
21
- <I2S1_I_WS_GPIO36>,
22
- <I2S1_I_BCK_GPIO37>;
23
- output-enable;
24
- };
25
- group2 {
26
- pinmux = <I2S1_I_SD_GPIO38>;
27
- input-enable;
28
- };
15
+ group2 {
16
+ pinmux = <I2S0_I_SD_GPIO38>;
17
+ input-enable;
29
18
};
30
19
};
31
20
32
- i2s_tx : &i2s0 {
21
+ i2s_rxtx : &i2s0 {
33
22
status = "okay";
34
23
35
- pinctrl-0 = <&i2s0_pinconf>;
36
- pinctrl-names = "default";
37
-
38
- dmas = <&dma 3>;
39
- dma-names = "tx";
40
- };
41
-
42
- i2s_rx: &i2s1 {
43
- status = "okay";
44
-
45
- pinctrl-0 = <&i2s1_pinconf>;
46
- pinctrl-names = "default";
47
-
48
- dmas = <&dma 4>;
49
- dma-names = "rx";
24
+ dmas = <&dma 2>, <&dma 3>;
25
+ dma-names = "rx", "tx";
50
26
};
51
27
52
28
&dma {
Original file line number Diff line number Diff line change
1
+ /*
2
+ * Copyright (c) 2025 Espressif Systems (Shanghai) Co., Ltd.
3
+ *
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+
7
+ / {
8
+ aliases {
9
+ i2s-tx = &i2s0;
10
+ };
11
+ };
12
+
13
+ &i2s0_default {
14
+ group1 {
15
+ pinmux = <I2S0_O_WS_GPIO33>,
16
+ <I2S0_O_BCK_GPIO32>,
17
+ <I2S0_O_SD_GPIO27>;
18
+ output-enable;
19
+ };
20
+ group2 {
21
+ pinmux = <I2S0_I_SD_GPIO18>;
22
+ input-enable;
23
+ };
24
+ };
25
+
26
+ &i2s0 {
27
+ status = "okay";
28
+
29
+ interrupts = <I2S0_INTR_SOURCE IRQ_DEFAULT_PRIORITY 0>;
30
+ interrupt-names = "tx";
31
+ };
Original file line number Diff line number Diff line change
1
+ CONFIG_I2S=y
Original file line number Diff line number Diff line change
1
+ /*
2
+ * Copyright (c) 2025 Espressif Systems (Shanghai) Co., Ltd.
3
+ *
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+
7
+ #include <zephyr/dt-bindings/led/led.h>
8
+
9
+ / {
10
+ aliases {
11
+ led-strip = &led_strip;
12
+ };
13
+ };
14
+
15
+ &i2s0_default {
16
+ group1 {
17
+ pinmux = <I2S0_O_SD_GPIO18>;
18
+ output-enable;
19
+ };
20
+ };
21
+
22
+ i2s_led: &i2s0 {
23
+ status = "okay";
24
+
25
+ interrupts = <I2S0_INTR_SOURCE IRQ_DEFAULT_PRIORITY 0>;
26
+ interrupt-names = "tx";
27
+
28
+ led_strip: ws2812@0 {
29
+ compatible = "worldsemi,ws2812-i2s";
30
+ reg = <0>;
31
+
32
+ chain-length = <1>;
33
+ color-mapping = <LED_COLOR_ID_GREEN
34
+ LED_COLOR_ID_RED
35
+ LED_COLOR_ID_BLUE>;
36
+ reset-delay = <500>;
37
+ };
38
+ };
Original file line number Diff line number Diff line change
1
+ CONFIG_I2S=y
Original file line number Diff line number Diff line change 1
1
/*
2
- * Copyright (c) 2024 Espressif Systems (Shanghai) Co., Ltd.
2
+ * Copyright (c) 2024-2025 Espressif Systems (Shanghai) Co., Ltd.
3
3
*
4
4
* SPDX-License-Identifier: Apache-2.0
5
5
*/
12
12
};
13
13
};
14
14
15
+ &i2s0_default {
16
+ group1 {
17
+ pinmux = <I2S0_O_SD_GPIO38>;
18
+ output-enable;
19
+ };
20
+ };
21
+
15
22
i2s_led: &i2s0 {
16
23
status = "okay";
17
24
18
- pinctrl-0 = <&i2s0_pinconf>;
19
-
20
25
dmas = <&dma 3>;
21
26
dma-names = "tx";
22
27
23
28
led_strip: ws2812@0 {
24
29
compatible = "worldsemi,ws2812-i2s";
25
30
26
31
reg = <0>;
27
- chain-length = <46 >;
32
+ chain-length = <1 >;
28
33
color-mapping = <LED_COLOR_ID_GREEN
29
34
LED_COLOR_ID_RED
30
35
LED_COLOR_ID_BLUE>;
@@ -35,12 +40,3 @@ i2s_led: &i2s0 {
35
40
&dma {
36
41
status = "okay";
37
42
};
38
-
39
- &pinctrl {
40
- i2s0_pinconf: i2s0_pinconf {
41
- group1 {
42
- pinmux = <I2S0_O_SD_GPIO38>;
43
- output-enable;
44
- };
45
- };
46
- };
You can’t perform that action at this time.
0 commit comments