forked from thesofproject/linux
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
ASoC: add fsl_audmix DT binding documentation
Add the DT binding documentation for NXP Audio Mixer CPU DAI driver. Signed-off-by: Viorel Suman <viorel.suman@nxp.com> Signed-off-by: Mark Brown <broonie@kernel.org>
- Loading branch information
Showing
1 changed file
with
54 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,54 @@ | ||
NXP Audio Mixer (AUDMIX). | ||
|
||
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-audmix" | ||
|
||
- 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 AUDMIX power domain node | ||
|
||
- dais : Must contain a list of phandles to AUDMIX 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 AUDMIX output. | ||
|
||
- model : Must contain machine driver name which will configure | ||
and instantiate the appropriate audio card. | ||
|
||
Device driver configuration example: | ||
====================================== | ||
audmix: audmix@59840000 { | ||
compatible = "fsl,imx8qm-audmix"; | ||
reg = <0x0 0x59840000 0x0 0x10000>; | ||
clocks = <&clk IMX8QXP_AUD_AUDMIX_IPG>; | ||
clock-names = "ipg"; | ||
power-domains = <&pd_audmix>; | ||
dais = <&sai4>, <&sai5>; | ||
model = "imx-audmix"; | ||
}; |