Skip to content

Commit ce33728

Browse files
dts: i2s: add i2s node for max32655fthr
- add basic dma only i2s dts binding for max32-i2s - add i2s node with defaul config to max32655.dtsi - add i2s pin definition for max32655fthr baord as per spec Signed-off-by: Anuj Pathak <anuj@croxel.com>
1 parent cc17806 commit ce33728

File tree

3 files changed

+61
-0
lines changed

3 files changed

+61
-0
lines changed

boards/adi/max32655fthr/max32655fthr_max32655_m4.dts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -148,6 +148,12 @@
148148
status = "okay";
149149
};
150150

151+
&i2s0 {
152+
status = "okay";
153+
pinctrl-0 = <&i2s_sck_p1_2 &i2s_ws_p1_3 &i2s_sdi_p1_4 &i2s_sdo_p1_5>;
154+
pinctrl-names = "default";
155+
};
156+
151157
&wdt0 {
152158
status = "okay";
153159
};

dts/arm/adi/max32/max32655.dtsi

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -149,5 +149,22 @@
149149
interrupts = <67 0>;
150150
status = "disabled";
151151
};
152+
153+
i2s0: i2s0@40060000 {
154+
compatible = "adi,max32-i2s";
155+
reg = <0x40060000 0x1000>;
156+
#address-cells = <1>;
157+
#size-cells = <0>;
158+
/*
159+
* DMA Configuration is provided as an example.
160+
* user is free to change dma channel index,
161+
* but tx and rx slot should be 0x3e and 0x1e respectively.
162+
*
163+
* ref to MAX32655 Reference Manual
164+
* Table 6-1. I2S DMA Channel Assignments
165+
*/
166+
dmas = <&dma0 0 0x3e>, <&dma0 1 0x1e>;
167+
dma-names = "tx", "rx";
168+
};
152169
};
153170
};

dts/bindings/i2s/adi,max32-i2s.yaml

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
# Copyright (c) 2025 Croxel Inc.
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
description: Analog Devices MAX32 series I2S controller
5+
6+
compatible: "adi,max32-i2s"
7+
8+
include: [i2s-controller.yaml, pinctrl-device.yaml]
9+
10+
properties:
11+
reg:
12+
required: true
13+
14+
pinctrl-0:
15+
required: true
16+
description: |
17+
GPIO pin configuration for I2S signals. The required signals are:
18+
- I2S_WS (Word Select/Frame sync)
19+
- I2S_SCK (Bit clock)
20+
- I2S_SDO (Serial data output)
21+
- I2S_SDI (Serial data input)
22+
23+
pinctrl-names:
24+
required: true
25+
26+
dmas:
27+
required: true
28+
description: |
29+
DMA channels for RX and TX. Two channels must be provided in the following order:
30+
- RX DMA channel
31+
- TX DMA channel
32+
33+
dma-names:
34+
required: true
35+
description: |
36+
Names of DMA channels for RX and TX. Must be provided in the following order:
37+
- rx
38+
- tx

0 commit comments

Comments
 (0)