64 lines
1.5 KiB
Plaintext
64 lines
1.5 KiB
Plaintext
|
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>;
|
||
|
};
|
||
|
};
|
||
|
};
|