About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog

Documentation / devicetree / bindings / sound / audio-graph-scu-card.txt


Based on kernel version 4.16.1. Page generated on 2018-04-09 11:52 EST.

1	Audio-Graph-SCU-Card:
2	
3	Audio-Graph-SCU-Card is "Audio-Graph-Card" + "ALSA DPCM".
4	
5	It is based on common bindings for device graphs.
6	see ${LINUX}/Documentation/devicetree/bindings/graph.txt
7	
8	Basically, Audio-Graph-SCU-Card property is same as
9	Simple-Card / Simple-SCU-Card / Audio-Graph-Card.
10	see ${LINUX}/Documentation/devicetree/bindings/sound/simple-card.txt
11	    ${LINUX}/Documentation/devicetree/bindings/sound/simple-scu-card.txt
12	    ${LINUX}/Documentation/devicetree/bindings/sound/audio-graph-card.txt
13	
14	Below are same as Simple-Card / Audio-Graph-Card.
15	
16	- label
17	- dai-format
18	- frame-master
19	- bitclock-master
20	- bitclock-inversion
21	- frame-inversion
22	- dai-tdm-slot-num
23	- dai-tdm-slot-width
24	- clocks / system-clock-frequency
25	
26	Below are same as Simple-SCU-Card.
27	
28	- convert-rate
29	- convert-channels
30	- prefix
31	- routing
32	
33	Required properties:
34	
35	- compatible				: "audio-graph-scu-card";
36	- dais					: list of CPU DAI port{s}
37	
38	Example 1. Sampling Rate Conversion
39	
40		sound_card {
41			compatible = "audio-graph-scu-card";
42	
43			label = "sound-card";
44			prefix = "codec";
45			routing = "codec Playback", "DAI0 Playback",
46				  "DAI0 Capture",   "codec Capture";
47			convert-rate = <48000>;
48	
49			dais = <&cpu_port>;
50		};
51	
52		audio-codec {
53			...
54	
55			port {
56				codec_endpoint: endpoint {
57					remote-endpoint = <&cpu_endpoint>;
58				};
59			};
60		};
61	
62		dai-controller {
63			...
64			cpu_port: port {
65				cpu_endpoint: endpoint {
66					remote-endpoint = <&codec_endpoint>;
67	
68					dai-format = "left_j";
69					...
70				};
71			};
72		};
73	
74	Example 2. 2 CPU 1 Codec (Mixing)
75	
76		sound_card {
77			compatible = "audio-graph-scu-card";
78	
79			label = "sound-card";
80			prefix = "codec";
81			routing = "codec Playback", "DAI0 Playback",
82				  "codec Playback", "DAI1 Playback",
83				  "DAI0 Capture",   "codec Capture";
84			convert-rate = <48000>;
85	
86			dais = <&cpu_port0
87				&cpu_port1>;
88		};
89	
90		audio-codec {
91			...
92	
93			port {
94				codec_endpoint0: endpoint {
95					remote-endpoint = <&cpu_endpoint0>;
96				};
97				codec_endpoint1: endpoint {
98					remote-endpoint = <&cpu_endpoint1>;
99				};
100			};
101		};
102	
103		dai-controller {
104			...
105			ports {
106				cpu_port0: port {
107					cpu_endpoint0: endpoint {
108						remote-endpoint = <&codec_endpoint0>;
109	
110						dai-format = "left_j";
111						...
112					};
113				};
114				cpu_port1: port {
115					cpu_endpoint1: endpoint {
116						remote-endpoint = <&codec_endpoint1>;
117	
118						dai-format = "left_j";
119						...
120					};
121				};
122			};
123		};
Hide Line Numbers


About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog