@@ -114,7 +114,8 @@ sound {
audio-routing = "IN3_AUX", "AUX_OUT",
"SpkrMono WSA_IN", "AUX",
"MM_DL1", "MultiMedia1 Playback",
- "MM_DL2", "MultiMedia2 Playback";
+ "MM_DL2", "MultiMedia2 Playback",
+ "MultiMedia3 Capture", "MM_UL3";
mm1-dai-link {
link-name = "MultiMedia1";
@@ -132,6 +133,14 @@ cpu {
};
};
+ mm3-dai-link {
+ link-name = "MultiMedia3";
+
+ cpu {
+ sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA3>;
+ };
+ };
+
hdmi-i2s-dai-link {
link-name = "HDMI/I2S Playback";
@@ -163,6 +172,22 @@ codec {
sound-dai = <&wsa881x>, <&wcd937x 0>, <&swr1 3>, <&rxmacro 1>;
};
};
+
+ va-dai-link {
+ link-name = "VA Capture";
+
+ cpu {
+ sound-dai = <&q6afedai VA_CODEC_DMA_TX_0>;
+ };
+
+ platform {
+ sound-dai = <&q6routing>;
+ };
+
+ codec {
+ sound-dai = <&vamacro 0>;
+ };
+ };
};
wcd937x: codec {
@@ -827,6 +852,12 @@ &usb_qmpphy_out {
remote-endpoint = <&pmi632_ss_in>;
};
+&vamacro {
+ pinctrl-0 = <&lpass_dmic01_active>;
+ pinctrl-names = "default";
+ qcom,dmic-sample-rate = <2400000>;
+};
+
&wifi {
vdd-0.8-cx-mx-supply = <&vreg_l8a_0p664>;
vdd-1.8-xo-supply = <&vreg_l16a_1p3>;
Add support for audio capture using onboard DMIC. It is directly connected to vamacro and txmacro without any soundwire interfaces. The capture was verified using the following commands: amixer -c0 cset iface=MIXER,name='MultiMedia3 Mixer VA_CODEC_DMA_TX_0' 1 amixer -c0 cset iface=MIXER,name='VA_AIF1_CAP Mixer DEC0' 1 amixer -c0 cset iface=MIXER,name='VA_DEC0 Volume' 110 amixer -c0 cset iface=MIXER,name='VA DMIC MUX0' 2 arecord -D hw:0,2 -f S16_LE -c 2 -r 48000 -d 5 record.wav Cc: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> Signed-off-by: Alexey Klimov <alexey.klimov@linaro.org> --- arch/arm64/boot/dts/qcom/qrb4210-rb2.dts | 33 +++++++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-)