|
| 1 | +NXP Audio Mixer (AUDMIX). |
| 2 | + |
| 3 | +The Audio Mixer is a on-chip functional module that allows mixing of two |
| 4 | +audio streams into a single audio stream. Audio Mixer has two input serial |
| 5 | +audio interfaces. These are driven by two Synchronous Audio interface |
| 6 | +modules (SAI). Each input serial interface carries 8 audio channels in its |
| 7 | +frame in TDM manner. Mixer mixes audio samples of corresponding channels |
| 8 | +from two interfaces into a single sample. Before mixing, audio samples of |
| 9 | +two inputs can be attenuated based on configuration. The output of the |
| 10 | +Audio Mixer is also a serial audio interface. Like input interfaces it has |
| 11 | +the same TDM frame format. This output is used to drive the serial DAC TDM |
| 12 | +interface of audio codec and also sent to the external pins along with the |
| 13 | +receive path of normal audio SAI module for readback by the CPU. |
| 14 | + |
| 15 | +The output of Audio Mixer can be selected from any of the three streams |
| 16 | + - serial audio input 1 |
| 17 | + - serial audio input 2 |
| 18 | + - mixed audio |
| 19 | + |
| 20 | +Mixing operation is independent of audio sample rate but the two audio |
| 21 | +input streams must have same audio sample rate with same number of channels |
| 22 | +in TDM frame to be eligible for mixing. |
| 23 | + |
| 24 | +Device driver required properties: |
| 25 | +================================= |
| 26 | + - compatible : Compatible list, contains "fsl,imx8qm-audmix" |
| 27 | + |
| 28 | + - reg : Offset and length of the register set for the device. |
| 29 | + |
| 30 | + - clocks : Must contain an entry for each entry in clock-names. |
| 31 | + |
| 32 | + - clock-names : Must include the "ipg" for register access. |
| 33 | + |
| 34 | + - power-domains : Must contain the phandle to AUDMIX power domain node |
| 35 | + |
| 36 | + - dais : Must contain a list of phandles to AUDMIX connected |
| 37 | + DAIs. The current implementation requires two phandles |
| 38 | + to SAI interfaces to be provided, the first SAI in the |
| 39 | + list being used to route the AUDMIX output. |
| 40 | + |
| 41 | + - model : Must contain machine driver name which will configure |
| 42 | + and instantiate the appropriate audio card. |
| 43 | + |
| 44 | +Device driver configuration example: |
| 45 | +====================================== |
| 46 | + audmix: audmix@59840000 { |
| 47 | + compatible = "fsl,imx8qm-audmix"; |
| 48 | + reg = <0x0 0x59840000 0x0 0x10000>; |
| 49 | + clocks = <&clk IMX8QXP_AUD_AUDMIX_IPG>; |
| 50 | + clock-names = "ipg"; |
| 51 | + power-domains = <&pd_audmix>; |
| 52 | + dais = <&sai4>, <&sai5>; |
| 53 | + model = "imx-audmix"; |
| 54 | + }; |
0 commit comments