Lines Matching +full:stm32 +full:- +full:rcc
1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/sound/st,stm32-sai.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: STMicroelectronics STM32 Serial Audio Interface (SAI)
10 - Olivier Moysan <[email protected]>
14 protocols as I2S standards, LSB or MSB-justified, PCM/DSP, TDM, and AC'97.
15 The SAI contains two independent audio sub-blocks. Each sub-block has
21 - st,stm32f4-sai
22 - st,stm32h7-sai
23 - st,stm32mp25-sai
27 - description: Base address and size of SAI common register set.
28 - description: Base address and size of SAI identification register set.
40 "#address-cells":
43 "#size-cells":
50 clock-names:
54 access-controllers:
59 - compatible
60 - reg
61 - ranges
62 - "#address-cells"
63 - "#size-cells"
64 - clocks
65 - clock-names
68 "^audio-controller@[0-9a-f]+$":
72 Two subnodes corresponding to SAI sub-block instances A et B
73 can be defined. Subnode can be omitted for unused sub-block.
77 description: Compatible for SAI sub-block A or B.
78 pattern: "^st,stm32-sai-sub-[ab]$"
80 "#sound-dai-cells":
88 - description: sai_ck clock feeding the internal clock generator.
89 - description: MCLK clock from a SAI set as master clock provider.
92 clock-names:
94 - const: sai_ck
95 - const: MCLK
101 dma-names:
103 rx: SAI sub-block is configured as a capture DAI.
104 tx: SAI sub-block is configured as a playback DAI.
109 Configure the SAI sub-block as slave of another SAI sub-block.
110 By default SAI sub-block is in asynchronous mode.
111 Must contain the phandle and index of the SAI sub-block providing
113 $ref: /schemas/types.yaml#/definitions/phandle-array
115 - items:
116 - description: phandle of the SAI sub-block
117 - description: index of the SAI sub-block
128 "#clock-cells":
133 $ref: audio-graph-port.yaml#
137 - compatible
138 - "#sound-dai-cells"
139 - reg
140 - clocks
141 - clock-names
142 - dmas
143 - dma-names
146 - if:
150 const: st,stm32f4-sai
155 - description: x8k, SAI parent clock for sampling rates multiple of 8kHz.
156 - description: x11k, SAI parent clock for sampling rates multiple of 11.025kHz.
158 clock-names:
160 - const: x8k
161 - const: x11k
163 - if:
167 const: st,stm32mph7-sai
172 - description: pclk feeds the peripheral bus interface.
173 - description: x8k, SAI parent clock for sampling rates multiple of 8kHz.
174 - description: x11k, SAI parent clock for sampling rates multiple of 11.025kHz.
176 clock-names:
178 - const: pclk
179 - const: x8k
180 - const: x11k
182 - if:
186 const: st,stm32mp25-sai
191 - description: pclk feeds the peripheral bus interface.
193 clock-names:
195 - const: pclk
200 - |
201 #include <dt-bindings/interrupt-controller/arm-gic.h>
202 #include <dt-bindings/clock/stm32mp1-clks.h>
203 #include <dt-bindings/reset/stm32mp1-resets.h>
205 compatible = "st,stm32h7-sai";
206 #address-cells = <1>;
207 #size-cells = <1>;
210 clocks = <&rcc SAI2>, <&rcc PLL3_Q>, <&rcc PLL3_R>;
211 clock-names = "pclk", "x8k", "x11k";
212 pinctrl-names = "default", "sleep";
213 pinctrl-0 = <&sai2a_pins_a>, <&sai2b_pins_b>;
214 pinctrl-1 = <&sai2a_sleep_pins_a>, <&sai2b_sleep_pins_b>;
216 sai2a: audio-controller@4400b004 {
217 #sound-dai-cells = <0>;
218 compatible = "st,stm32-sai-sub-a";
221 dma-names = "tx";
222 clocks = <&rcc SAI2_K>;
223 clock-names = "sai_ck";