new file mode 100644
@@ -0,0 +1,25 @@
+* Qualcomm Technologies IPQ806x SoundCard
+
+This node models the Qualcomm Technologies IPQ806x LPASS Audio SoundCard,
+with a connection between the CPU MI2S DAI and the external DAC.
+
+Required properties:
+- compatible : "qcom,ipq806x-snd-card"
+- qcom,model : The user-visible name of this sound card
+ * <any string is valid>
+- platform : This is a phandle reference to platform device driver node (for the soundcard dai-link)
+- cpu : This is a phandle reference to CPU DAI device driver node (for the soundcard dai-link)
+- codec : This is a phandle reference to codec DAI device driver node (for the soundcard dai-link)
+- codec-dai : This is a string that names the codec DAI device (for the soundcard dai-link)
+ * max98357a-codec-dai
+
+Example:
+
+sound {
+ compatible = "qcom,ipq806x-snd-card";
+ model = "ipq806x-snd-card";
+ platform = <&lpass_pcm_mi2s>;
+ cpu = <&lpass_cpu_mi2s>;
+ codec = <&max98357a_codec>;
+ codec-dai = "max98357a-codec-dai";
+};
new file mode 100644
@@ -0,0 +1,32 @@
+* Qualcomm Technologies IPQ806x LPASS DAI
+
+This node models the Qualcomm Technologies IPQ806x LPASS MI2S DAI port.
+
+Required properties:
+- compatible : "qcom,lpass-cpu-mi2s"
+- reg : Address space for the LPASS audio interface registers
+- reg-names : The name of the LPASS audio interface register address space
+ * lpass-lpaif-mem
+- clocks : A list of clock specifiers for the audio interface
+ * AHBIX bus clock
+ * MI2S OSR clock
+ * MI2S Bit clock
+- clock-names : A list of audio interface clock names
+ * ahbix_clk
+ * mi2s_osr_clk
+ * mi2s_bit_clk
+- interrupts : Phandle to the LPASS audio interface interrupt
+- interrupt-names : The name of the LPASS audio interface interrupt
+ * lpass-lpaif-irq
+
+Example:
+
+lpass-cpu-mi2s {
+ compatible = "qcom,lpass-cpu-dai";
+ reg = <0x28100000 0x10000>;
+ reg-names = "lpass-lpaif-mem";
+ clocks = <&lcc AHBIX_CLK>, <&lcc MI2S_OSR_CLK>, <&lcc MI2S_BIT_CLK>;
+ clock-names = "ahbix_clk", "mi2s_osr_clk", "mi2s_bit_clk";
+ interrupts = <0 85 1>;
+ interrupt-names = "lpass-lpaif-irq";
+};
new file mode 100644
@@ -0,0 +1,12 @@
+* Qualcomm Technologies IPQ806x PCM audio interface
+
+This node models the Qualcomm Technologies IPQ806x PCM audio interface.
+
+Required properties:
+- compatible : "qcom,lpass-pcm-mi2s"
+
+Example:
+
+lpass-pcm-mi2s {
+ compatible = "qcom,lpass-pcm-mi2s";
+};
new file mode 100644
@@ -0,0 +1,23 @@
+* Maxim MAX98357A DAC
+
+This node models the Maxim MAX98357A DAC as a codec DAI.
+This is for audio on the Qualcomm IPQ806x SOC.
+
+Required properties:
+- compatible : "qcom,max98357a-codec"
+- dac-gpios : Phandle to the GPIO specifier for the GPIO -> DAC SDMODE pin
+- pinctrl-names : A list of names indicating the state of the MI2S pins
+ * mi2s-disabled
+ * mi2s-enabled
+- pinctrl-0 : The disabled state of the MI2S pins
+- pinctrl-1 : The enabled state of the MI2S pins
+
+Example:
+
+max98357a-codec {
+ compatible = "qcom,max98357a-codec";
+ dac-gpios = <&qcom_pinmux 25 0>;
+ pinctrl-names = "mi2s-disabled", "mi2s_enabled";
+ pinctrl-0 = <&mi2s_disabled>;
+ pinctrl-1 = <&mi2s_enabled>;
+};