Skip to content

Commit 623cd9c

Browse files
TE-N-ShengjiuWangbroonie
authored andcommitted
ASoC: dt-bindings: imx-card: Add binding doc for imx sound card
Imx-card is a new added machine driver for supporting ak4458/ak5558/ak5552/ak4497 codec on i.MX platforms. But these DAC/ADCs are not only supported codecs. This machine driver is designed to be a more common machine driver for i.MX platform, it can support widely cpu dai interface and codec dai interface. Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com> Reviewed-by: Rob Herring <robh@kernel.org> Link: https://lore.kernel.org/r/1621247488-21412-1-git-send-email-shengjiu.wang@nxp.com Signed-off-by: Mark Brown <broonie@kernel.org>
1 parent b9c035a commit 623cd9c

File tree

1 file changed

+122
-0
lines changed

1 file changed

+122
-0
lines changed
Lines changed: 122 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,122 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/sound/imx-audio-card.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: NXP i.MX audio sound card.
8+
9+
maintainers:
10+
- Shengjiu Wang <shengjiu.wang@nxp.com>
11+
12+
properties:
13+
compatible:
14+
enum:
15+
- fsl,imx-audio-card
16+
17+
model:
18+
$ref: /schemas/types.yaml#/definitions/string
19+
description: User specified audio sound card name
20+
21+
audio-routing:
22+
$ref: /schemas/types.yaml#/definitions/non-unique-string-array
23+
description:
24+
A list of the connections between audio components. Each entry is a
25+
pair of strings, the first being the connection's sink, the second
26+
being the connection's source. Valid names could be power supplies,
27+
MicBias of codec and the jacks on the board.
28+
29+
patternProperties:
30+
".*-dai-link$":
31+
description:
32+
Each subnode represents a dai link. Subnodes of each dai links would be
33+
cpu/codec dais.
34+
35+
type: object
36+
37+
properties:
38+
link-name:
39+
description: Indicates dai-link name and PCM stream name.
40+
$ref: /schemas/types.yaml#/definitions/string
41+
maxItems: 1
42+
43+
format:
44+
description: audio format.
45+
items:
46+
enum:
47+
- i2s
48+
- dsp_b
49+
50+
dai-tdm-slot-num:
51+
description: see tdm-slot.txt.
52+
$ref: /schemas/types.yaml#/definitions/uint32
53+
54+
dai-tdm-slot-width:
55+
description: see tdm-slot.txt.
56+
$ref: /schemas/types.yaml#/definitions/uint32
57+
58+
cpu:
59+
description: Holds subnode which indicates cpu dai.
60+
type: object
61+
properties:
62+
sound-dai: true
63+
64+
codec:
65+
description: Holds subnode which indicates codec dai.
66+
type: object
67+
properties:
68+
sound-dai: true
69+
70+
fsl,mclk-equal-bclk:
71+
description: Indicates mclk can be equal to bclk, especially for sai interface
72+
$ref: /schemas/types.yaml#/definitions/flag
73+
74+
required:
75+
- link-name
76+
- cpu
77+
78+
additionalProperties: false
79+
80+
required:
81+
- compatible
82+
- model
83+
84+
additionalProperties: false
85+
86+
examples:
87+
- |
88+
sound-ak4458 {
89+
compatible = "fsl,imx-audio-card";
90+
model = "ak4458-audio";
91+
pri-dai-link {
92+
link-name = "akcodec";
93+
format = "i2s";
94+
fsl,mclk-equal-bclk;
95+
cpu {
96+
sound-dai = <&sai1>;
97+
};
98+
codec {
99+
sound-dai = <&ak4458_1>, <&ak4458_2>;
100+
};
101+
};
102+
fe-dai-link {
103+
link-name = "HiFi-ASRC-FE";
104+
format = "i2s";
105+
cpu {
106+
sound-dai = <&easrc>;
107+
};
108+
};
109+
be-dai-link {
110+
link-name = "HiFi-ASRC-BE";
111+
format = "dsp_b";
112+
dai-tdm-slot-num = <8>;
113+
dai-tdm-slot-width = <32>;
114+
fsl,mclk-equal-bclk;
115+
cpu {
116+
sound-dai = <&sai1>;
117+
};
118+
codec {
119+
sound-dai = <&ak4458_1>, <&ak4458_2>;
120+
};
121+
};
122+
};

0 commit comments

Comments
 (0)