blob: 23d83fa7609f39ccc8ec1ddd7a1827c57d2ea4a2 [file] [log] [blame]
Nicolin Chen708b4352014-07-30 19:27:38 +08001Freescale Generic ASoC Sound Card with ASRC support
2
3The Freescale Generic ASoC Sound Card can be used, ideally, for all Freescale
4SoCs connecting with external CODECs.
5
6The idea of this generic sound card is a bit like ASoC Simple Card. However,
7for Freescale SoCs (especially those released in recent years), most of them
8have ASRC (Documentation/devicetree/bindings/sound/fsl,asrc.txt) inside. And
9this is a specific feature that might be painstakingly controlled and merged
10into the Simple Card.
11
12So having this generic sound card allows all Freescale SoC users to benefit
13from the simplification of a new card support and the capability of the wide
14sample rates support through ASRC.
15
Maciej S. Szmigiero50760ca2015-09-19 02:00:25 +020016Note: The card is initially designed for those sound cards who use AC'97, I2S
17 and PCM DAI formats. However, it'll be also possible to support those non
18 AC'97/I2S/PCM type sound cards, such as S/PDIF audio and HDMI audio, as
19 long as the driver has been properly upgraded.
Nicolin Chen708b4352014-07-30 19:27:38 +080020
21
22The compatible list for this generic sound card currently:
Maciej S. Szmigiero50760ca2015-09-19 02:00:25 +020023 "fsl,imx-audio-ac97"
24
Nicolin Chen708b4352014-07-30 19:27:38 +080025 "fsl,imx-audio-cs42888"
26
Felipe F. Tonello57e756d2016-01-29 11:01:00 +000027 "fsl,imx-audio-cs427x"
28 (compatible with CS4271 and CS4272)
29
Nicolin Chen708b4352014-07-30 19:27:38 +080030 "fsl,imx-audio-wm8962"
Nicolin Chen708b4352014-07-30 19:27:38 +080031
32 "fsl,imx-audio-sgtl5000"
33 (compatible with Documentation/devicetree/bindings/sound/imx-audio-sgtl5000.txt)
34
Xiubo Li2935bf42016-01-15 13:33:08 +080035 "fsl,imx-audio-wm8960"
36
Shengjiu Wang56d66632020-06-17 12:48:24 +080037 "fsl,imx-audio-mqs"
38
Shengjiu Wang3b3372f2020-06-23 14:52:47 +080039 "fsl,imx-audio-wm8524"
40
Matthias Schiffer6d3029e2020-08-21 09:11:52 +020041 "fsl,imx-audio-tlv320aic32x4"
42
Shengjiu Wang0b3355b2020-11-30 11:57:48 +080043 "fsl,imx-audio-si476x"
44
Shengjiu Wangdf8077c2021-03-17 21:05:03 +080045 "fsl,imx-audio-wm8958"
46
Nicolin Chen708b4352014-07-30 19:27:38 +080047Required properties:
48
49 - compatible : Contains one of entries in the compatible list.
50
51 - model : The user-visible name of this sound complex
52
53 - audio-cpu : The phandle of an CPU DAI controller
54
55 - audio-codec : The phandle of an audio codec
56
Shengjiu Wang56d66632020-06-17 12:48:24 +080057Optional properties:
58
59 - audio-asrc : The phandle of ASRC. It can be absent if there's no
60 need to add ASRC support via DPCM.
61
Nicolin Chen708b4352014-07-30 19:27:38 +080062 - audio-routing : A list of the connections between audio components.
63 Each entry is a pair of strings, the first being the
64 connection's sink, the second being the connection's
65 source. There're a few pre-designed board connectors:
66 * Line Out Jack
67 * Line In Jack
68 * Headphone Jack
69 * Mic Jack
70 * Ext Spk
71 * AMIC (stands for Analog Microphone Jack)
72 * DMIC (stands for Digital Microphone Jack)
73
74 Note: The "Mic Jack" and "AMIC" are redundant while
Andrea Gelmini6dca83f2016-05-21 13:39:54 +020075 coexisting in order to support the old bindings
Nicolin Chen708b4352014-07-30 19:27:38 +080076 of wm8962 and sgtl5000.
77
Shengjiu Wangc3c058a2020-07-15 22:09:38 +080078 - hp-det-gpio : The GPIO that detect headphones are plugged in
79 - mic-det-gpio : The GPIO that detect microphones are plugged in
Shengjiu Wangca168352020-07-21 11:41:50 +080080 - bitclock-master : Indicates dai-link bit clock master; for details see simple-card.yaml.
81 - frame-master : Indicates dai-link frame master; for details see simple-card.yaml.
82 - dai-format : audio format, for details see simple-card.yaml.
83 - frame-inversion : dai-link uses frame clock inversion, for details see simple-card.yaml.
84 - bitclock-inversion : dai-link uses bit clock inversion, for details see simple-card.yaml.
Shengjiu Wangc3c058a2020-07-15 22:09:38 +080085
Felipe F. Tonello57e756d2016-01-29 11:01:00 +000086Optional unless SSI is selected as a CPU DAI:
87
88 - mux-int-port : The internal port of the i.MX audio muxer (AUDMUX)
89
90 - mux-ext-port : The external port of the i.MX audio muxer
91
Nicolin Chen708b4352014-07-30 19:27:38 +080092Example:
93sound-cs42888 {
94 compatible = "fsl,imx-audio-cs42888";
95 model = "cs42888-audio";
96 audio-cpu = <&esai>;
97 audio-asrc = <&asrc>;
98 audio-codec = <&cs42888>;
99 audio-routing =
100 "Line Out Jack", "AOUT1L",
101 "Line Out Jack", "AOUT1R",
102 "Line Out Jack", "AOUT2L",
103 "Line Out Jack", "AOUT2R",
104 "Line Out Jack", "AOUT3L",
105 "Line Out Jack", "AOUT3R",
106 "Line Out Jack", "AOUT4L",
107 "Line Out Jack", "AOUT4R",
108 "AIN1L", "Line In Jack",
109 "AIN1R", "Line In Jack",
110 "AIN2L", "Line In Jack",
111 "AIN2R", "Line In Jack";
112};