Based on kernel version 6.15
. Page generated on 2025-05-29 09:09 EST
.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 | # 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 ports: $ref: /schemas/graph.yaml#/properties/ports patternProperties: '^port@[0-1]': $ref: audio-graph-port.yaml# unevaluatedProperties: false description: Input port from SAI TX properties: port@2: $ref: audio-graph-port.yaml# unevaluatedProperties: false description: Output port to SAI RX required: - compatible - reg - clocks - clock-names - power-domains 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>; ports { #address-cells = <1>; #size-cells = <0>; port@0 { reg = <0>; playback-only; amix_endpoint0: endpoint { dai-tdm-slot-num = <8>; dai-tdm-slot-width = <32>; dai-tdm-slot-width-map = <32 8 32>; dai-format = "dsp_a"; remote-endpoint = <&be00_ep>; }; }; port@1 { reg = <1>; playback-only; amix_endpoint1: endpoint { dai-tdm-slot-num = <8>; dai-tdm-slot-width = <32>; dai-tdm-slot-width-map = <32 8 32>; dai-format = "dsp_a"; remote-endpoint = <&be01_ep>; }; }; port@2 { reg = <2>; capture-only; amix_endpoint2: endpoint { dai-tdm-slot-num = <8>; dai-tdm-slot-width = <32>; dai-tdm-slot-width-map = <32 8 32>; dai-format = "dsp_a"; bitclock-master; frame-master; remote-endpoint = <&be02_ep>; }; }; }; }; |