243 lines · yaml
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)2%YAML 1.23---4$id: http://devicetree.org/schemas/sound/fsl-asoc-card.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: Freescale Generic ASoC Sound Card with ASRC support8 9description:10 The Freescale Generic ASoC Sound Card can be used, ideally,11 for all Freescale SoCs connecting with external CODECs.12 13 The idea of this generic sound card is a bit like ASoC Simple Card.14 However, for Freescale SoCs (especially those released in recent years),15 most of them have ASRC inside. And this is a specific feature that might16 be painstakingly controlled and merged into the Simple Card.17 18 So having this generic sound card allows all Freescale SoC users to19 benefit from the simplification of a new card support and the capability20 of the wide sample rates support through ASRC.21 22 Note, The card is initially designed for those sound cards who use AC'97, I2S23 and PCM DAI formats. However, it'll be also possible to support those non24 AC'97/I2S/PCM type sound cards, such as S/PDIF audio and HDMI audio, as25 long as the driver has been properly upgraded.26 27maintainers:28 - Shengjiu Wang <shengjiu.wang@nxp.com>29 30properties:31 compatible:32 oneOf:33 - items:34 - enum:35 - fsl,imx-sgtl500036 - fsl,imx25-pdk-sgtl500037 - fsl,imx53-cpuvo-sgtl500038 - fsl,imx51-babbage-sgtl500039 - fsl,imx53-m53evk-sgtl500040 - fsl,imx53-qsb-sgtl500041 - fsl,imx53-voipac-sgtl500042 - fsl,imx6-armadeus-sgtl500043 - fsl,imx6-rex-sgtl500044 - fsl,imx6-sabreauto-cs4288845 - fsl,imx6-wandboard-sgtl500046 - fsl,imx6dl-nit6xlite-sgtl500047 - fsl,imx6q-ba16-sgtl500048 - fsl,imx6q-nitrogen6_max-sgtl500049 - fsl,imx6q-nitrogen6_som2-sgtl500050 - fsl,imx6q-nitrogen6x-sgtl500051 - fsl,imx6q-sabrelite-sgtl500052 - fsl,imx6q-sabresd-wm896253 - fsl,imx6q-udoo-ac9754 - fsl,imx6q-ventana-sgtl500055 - fsl,imx6sl-evk-wm896256 - fsl,imx6sx-sdb-mqs57 - fsl,imx6sx-sdb-wm896258 - fsl,imx7d-evk-wm896059 - karo,tx53-audio-sgtl500060 - tq,imx53-mba53-sgtl500061 - enum:62 - fsl,imx-audio-ac9763 - fsl,imx-audio-cs4288864 - fsl,imx-audio-mqs65 - fsl,imx-audio-sgtl500066 - fsl,imx-audio-wm896067 - fsl,imx-audio-wm896268 - items:69 - enum:70 - fsl,imx-sabreauto-spdif71 - fsl,imx6sx-sdb-spdif72 - const: fsl,imx-audio-spdif73 - items:74 - enum:75 - fsl,imx-audio-ac9776 - fsl,imx-audio-cs4288877 - fsl,imx-audio-cs427x78 - fsl,imx-audio-mqs79 - fsl,imx-audio-nau882280 - fsl,imx-audio-sgtl500081 - fsl,imx-audio-si476x82 - fsl,imx-audio-tlv320aic31xx83 - fsl,imx-audio-tlv320aic32x484 - fsl,imx-audio-wm852485 - fsl,imx-audio-wm890486 - fsl,imx-audio-wm896087 - fsl,imx-audio-wm896288 - fsl,imx-audio-wm895889 - fsl,imx-audio-spdif90 91 model:92 $ref: /schemas/types.yaml#/definitions/string93 description: The user-visible name of this sound complex94 95 audio-asrc:96 $ref: /schemas/types.yaml#/definitions/phandle97 description:98 The phandle of ASRC. It can be absent if there's no99 need to add ASRC support via DPCM.100 101 audio-codec:102 $ref: /schemas/types.yaml#/definitions/phandle-array103 description: |104 The phandle of an audio codec.105 With "fsl,imx-audio-spdif", either SPDIF audio codec spdif_transmitter,106 spdif_receiver or both.107 minItems: 1108 maxItems: 2109 items:110 maxItems: 1111 112 audio-cpu:113 $ref: /schemas/types.yaml#/definitions/phandle114 description: The phandle of an CPU DAI controller115 116 audio-routing:117 $ref: /schemas/types.yaml#/definitions/non-unique-string-array118 description:119 A list of the connections between audio components. Each entry is a120 pair of strings, the first being the connection's sink, the second121 being the connection's source. There're a few pre-designed board122 connectors. "AMIC" stands for Analog Microphone Jack.123 "DMIC" stands for Digital Microphone Jack. The "Mic Jack" and "AMIC"124 are redundant while coexisting in order to support the old bindings125 of wm8962 and sgtl5000.126 127 hp-det-gpio:128 deprecated: true129 maxItems: 1130 description: The GPIO that detect headphones are plugged in131 132 hp-det-gpios:133 maxItems: 1134 description: The GPIO that detect headphones are plugged in135 136 mic-det-gpio:137 deprecated: true138 maxItems: 1139 description: The GPIO that detect microphones are plugged in140 141 mic-det-gpios:142 maxItems: 1143 description: The GPIO that detect microphones are plugged in144 145 bitclock-master:146 $ref: simple-card.yaml#/definitions/bitclock-master147 description: Indicates dai-link bit clock master.148 149 frame-master:150 $ref: simple-card.yaml#/definitions/frame-master151 description: Indicates dai-link frame master.152 153 format:154 $ref: simple-card.yaml#/definitions/format155 description: audio format.156 157 frame-inversion:158 $ref: simple-card.yaml#/definitions/frame-inversion159 description: dai-link uses frame clock inversion.160 161 bitclock-inversion:162 $ref: simple-card.yaml#/definitions/bitclock-inversion163 description: dai-link uses bit clock inversion.164 165 mclk-id:166 $ref: /schemas/types.yaml#/definitions/uint32-array167 description: Main clock id for each codec, specific for each card configuration.168 minItems: 1169 maxItems: 2170 171 mux-int-port:172 $ref: /schemas/types.yaml#/definitions/uint32173 enum: [1, 2, 7]174 description: The internal port of the i.MX audio muxer (AUDMUX)175 176 mux-ext-port:177 $ref: /schemas/types.yaml#/definitions/uint32178 enum: [3, 4, 5, 6]179 description: The external port of the i.MX audio muxer180 181 ssi-controller:182 $ref: /schemas/types.yaml#/definitions/phandle183 description: The phandle of an CPU DAI controller184 185 spdif-controller:186 $ref: /schemas/types.yaml#/definitions/phandle187 deprecated: true188 description: The phandle of an S/PDIF CPU DAI controller.189 190 spdif-out:191 type: boolean192 deprecated: true193 description: |194 If present, the transmitting function of S/PDIF will be enabled,195 indicating there's a physical S/PDIF out connector or jack on the196 board or it's connecting to some other IP block, such as an HDMI197 encoder or display-controller.198 199 spdif-in:200 type: boolean201 deprecated: true202 description: |203 If present, the receiving function of S/PDIF will be enabled,204 indicating there is a physical S/PDIF in connector/jack on the board.205 206required:207 - compatible208 - model209 210unevaluatedProperties: false211 212examples:213 - |214 sound-cs42888 {215 compatible = "fsl,imx-audio-cs42888";216 model = "cs42888-audio";217 audio-cpu = <&esai>;218 audio-asrc = <&asrc>;219 audio-codec = <&cs42888>;220 audio-routing =221 "Line Out Jack", "AOUT1L",222 "Line Out Jack", "AOUT1R",223 "Line Out Jack", "AOUT2L",224 "Line Out Jack", "AOUT2R",225 "Line Out Jack", "AOUT3L",226 "Line Out Jack", "AOUT3R",227 "Line Out Jack", "AOUT4L",228 "Line Out Jack", "AOUT4R",229 "AIN1L", "Line In Jack",230 "AIN1R", "Line In Jack",231 "AIN2L", "Line In Jack",232 "AIN2R", "Line In Jack";233 };234 235 - |236 sound-spdif-asrc {237 compatible = "fsl,imx-audio-spdif";238 model = "spdif-asrc-audio";239 audio-cpu = <&spdif>;240 audio-asrc = <&easrc>;241 audio-codec = <&spdifdit>, <&spdifdir>;242 };243