mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-27 12:57:53 +00:00
ASoC: dt-bindings: fsl-audmix: Convert fsl,audmix.txt to yaml
Convert fsl,audmix.txt to yaml to let dtb check tools check audmix part. Signed-off-by: Frank Li <Frank.Li@nxp.com> Reviewed-by: Rob Herring <robh@kernel.org> Link: https://msgid.link/r/20240321150401.2464783-1-Frank.Li@nxp.com Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
4cece76496
commit
33a499668e
2 changed files with 83 additions and 50 deletions
|
@ -1,50 +0,0 @@
|
|||
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.
|
||||
|
||||
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>;
|
||||
};
|
83
Documentation/devicetree/bindings/sound/fsl,audmix.yaml
Normal file
83
Documentation/devicetree/bindings/sound/fsl,audmix.yaml
Normal file
|
@ -0,0 +1,83 @@
|
|||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/sound/fsl,audmix.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: NXP Audio Mixer (AUDMIX).
|
||||
|
||||
maintainers:
|
||||
- Shengjiu Wang <shengjiu.wang@nxp.com>
|
||||
- Frank Li <Frank.Li@nxp.com>
|
||||
|
||||
description: |
|
||||
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.
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
const: fsl,imx8qm-audmix
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
clocks:
|
||||
maxItems: 1
|
||||
|
||||
clock-names:
|
||||
items:
|
||||
- const: ipg
|
||||
|
||||
power-domains:
|
||||
maxItems: 1
|
||||
|
||||
dais:
|
||||
description: contain a list of phandles to AUDMIX connected DAIs.
|
||||
$ref: /schemas/types.yaml#/definitions/phandle-array
|
||||
minItems: 2
|
||||
items:
|
||||
- description: the AUDMIX output
|
||||
maxItems: 1
|
||||
- description: serial audio input 1
|
||||
maxItems: 1
|
||||
- description: serial audio input 2
|
||||
maxItems: 1
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- clocks
|
||||
- clock-names
|
||||
- power-domains
|
||||
- dais
|
||||
|
||||
unevaluatedProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
audmix@59840000 {
|
||||
compatible = "fsl,imx8qm-audmix";
|
||||
reg = <0x59840000 0x10000>;
|
||||
clocks = <&amix_lpcg 0>;
|
||||
clock-names = "ipg";
|
||||
power-domains = <&pd_audmix>;
|
||||
dais = <&sai4>, <&sai5>;
|
||||
};
|
Loading…
Reference in a new issue