18c2ecf20Sopenharmony_ci* Qualcomm Technologies APQ8096 ASoC sound card driver
28c2ecf20Sopenharmony_ci
38c2ecf20Sopenharmony_ciThis binding describes the APQ8096 sound card, which uses qdsp for audio.
48c2ecf20Sopenharmony_ci
58c2ecf20Sopenharmony_ci- compatible:
68c2ecf20Sopenharmony_ci	Usage: required
78c2ecf20Sopenharmony_ci	Value type: <stringlist>
88c2ecf20Sopenharmony_ci	Definition: must be "qcom,apq8096-sndcard"
98c2ecf20Sopenharmony_ci
108c2ecf20Sopenharmony_ci- audio-routing:
118c2ecf20Sopenharmony_ci	Usage: Optional
128c2ecf20Sopenharmony_ci	Value type: <stringlist>
138c2ecf20Sopenharmony_ci	Definition:  A list of the connections between audio components.
148c2ecf20Sopenharmony_ci		  Each entry is a pair of strings, the first being the
158c2ecf20Sopenharmony_ci		  connection's sink, the second being the connection's
168c2ecf20Sopenharmony_ci		  source. Valid names could be power supplies, MicBias
178c2ecf20Sopenharmony_ci		  of codec and the jacks on the board:
188c2ecf20Sopenharmony_ci		  Valid names include:
198c2ecf20Sopenharmony_ci
208c2ecf20Sopenharmony_ci		Board Connectors:
218c2ecf20Sopenharmony_ci			"Headphone Left"
228c2ecf20Sopenharmony_ci			"Headphone Right"
238c2ecf20Sopenharmony_ci			"Earphone"
248c2ecf20Sopenharmony_ci			"Line Out1"
258c2ecf20Sopenharmony_ci			"Line Out2"
268c2ecf20Sopenharmony_ci			"Line Out3"
278c2ecf20Sopenharmony_ci			"Line Out4"
288c2ecf20Sopenharmony_ci			"Analog Mic1"
298c2ecf20Sopenharmony_ci			"Analog Mic2"
308c2ecf20Sopenharmony_ci			"Analog Mic3"
318c2ecf20Sopenharmony_ci			"Analog Mic4"
328c2ecf20Sopenharmony_ci			"Analog Mic5"
338c2ecf20Sopenharmony_ci			"Analog Mic6"
348c2ecf20Sopenharmony_ci			"Digital Mic2"
358c2ecf20Sopenharmony_ci			"Digital Mic3"
368c2ecf20Sopenharmony_ci
378c2ecf20Sopenharmony_ci		Audio pins and MicBias on WCD9335 Codec:
388c2ecf20Sopenharmony_ci			"MIC_BIAS1"
398c2ecf20Sopenharmony_ci			"MIC_BIAS2"
408c2ecf20Sopenharmony_ci			"MIC_BIAS3"
418c2ecf20Sopenharmony_ci			"MIC_BIAS4"
428c2ecf20Sopenharmony_ci			"AMIC1"
438c2ecf20Sopenharmony_ci			"AMIC2"
448c2ecf20Sopenharmony_ci			"AMIC3"
458c2ecf20Sopenharmony_ci			"AMIC4"
468c2ecf20Sopenharmony_ci			"AMIC5"
478c2ecf20Sopenharmony_ci			"AMIC6"
488c2ecf20Sopenharmony_ci			"AMIC6"
498c2ecf20Sopenharmony_ci			"DMIC1"
508c2ecf20Sopenharmony_ci			"DMIC2"
518c2ecf20Sopenharmony_ci			"DMIC3"
528c2ecf20Sopenharmony_ci
538c2ecf20Sopenharmony_ci- model:
548c2ecf20Sopenharmony_ci	Usage: required
558c2ecf20Sopenharmony_ci	Value type: <stringlist>
568c2ecf20Sopenharmony_ci	Definition: The user-visible name of this sound card.
578c2ecf20Sopenharmony_ci
588c2ecf20Sopenharmony_ci- aux-devs
598c2ecf20Sopenharmony_ci	Usage: optional
608c2ecf20Sopenharmony_ci	Value type: <array of phandles>
618c2ecf20Sopenharmony_ci	Definition: A list of phandles for auxiliary devices (e.g. analog
628c2ecf20Sopenharmony_ci		    amplifiers) that do not appear directly within the DAI
638c2ecf20Sopenharmony_ci		    links. Should be connected to another audio component
648c2ecf20Sopenharmony_ci		    using "audio-routing".
658c2ecf20Sopenharmony_ci
668c2ecf20Sopenharmony_ci= dailinks
678c2ecf20Sopenharmony_ciEach subnode of sndcard represents either a dailink, and subnodes of each
688c2ecf20Sopenharmony_cidailinks would be cpu/codec/platform dais.
698c2ecf20Sopenharmony_ci
708c2ecf20Sopenharmony_ci- link-name:
718c2ecf20Sopenharmony_ci	Usage: required
728c2ecf20Sopenharmony_ci	Value type: <string>
738c2ecf20Sopenharmony_ci	Definition: User friendly name for dai link
748c2ecf20Sopenharmony_ci
758c2ecf20Sopenharmony_ci= CPU, PLATFORM, CODEC dais subnodes
768c2ecf20Sopenharmony_ci- cpu:
778c2ecf20Sopenharmony_ci	Usage: required
788c2ecf20Sopenharmony_ci	Value type: <subnode>
798c2ecf20Sopenharmony_ci	Definition: cpu dai sub-node
808c2ecf20Sopenharmony_ci
818c2ecf20Sopenharmony_ci- codec:
828c2ecf20Sopenharmony_ci	Usage: Optional
838c2ecf20Sopenharmony_ci	Value type: <subnode>
848c2ecf20Sopenharmony_ci	Definition: codec dai sub-node
858c2ecf20Sopenharmony_ci
868c2ecf20Sopenharmony_ci- platform:
878c2ecf20Sopenharmony_ci	Usage: Optional
888c2ecf20Sopenharmony_ci	Value type: <subnode>
898c2ecf20Sopenharmony_ci	Definition: platform dai sub-node
908c2ecf20Sopenharmony_ci
918c2ecf20Sopenharmony_ci- sound-dai:
928c2ecf20Sopenharmony_ci	Usage: required
938c2ecf20Sopenharmony_ci	Value type: <phandle with arguments>
948c2ecf20Sopenharmony_ci	Definition: dai phandle/s and port of CPU/CODEC/PLATFORM node.
958c2ecf20Sopenharmony_ci
968c2ecf20Sopenharmony_ciObsolete:
978c2ecf20Sopenharmony_ci	qcom,model: String for soundcard name (Use model instead)
988c2ecf20Sopenharmony_ci	qcom,audio-routing: A list of the connections between audio components.
998c2ecf20Sopenharmony_ci			    (Use audio-routing instead)
1008c2ecf20Sopenharmony_ci
1018c2ecf20Sopenharmony_ciExample:
1028c2ecf20Sopenharmony_ci
1038c2ecf20Sopenharmony_ciaudio {
1048c2ecf20Sopenharmony_ci	compatible = "qcom,apq8096-sndcard";
1058c2ecf20Sopenharmony_ci	model = "DB820c";
1068c2ecf20Sopenharmony_ci
1078c2ecf20Sopenharmony_ci	mm1-dai-link {
1088c2ecf20Sopenharmony_ci		link-name = "MultiMedia1";
1098c2ecf20Sopenharmony_ci		cpu {
1108c2ecf20Sopenharmony_ci			sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA1>;
1118c2ecf20Sopenharmony_ci		};
1128c2ecf20Sopenharmony_ci	};
1138c2ecf20Sopenharmony_ci
1148c2ecf20Sopenharmony_ci	hdmi-dai-link {
1158c2ecf20Sopenharmony_ci		link-name = "HDMI Playback";
1168c2ecf20Sopenharmony_ci		cpu {
1178c2ecf20Sopenharmony_ci			sound-dai = <&q6afe HDMI_RX>;
1188c2ecf20Sopenharmony_ci		};
1198c2ecf20Sopenharmony_ci
1208c2ecf20Sopenharmony_ci		platform {
1218c2ecf20Sopenharmony_ci			sound-dai = <&q6adm>;
1228c2ecf20Sopenharmony_ci		};
1238c2ecf20Sopenharmony_ci
1248c2ecf20Sopenharmony_ci		codec {
1258c2ecf20Sopenharmony_ci			sound-dai = <&hdmi 0>;
1268c2ecf20Sopenharmony_ci		};
1278c2ecf20Sopenharmony_ci	};
1288c2ecf20Sopenharmony_ci};
129