18c2ecf20Sopenharmony_ciAmlogic AXG sound card:
28c2ecf20Sopenharmony_ci
38c2ecf20Sopenharmony_ciRequired properties:
48c2ecf20Sopenharmony_ci
58c2ecf20Sopenharmony_ci- compatible: "amlogic,axg-sound-card"
68c2ecf20Sopenharmony_ci- model : User specified audio sound card name, one string
78c2ecf20Sopenharmony_ci
88c2ecf20Sopenharmony_ciOptional properties:
98c2ecf20Sopenharmony_ci
108c2ecf20Sopenharmony_ci- audio-aux-devs : List of phandles pointing to auxiliary devices
118c2ecf20Sopenharmony_ci- audio-widgets : Please refer to widgets.txt.
128c2ecf20Sopenharmony_ci- audio-routing : A list of the connections between audio components.
138c2ecf20Sopenharmony_ci
148c2ecf20Sopenharmony_ciSubnodes:
158c2ecf20Sopenharmony_ci
168c2ecf20Sopenharmony_ci- dai-link: Container for dai-link level properties and the CODEC
178c2ecf20Sopenharmony_ci	    sub-nodes. There should be at least one (and probably more)
188c2ecf20Sopenharmony_ci	    subnode of this type.
198c2ecf20Sopenharmony_ci
208c2ecf20Sopenharmony_ciRequired dai-link properties:
218c2ecf20Sopenharmony_ci
228c2ecf20Sopenharmony_ci- sound-dai: phandle and port of the CPU DAI.
238c2ecf20Sopenharmony_ci
248c2ecf20Sopenharmony_ciRequired TDM Backend dai-link properties:
258c2ecf20Sopenharmony_ci- dai-format : CPU/CODEC common audio format
268c2ecf20Sopenharmony_ci
278c2ecf20Sopenharmony_ciOptional TDM Backend dai-link properties:
288c2ecf20Sopenharmony_ci- dai-tdm-slot-rx-mask-{0,1,2,3}: Receive direction slot masks
298c2ecf20Sopenharmony_ci- dai-tdm-slot-tx-mask-{0,1,2,3}: Transmit direction slot masks
308c2ecf20Sopenharmony_ci				  When omitted, mask is assumed to have to no
318c2ecf20Sopenharmony_ci				  slots. A valid must have at one slot, so at
328c2ecf20Sopenharmony_ci				  least one these mask should be provided with
338c2ecf20Sopenharmony_ci				  an enabled slot.
348c2ecf20Sopenharmony_ci- dai-tdm-slot-num : Please refer to tdm-slot.txt.
358c2ecf20Sopenharmony_ci		     If omitted, slot number is set to accommodate the largest
368c2ecf20Sopenharmony_ci		     mask provided.
378c2ecf20Sopenharmony_ci- dai-tdm-slot-width : Please refer to tdm-slot.txt. default to 32 if omitted.
388c2ecf20Sopenharmony_ci- mclk-fs : Multiplication factor between stream rate and mclk
398c2ecf20Sopenharmony_ci
408c2ecf20Sopenharmony_ciBackend dai-link subnodes:
418c2ecf20Sopenharmony_ci
428c2ecf20Sopenharmony_ci- codec: dai-link representing backend links should have at least one subnode.
438c2ecf20Sopenharmony_ci	 One subnode for each codec of the dai-link.
448c2ecf20Sopenharmony_ci	 dai-link representing frontend links have no codec, therefore have no
458c2ecf20Sopenharmony_ci	 subnodes
468c2ecf20Sopenharmony_ci
478c2ecf20Sopenharmony_ciRequired codec subnodes properties:
488c2ecf20Sopenharmony_ci
498c2ecf20Sopenharmony_ci- sound-dai: phandle and port of the CODEC DAI.
508c2ecf20Sopenharmony_ci
518c2ecf20Sopenharmony_ciOptional codec subnodes properties:
528c2ecf20Sopenharmony_ci
538c2ecf20Sopenharmony_ci- dai-tdm-slot-tx-mask : Please refer to tdm-slot.txt.
548c2ecf20Sopenharmony_ci- dai-tdm-slot-rx-mask : Please refer to tdm-slot.txt.
558c2ecf20Sopenharmony_ci
568c2ecf20Sopenharmony_ciExample:
578c2ecf20Sopenharmony_ci
588c2ecf20Sopenharmony_cisound {
598c2ecf20Sopenharmony_ci	compatible = "amlogic,axg-sound-card";
608c2ecf20Sopenharmony_ci	model = "AXG-S420";
618c2ecf20Sopenharmony_ci	audio-aux-devs = <&tdmin_a>, <&tdmout_c>;
628c2ecf20Sopenharmony_ci	audio-widgets = "Line", "Lineout",
638c2ecf20Sopenharmony_ci			"Line", "Linein",
648c2ecf20Sopenharmony_ci			"Speaker", "Speaker1 Left",
658c2ecf20Sopenharmony_ci			"Speaker", "Speaker1 Right";
668c2ecf20Sopenharmony_ci			"Speaker", "Speaker2 Left",
678c2ecf20Sopenharmony_ci			"Speaker", "Speaker2 Right";
688c2ecf20Sopenharmony_ci	audio-routing = "TDMOUT_C IN 0", "FRDDR_A OUT 2",
698c2ecf20Sopenharmony_ci			"SPDIFOUT IN 0", "FRDDR_A OUT 3",
708c2ecf20Sopenharmony_ci			"TDM_C Playback", "TDMOUT_C OUT",
718c2ecf20Sopenharmony_ci			"TDMIN_A IN 2", "TDM_C Capture",
728c2ecf20Sopenharmony_ci			"TDMIN_A IN 5", "TDM_C Loopback",
738c2ecf20Sopenharmony_ci			"TODDR_A IN 0", "TDMIN_A OUT",
748c2ecf20Sopenharmony_ci			"Lineout", "Lineout AOUTL",
758c2ecf20Sopenharmony_ci			"Lineout", "Lineout AOUTR",
768c2ecf20Sopenharmony_ci			"Speaker1 Left", "SPK1 OUT_A",
778c2ecf20Sopenharmony_ci			"Speaker2 Left", "SPK2 OUT_A",
788c2ecf20Sopenharmony_ci			"Speaker1 Right", "SPK1 OUT_B",
798c2ecf20Sopenharmony_ci			"Speaker2 Right", "SPK2 OUT_B",
808c2ecf20Sopenharmony_ci			"Linein AINL", "Linein",
818c2ecf20Sopenharmony_ci			"Linein AINR", "Linein";
828c2ecf20Sopenharmony_ci
838c2ecf20Sopenharmony_ci	dai-link@0 {
848c2ecf20Sopenharmony_ci		sound-dai = <&frddr_a>;
858c2ecf20Sopenharmony_ci	};
868c2ecf20Sopenharmony_ci
878c2ecf20Sopenharmony_ci	dai-link@1 {
888c2ecf20Sopenharmony_ci		sound-dai = <&toddr_a>;
898c2ecf20Sopenharmony_ci	};
908c2ecf20Sopenharmony_ci
918c2ecf20Sopenharmony_ci	dai-link@2 {
928c2ecf20Sopenharmony_ci		sound-dai = <&tdmif_c>;
938c2ecf20Sopenharmony_ci		dai-format = "i2s";
948c2ecf20Sopenharmony_ci		dai-tdm-slot-tx-mask-2 = <1 1>;
958c2ecf20Sopenharmony_ci		dai-tdm-slot-tx-mask-3 = <1 1>;
968c2ecf20Sopenharmony_ci		dai-tdm-slot-rx-mask-1 = <1 1>;
978c2ecf20Sopenharmony_ci		mclk-fs = <256>;
988c2ecf20Sopenharmony_ci
998c2ecf20Sopenharmony_ci		codec@0 {
1008c2ecf20Sopenharmony_ci			sound-dai = <&lineout>;
1018c2ecf20Sopenharmony_ci		};
1028c2ecf20Sopenharmony_ci
1038c2ecf20Sopenharmony_ci		codec@1 {
1048c2ecf20Sopenharmony_ci			sound-dai = <&speaker_amp1>;
1058c2ecf20Sopenharmony_ci		};
1068c2ecf20Sopenharmony_ci
1078c2ecf20Sopenharmony_ci		codec@2 {
1088c2ecf20Sopenharmony_ci			sound-dai = <&speaker_amp2>;
1098c2ecf20Sopenharmony_ci		};
1108c2ecf20Sopenharmony_ci
1118c2ecf20Sopenharmony_ci		codec@3 {
1128c2ecf20Sopenharmony_ci			sound-dai = <&linein>;
1138c2ecf20Sopenharmony_ci		};
1148c2ecf20Sopenharmony_ci
1158c2ecf20Sopenharmony_ci	};
1168c2ecf20Sopenharmony_ci
1178c2ecf20Sopenharmony_ci	dai-link@3 {
1188c2ecf20Sopenharmony_ci		sound-dai = <&spdifout>;
1198c2ecf20Sopenharmony_ci
1208c2ecf20Sopenharmony_ci		codec {
1218c2ecf20Sopenharmony_ci			sound-dai = <&spdif_dit>;
1228c2ecf20Sopenharmony_ci		};
1238c2ecf20Sopenharmony_ci	};
1248c2ecf20Sopenharmony_ci};
125