| NXP Audio Mixer (AMIX). |
| |
| The Audio Mixer is a on-chip functional module that allows mixing of two audio |
| streams into a single audio stream. Audio Mixer has two input serial audio |
| interfaces. These are driven by two Synchronous Audio interface modules (SAI). |
| Each input serial interface carries 8 audio channels in its frame in TDM manner. |
| Mixer mixes audio samples of corresponding channels from two interfaces into a |
| single sample. Before mixing, audio samples of two inputs can be attenuated |
| based on configuration. The output of the Audio Mixer is also a serial audio |
| interface. Like input interfaces it has the same TDM frame format. This output |
| is used to drive the serial DAC TDM interface of audio codec and also sent to |
| the external pins along with the receive path of normal audio SAI module for |
| readback by the CPU. |
| |
| The output of Audio mixer can be selected from any of the three streams |
| - serial audio input 1 |
| - serial audio input 2 |
| - Mixed audio |
| |
| Mixing operation is independent of audio sample rate but the two audio input |
| streams must have same audio sample rate with same number of channels in TDM |
| frame to be eligible for mixing. |
| |
| Device driver required properties: |
| ================================= |
| - compatible : Compatible list, contains "fsl,imx8qm-amix" |
| |
| - reg : Offset and length of the register set for the device. |
| |
| - clocks : Must contain an entry for each entry in clock-names. |
| |
| - clock-names : Must include the "ipg" for register access. |
| |
| - power-domains : Must contain the phandle to the AMIX power domain node |
| |
| Device driver configuration example: |
| ====================================== |
| amix: amix@59840000 { |
| compatible = "fsl,imx8qm-amix"; |
| reg = <0x0 0x59840000 0x0 0x10000>; |
| clocks = <&clk IMX8QXP_AUD_AMIX_IPG>; |
| clock-names = "ipg"; |
| power-domains = <&pd_amix>; |
| }; |
| |
| Machine driver required properties: |
| =================================== |
| - compatible : Compatible list, contains "fsl,imx-audio-amix" |
| |
| - model : Short audio card description. |
| |
| - dais : Must contain a list of phandles to AMIX connected |
| DAIs. The current implementation requires two phandles |
| to SAI interfaces to be provided, the first SAI in the |
| list being used to route the AMIX output. |
| |
| - amix-controller : Must contain the phandle to the AMIX device node. |
| |
| Machine driver configuration example: |
| ==================================== |
| sound-amix-sai { |
| compatible = "fsl,imx-audio-amix"; |
| model = "amix-audio-sai"; |
| dais = <&sai4>, <&sai5>; |
| amix-controller = <&amix>; |
| }; |
| |