18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 28c2ecf20Sopenharmony_ci%YAML 1.2 38c2ecf20Sopenharmony_ci--- 48c2ecf20Sopenharmony_ci$id: http://devicetree.org/schemas/sound/st,stm32-i2s.yaml# 58c2ecf20Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml# 68c2ecf20Sopenharmony_ci 78c2ecf20Sopenharmony_cititle: STMicroelectronics STM32 SPI/I2S Controller 88c2ecf20Sopenharmony_ci 98c2ecf20Sopenharmony_cimaintainers: 108c2ecf20Sopenharmony_ci - Olivier Moysan <olivier.moysan@st.com> 118c2ecf20Sopenharmony_ci 128c2ecf20Sopenharmony_cidescription: 138c2ecf20Sopenharmony_ci The SPI/I2S block supports I2S/PCM protocols when configured on I2S mode. 148c2ecf20Sopenharmony_ci Only some SPI instances support I2S. 158c2ecf20Sopenharmony_ci 168c2ecf20Sopenharmony_ciproperties: 178c2ecf20Sopenharmony_ci compatible: 188c2ecf20Sopenharmony_ci enum: 198c2ecf20Sopenharmony_ci - st,stm32h7-i2s 208c2ecf20Sopenharmony_ci 218c2ecf20Sopenharmony_ci "#sound-dai-cells": 228c2ecf20Sopenharmony_ci const: 0 238c2ecf20Sopenharmony_ci 248c2ecf20Sopenharmony_ci reg: 258c2ecf20Sopenharmony_ci maxItems: 1 268c2ecf20Sopenharmony_ci 278c2ecf20Sopenharmony_ci clocks: 288c2ecf20Sopenharmony_ci items: 298c2ecf20Sopenharmony_ci - description: clock feeding the peripheral bus interface. 308c2ecf20Sopenharmony_ci - description: clock feeding the internal clock generator. 318c2ecf20Sopenharmony_ci - description: I2S parent clock for sampling rates multiple of 8kHz. 328c2ecf20Sopenharmony_ci - description: I2S parent clock for sampling rates multiple of 11.025kHz. 338c2ecf20Sopenharmony_ci 348c2ecf20Sopenharmony_ci clock-names: 358c2ecf20Sopenharmony_ci items: 368c2ecf20Sopenharmony_ci - const: pclk 378c2ecf20Sopenharmony_ci - const: i2sclk 388c2ecf20Sopenharmony_ci - const: x8k 398c2ecf20Sopenharmony_ci - const: x11k 408c2ecf20Sopenharmony_ci 418c2ecf20Sopenharmony_ci interrupts: 428c2ecf20Sopenharmony_ci maxItems: 1 438c2ecf20Sopenharmony_ci 448c2ecf20Sopenharmony_ci dmas: 458c2ecf20Sopenharmony_ci items: 468c2ecf20Sopenharmony_ci - description: audio capture DMA. 478c2ecf20Sopenharmony_ci - description: audio playback DMA. 488c2ecf20Sopenharmony_ci 498c2ecf20Sopenharmony_ci dma-names: 508c2ecf20Sopenharmony_ci items: 518c2ecf20Sopenharmony_ci - const: rx 528c2ecf20Sopenharmony_ci - const: tx 538c2ecf20Sopenharmony_ci 548c2ecf20Sopenharmony_ci resets: 558c2ecf20Sopenharmony_ci maxItems: 1 568c2ecf20Sopenharmony_ci 578c2ecf20Sopenharmony_cirequired: 588c2ecf20Sopenharmony_ci - compatible 598c2ecf20Sopenharmony_ci - "#sound-dai-cells" 608c2ecf20Sopenharmony_ci - reg 618c2ecf20Sopenharmony_ci - clocks 628c2ecf20Sopenharmony_ci - clock-names 638c2ecf20Sopenharmony_ci - interrupts 648c2ecf20Sopenharmony_ci - dmas 658c2ecf20Sopenharmony_ci - dma-names 668c2ecf20Sopenharmony_ci 678c2ecf20Sopenharmony_ciadditionalProperties: false 688c2ecf20Sopenharmony_ci 698c2ecf20Sopenharmony_ciexamples: 708c2ecf20Sopenharmony_ci - | 718c2ecf20Sopenharmony_ci #include <dt-bindings/interrupt-controller/arm-gic.h> 728c2ecf20Sopenharmony_ci #include <dt-bindings/clock/stm32mp1-clks.h> 738c2ecf20Sopenharmony_ci i2s2: audio-controller@4000b000 { 748c2ecf20Sopenharmony_ci compatible = "st,stm32h7-i2s"; 758c2ecf20Sopenharmony_ci #sound-dai-cells = <0>; 768c2ecf20Sopenharmony_ci reg = <0x4000b000 0x400>; 778c2ecf20Sopenharmony_ci clocks = <&rcc SPI2>, <&rcc SPI2_K>, <&rcc PLL3_Q>, <&rcc PLL3_R>; 788c2ecf20Sopenharmony_ci clock-names = "pclk", "i2sclk", "x8k", "x11k"; 798c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>; 808c2ecf20Sopenharmony_ci dmas = <&dmamux1 39 0x400 0x01>, 818c2ecf20Sopenharmony_ci <&dmamux1 40 0x400 0x01>; 828c2ecf20Sopenharmony_ci dma-names = "rx", "tx"; 838c2ecf20Sopenharmony_ci pinctrl-names = "default"; 848c2ecf20Sopenharmony_ci pinctrl-0 = <&i2s2_pins_a>; 858c2ecf20Sopenharmony_ci }; 868c2ecf20Sopenharmony_ci 878c2ecf20Sopenharmony_ci... 88