110 lines · yaml
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)2%YAML 1.23---4$id: http://devicetree.org/schemas/sound/st,stm32-i2s.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: STMicroelectronics STM32 SPI/I2S Controller8 9maintainers:10 - Olivier Moysan <olivier.moysan@foss.st.com>11 12description:13 The SPI/I2S block supports I2S/PCM protocols when configured on I2S mode.14 Only some SPI instances support I2S.15 16allOf:17 - $ref: dai-common.yaml#18 19properties:20 compatible:21 enum:22 - st,stm32h7-i2s23 24 "#sound-dai-cells":25 const: 026 27 reg:28 maxItems: 129 30 clocks:31 items:32 - description: clock feeding the peripheral bus interface.33 - description: clock feeding the internal clock generator.34 - description: I2S parent clock for sampling rates multiple of 8kHz.35 - description: I2S parent clock for sampling rates multiple of 11.025kHz.36 37 clock-names:38 items:39 - const: pclk40 - const: i2sclk41 - const: x8k42 - const: x11k43 44 interrupts:45 maxItems: 146 47 dmas:48 items:49 - description: audio capture DMA.50 - description: audio playback DMA.51 52 dma-names:53 items:54 - const: rx55 - const: tx56 57 resets:58 maxItems: 159 60 "#clock-cells":61 description: Configure the I2S device as MCLK clock provider.62 const: 063 64 port:65 $ref: audio-graph-port.yaml#66 unevaluatedProperties: false67 68 access-controllers:69 minItems: 170 maxItems: 271 72required:73 - compatible74 - "#sound-dai-cells"75 - reg76 - clocks77 - clock-names78 - interrupts79 - dmas80 - dma-names81 82unevaluatedProperties: false83 84examples:85 - |86 #include <dt-bindings/interrupt-controller/arm-gic.h>87 #include <dt-bindings/clock/stm32mp1-clks.h>88 i2s2: audio-controller@4000b000 {89 compatible = "st,stm32h7-i2s";90 #sound-dai-cells = <0>;91 reg = <0x4000b000 0x400>;92 clocks = <&rcc SPI2>, <&rcc SPI2_K>, <&rcc PLL3_Q>, <&rcc PLL3_R>;93 clock-names = "pclk", "i2sclk", "x8k", "x11k";94 interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;95 dmas = <&dmamux1 39 0x400 0x01>,96 <&dmamux1 40 0x400 0x01>;97 dma-names = "rx", "tx";98 pinctrl-names = "default";99 pinctrl-0 = <&i2s2_pins_a>;100 101 /* assume audio-graph */102 port {103 codec_endpoint: endpoint {104 remote-endpoint = <&codec_endpoint>;105 };106 };107 };108 109...110