hc
2023-11-07 5e8555e3ea324daaf0e38422bcba48c4df33a0d9
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
STMicroelectronics Audio Digital Filter Sigma Delta modulators(DFSDM)
 
The DFSDM allows PDM microphones capture through SPI interface. The Audio
interface is seems as a sub block of the DFSDM device.
For details on DFSDM bindings refer to ../iio/adc/st,stm32-dfsdm-adc.txt
 
Required properties:
  - compatible: "st,stm32h7-dfsdm-dai".
 
  - #sound-dai-cells : Must be equal to 0
 
  - io-channels : phandle to iio dfsdm instance node.
 
Example of a sound card using audio DFSDM node.
 
   sound_card {
       compatible = "audio-graph-card";
 
       dais = <&cpu_port>;
   };
 
   dfsdm: dfsdm@40017000 {
       compatible = "st,stm32h7-dfsdm";
       reg = <0x40017000 0x400>;
       clocks = <&rcc DFSDM1_CK>;
       clock-names = "dfsdm";
       #interrupt-cells = <1>;
       #address-cells = <1>;
       #size-cells = <0>;
 
       dfsdm_adc0: filter@0 {
           compatible = "st,stm32-dfsdm-dmic";
           reg = <0>;
           interrupts = <110>;
           dmas = <&dmamux1 101 0x400 0x00>;
           dma-names = "rx";
           st,adc-channels = <1>;
           st,adc-channel-names = "dmic0";
           st,adc-channel-types = "SPI_R";
           st,adc-channel-clk-src = "CLKOUT";
           st,filter-order = <5>;
 
           dfsdm_dai0: dfsdm-dai {
               compatible = "st,stm32h7-dfsdm-dai";
               #sound-dai-cells = <0>;
               io-channels = <&dfsdm_adc0 0>;
               cpu_port: port {
               dfsdm_endpoint: endpoint {
                   remote-endpoint = <&dmic0_endpoint>;
               };
           };
       };
   };
 
   dmic0: dmic@0 {
       compatible = "dmic-codec";
       #sound-dai-cells = <0>;
       port {
           dmic0_endpoint: endpoint {
               remote-endpoint = <&dfsdm_endpoint>;
           };
       };
   };