diff options
author | Srinivas Kandagatla <srinivas.kandagatla@linaro.org> | 2020-08-18 14:50:31 +0100 |
---|---|---|
committer | Srinivas Kandagatla <srinivas.kandagatla@linaro.org> | 2020-08-18 16:44:18 +0100 |
commit | ef16e7d79d40928bcbfe0fe8dfe8361248f61f56 (patch) | |
tree | b56facf7c4205f51bf6e614b802f48f714982551 | |
parent | b547483a87ea0148f3bb098449bc224c578f8e54 (diff) |
arm64: dts: qrb5165-rb5: add analog audio supportwip/tracking-qcomlt-sm8250
Test HDMI audio:
amixer cset iface=MIXER,name='TERT_MI2S_RX Audio Mixer MultiMedia1' 1
aplay /usr/share/sounds/alsa/Front_Center.wav
To Test Analog Audio:
amixer cset iface=MIXER,name='WSA RX0 MUX' 'AIF1_PB'
amixer cset iface=MIXER,name='WSA RX1 MUX' 'AIF1_PB'
amixer cset iface=MIXER,name='WSA_RX0 INP0' 'RX0'
amixer cset iface=MIXER,name='WSA_RX1 INP0' 'RX1'
amixer cset iface=MIXER,name='WSA_COMP1 Switch' 1
amixer cset iface=MIXER,name='WSA_COMP2 Switch' 1
amixer cset iface=MIXER,name='SpkrLeft COMP Switch' 1
amixer cset iface=MIXER,name='SpkrLeft BOOST Switch' 1
amixer cset iface=MIXER,name='SpkrLeft VISENSE Switch' 1
amixer cset iface=MIXER,name='SpkrLeft SWR DAC_Port Switch' 1
amixer cset iface=MIXER,name='SpkrRight COMP Switch' 1
amixer cset iface=MIXER,name='SpkrRight BOOST Switch' 1
amixer cset iface=MIXER,name='SpkrRight VISENSE Switch' 1
amixer cset iface=MIXER,name='SpkrRight SWR DAC_Port Switch' 1
amixer cset iface=MIXER,name='WSA_RX0 Digital Volume' 68
amixer cset iface=MIXER,name='WSA_RX1 Digital Volume' 68
amixer cset iface=MIXER,name='WSA_CODEC_DMA_RX_0 Audio Mixer MultiMedia2' 1
aplay -D plughw:0,1 /usr/share/sounds/alsa/Front_Center.wav
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
-rw-r--r-- | arch/arm64/boot/dts/qcom/qrb5165-rb5.dts | 70 | ||||
-rw-r--r-- | arch/arm64/boot/dts/qcom/sm8250.dtsi | 41 |
2 files changed, 105 insertions, 6 deletions
diff --git a/arch/arm64/boot/dts/qcom/qrb5165-rb5.dts b/arch/arm64/boot/dts/qcom/qrb5165-rb5.dts index 849728e5cb228..8d79f1246af91 100644 --- a/arch/arm64/boot/dts/qcom/qrb5165-rb5.dts +++ b/arch/arm64/boot/dts/qcom/qrb5165-rb5.dts @@ -543,20 +543,56 @@ }; }; +/* TERT I2S Uses 1 I2S SD Lines for audio on LT9611 HDMI Bridge */ +&q6afedai { + qi2s@20 { + reg = <20>; + qcom,sd-lines = <0>; + }; +}; + &q6asmdai { dai@0 { reg = <0>; }; + + dai@1 { + reg = <1>; + }; +}; + +&swr0 { + left_right: wsa8810-right{ + compatible = "sdw10217211000"; + reg = <0 2>; + powerdown-gpios = <&tlmm 130 GPIO_ACTIVE_HIGH>; + #thermal-sensor-cells = <0>; + sound-name-prefix = "SpkrRight"; + #sound-dai-cells = <0>; + }; + + left_spkr: wsa8810-left{ + compatible = "sdw10217211000"; + reg = <0 1>; + powerdown-gpios = <&tlmm 130 GPIO_ACTIVE_HIGH>; + #thermal-sensor-cells = <0>; + sound-name-prefix = "SpkrLeft"; + #sound-dai-cells = <0>; + }; }; &sound { compatible = "qcom,sm8250-sndcard"; - pinctrl-0 = <&pri_mi2s_sck_active - &pri_mi2s_sd0_active - &pri_mi2s_sd1_active - &pri_mi2s_ws_active>; + pinctrl-0 = <&tert_mi2s_sck_active + &tert_mi2s_sd0_active + &tert_mi2s_ws_active>; pinctrl-names = "default"; model = "RB5"; + audio-routing = + "SpkrLeft IN", "WSA_SPK1 OUT", + "SpkrRight IN", "SPK2 OUT", + "MM_DL1", "MultiMedia1 Playback", + "MM_DL2", "MultiMedia2 Playback"; mm1-dai-link { link-name = "MultiMedia1"; @@ -565,10 +601,17 @@ }; }; + mm2-dai-link { + link-name = "MultiMedia2"; + cpu { + sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA2>; + }; + }; + hdmi-dai-link { - link-name = "LS-I2S Playback"; + link-name = "HDMI Playback"; cpu { - sound-dai = <&q6afedai PRIMARY_MI2S_RX>; + sound-dai = <&q6afedai TERTIARY_MI2S_RX>; }; platform { @@ -579,6 +622,21 @@ sound-dai = <<9611_codec 0>; }; }; + + dma-dai-link { + link-name = "WSA Playback"; + cpu { + sound-dai = <&q6afedai WSA_CODEC_DMA_RX_0>; + }; + + platform { + sound-dai = <&q6routing>; + }; + + codec { + sound-dai = <&left_spkr>, <&swr0 0>, <&wsamacro>; + }; + }; }; &dsi0 { diff --git a/arch/arm64/boot/dts/qcom/sm8250.dtsi b/arch/arm64/boot/dts/qcom/sm8250.dtsi index 8fb98faa234dd..a561dae598dec 100644 --- a/arch/arm64/boot/dts/qcom/sm8250.dtsi +++ b/arch/arm64/boot/dts/qcom/sm8250.dtsi @@ -3040,6 +3040,47 @@ output-high; }; }; + + tert_mi2s_sck_active: tert-mi2s-sck-active { + mux { + pins = "gpio133"; + function = "mi2s2_sck"; + }; + + config { + pins = "gpio133"; + drive-strength = <8>; + bias-disable; + output-high; + }; + }; + + tert_mi2s_sd0_active: tert-mi2s-sd0-active { + mux { + pins = "gpio134"; + function = "mi2s2_data0"; + }; + + config { + pins = "gpio134"; + drive-strength = <8>; + bias-disable; + output-high; + }; + }; + + tert_mi2s_ws_active: tert-mi2s-ws-active { + mux { + pins = "gpio135"; + function = "mi2s2_ws"; + }; + + config { + pins = "gpio135"; + drive-strength = <8>; + output-high; + }; + }; }; apps_smmu: iommu@15000000 { |