#include #include #include #include &spf_core_platform { rx_swr_gpios: rx_swr_clk_data_pinctrl { compatible = "qcom,msm-cdc-pinctrl"; pinctrl-names = "aud_active", "aud_sleep"; pinctrl-0 = <&rx_swr_clk_active &rx_swr_data_active>; pinctrl-1 = <&rx_swr_clk_sleep &rx_swr_data_sleep>; qcom,lpi-gpios; }; bolero: bolero-cdc { compatible = "qcom,bolero-codec"; clock-names = "lpass_audio_hw_vote"; clocks = <&lpass_audio_hw_vote 0>; bolero-clk-rsc-mngr { compatible = "qcom,bolero-clk-rsc-mngr"; }; va_macro: va-macro@0a730000 { swr0: va_swr_master { }; }; rx_macro: rx-macro@0a600000 { swr1: rx_swr_master { }; }; }; monaco_snd: sound { qcom,mi2s-audio-intf = <0>; qcom,cc-va-intf-enable = <0>; qcom,auxpcm-audio-intf = <0>; qcom,tdm-audio-intf = <0>; qcom,wcn-btfm = <0>; qcom,afe-rxtx-lb = <0>; asoc-platform = <&pcm0>, <&pcm1>, <&pcm2>, <&voip>, <&voice>, <&loopback>, <&compress>, <&hostless>, <&afe>, <&lsm>, <&routing>, <&compr>, <&pcm_noirq>; asoc-platform-names = "msm-pcm-dsp.0", "msm-pcm-dsp.1", "msm-pcm-dsp.2", "msm-voip-dsp", "msm-pcm-voice", "msm-pcm-loopback", "msm-compress-dsp", "msm-pcm-hostless", "msm-pcm-afe", "msm-lsm-client", "msm-pcm-routing", "msm-compr-dsp", "msm-pcm-dsp-noirq"; asoc-cpu = <&dai_mi2s0>, <&dai_mi2s1>, <&dai_mi2s2>, <&dai_mi2s3>, <&dai_pri_auxpcm>, <&dai_sec_auxpcm>, <&dai_tert_auxpcm>, <&dai_quat_auxpcm>, <&afe_pcm_rx>, <&afe_pcm_tx>, <&afe_proxy_rx>, <&afe_proxy_tx>, <&incall_record_rx>, <&incall_record_tx>, <&incall_music_rx>, <&incall_music_2_rx>, <&proxy_rx>, <&proxy_tx>, <&usb_audio_rx>, <&usb_audio_tx>, <&sb_7_rx>, <&sb_7_tx>, <&sb_8_tx>, <&va_cdc_dma_0_tx>, <&va_cdc_dma_1_tx>, <&va_cdc_dma_2_tx>, <&rx_cdc_dma_0_rx>, <&tx_cdc_dma_0_tx>, <&rx_cdc_dma_1_rx>, <&tx_cdc_dma_1_tx>, <&rx_cdc_dma_2_rx>, <&tx_cdc_dma_2_tx>, <&rx_cdc_dma_3_rx>, <&tx_cdc_dma_3_tx>, <&rx_cdc_dma_4_rx>, <&tx_cdc_dma_4_tx>, <&rx_cdc_dma_5_rx>, <&tx_cdc_dma_5_tx>, <&rx_cdc_dma_6_rx>, <&rx_cdc_dma_7_rx>, <&afe_loopback_tx>; asoc-cpu-names = "msm-dai-q6-mi2s.0", "msm-dai-q6-mi2s.1", "msm-dai-q6-mi2s.2", "msm-dai-q6-mi2s.3", "msm-dai-q6-auxpcm.1", "msm-dai-q6-auxpcm.2", "msm-dai-q6-auxpcm.3", "msm-dai-q6-auxpcm.4", "msm-dai-q6-dev.224", "msm-dai-q6-dev.225", "msm-dai-q6-dev.241", "msm-dai-q6-dev.240", "msm-dai-q6-dev.32771", "msm-dai-q6-dev.32772", "msm-dai-q6-dev.32773", "msm-dai-q6-dev.32770", "msm-dai-q6-dev.8194", "msm-dai-q6-dev.8195", "msm-dai-q6-dev.28672", "msm-dai-q6-dev.28673", "msm-dai-q6-dev.16398", "msm-dai-q6-dev.16399", "msm-dai-q6-dev.16401", "msm-dai-cdc-dma-dev.45089", "msm-dai-cdc-dma-dev.45091", "msm-dai-cdc-dma-dev.45093", "msm-dai-cdc-dma-dev.45104", "msm-dai-cdc-dma-dev.45105", "msm-dai-cdc-dma-dev.45106", "msm-dai-cdc-dma-dev.45107", "msm-dai-cdc-dma-dev.45108", "msm-dai-cdc-dma-dev.45109", "msm-dai-cdc-dma-dev.45110", "msm-dai-cdc-dma-dev.45111", "msm-dai-cdc-dma-dev.45112", "msm-dai-cdc-dma-dev.45113", "msm-dai-cdc-dma-dev.45114", "msm-dai-cdc-dma-dev.45115", "msm-dai-cdc-dma-dev.45116", "msm-dai-cdc-dma-dev.45118", "msm-dai-q6-dev.24577"; }; }; &bolero { qcom,num-macros = <3>; qcom,bolero-version = <6>; bolero-clk-rsc-mngr { compatible = "qcom,bolero-clk-rsc-mngr"; qcom,fs-gen-sequence = <0x3000 0x1 0x1>, <0x3004 0x3 0x3>, <0x3004 0x3 0x1>, <0x3080 0x2 0x2>; qcom,rx_mclk_mode_muxsel = <0x0a5640d8>; qcom,va_mclk_mode_muxsel = <0x0a7a0000>; clock-names = "tx_core_clk", "tx_npl_clk", "rx_core_clk", "rx_npl_clk", "va_core_clk", "va_npl_clk"; clocks = <&clock_audio_tx_1 0>, <&clock_audio_tx_2 0>, <&clock_audio_rx_1 0>, <&clock_audio_rx_2 0>, <&clock_audio_va_1 0>, <&clock_audio_va_2 0>; }; tx_macro: tx-macro@0a620000 { compatible = "qcom,tx-macro"; reg = <0x0a620000 0x0>; clock-names = "tx_core_clk", "tx_npl_clk"; clocks = <&clock_audio_tx_1 0>, <&clock_audio_tx_2 0>; qcom,is-used-swr-gpio = <0>; }; rx_macro: rx-macro@0a600000 { compatible = "qcom,rx-macro"; reg = <0x0a600000 0x0>; clock-names = "rx_core_clk", "rx_npl_clk"; clocks = <&clock_audio_rx_1 0>, <&clock_audio_rx_2 0>; qcom,rx-swr-gpios = <&rx_swr_gpios>; qcom,rx_mclk_mode_muxsel = <0x0a5640d8>; qcom,rx-bcl-pmic-params = /bits/ 8 <0x00 0x04 0x3E>; qcom,default-clk-id = ; swr1: rx_swr_master { compatible = "qcom,swr-mstr"; #address-cells = <2>; #size-cells = <0>; clock-names = "lpass_audio_hw_vote"; clocks = <&lpass_audio_hw_vote 0>; qcom,swr_master_id = <2>; qcom,swrm-hctl-reg = <0x0a6a9098>; qcom,mipi-sdw-block-packing-mode = <1>; swrm-io-base = <0x0a610000 0x0>; interrupts = <0 297 IRQ_TYPE_LEVEL_HIGH>; interrupt-names = "swr_master_irq"; qcom,swr-num-ports = <7>; qcom,disable-div2-clk-switch = <1>; qcom,swr-port-mapping = <1 HPH_L 0x1>, <1 HPH_R 0x2>, <2 CLSH 0x1>, <3 COMP_L 0x1>, <3 COMP_R 0x2>, <4 LO 0x1>, <5 DSD_L 0x1>, <5 DSD_R 0x2>, <7 SWRM_RX_PCM_IN 0xF>; qcom,swr-num-dev = <1>; qcom,swr-clock-stop-mode0 = <1>; besbev_rx_slave: besbev-rx-slave { compatible = "qcom,besbev-slave"; reg = <0x0C 0x01170224>; }; }; }; besbev_codec: besbev-codec { compatible = "qcom,besbev-codec"; qcom,split-codec = <1>; qcom,wcd-reset-reg = <0x0000FCDB>; qcom,foundry-id-reg = <0x000001F2>; qcom,swr_ch_map = <0 SPKR_L 0x1 0 LO>, <2 ADC1 0x1 0 SWRM_RX_PCM_IN>, <2 ADC2 0x2 0 SWRM_RX_PCM_IN>; qcom,besbev-slave = <&besbev_rx_slave>; qcom,speaker-present = <1>; qcom,comp-support = <0>; cdc-mic-bias-supply = <&L28A>; qcom,cdc-mic-bias-voltage = <2904000 2904000>; qcom,cdc-mic-bias-current = <1180>; cdc-vdd-spkr-supply = <&SPKR_BOOST>; qcom,cdc-vdd-spkr-voltage = <4100000 5600000>; qcom,cdc-vdd-spkr-current = <700000>; qcom,cdc-micbias1-mv = <1800>; qcom,cdc-micbias2-mv = <1800>; qcom,cdc-static-supplies = "cdc-mic-bias"; qcom,cdc-on-demand-supplies = "cdc-vdd-spkr"; }; }; &monaco_snd { qcom,model = "monaco-idp-amic-snd-card"; qcom,msm-mi2s-master = <1>, <1>, <1>, <1>; qcom,wcn-btfm = <1>; qcom,va-bolero-codec = <1>; qcom,visense-enable = <0>; qcom,audio-routing = "AMIC1", "Analog Mic1", "Analog Mic1","MIC BIAS1", "AMIC2", "Analog Mic2", "Analog Mic2", "MIC BIAS2", "AMIC3", "Analog Mic3", "Analog Mic3", "MIC BIAS3", "TX DMIC0", "Digital Mic0", "Digital Mic0", "MIC BIAS3", "TX DMIC1", "Digital Mic1", "Digital Mic1", "MIC BIAS3", "TX DMIC2", "Digital Mic2", "Digital Mic2", "MIC BIAS1", "TX DMIC3", "Digital Mic3", "Digital Mic3", "MIC BIAS1", "SPKR_IN", "AUX_OUT", "TX SWR_INPUT", "VA_TX_SWR_CLK", "RX_SWR_TX_PCM_IN0", "RX_MCLK", "RX_SWR_TX_PCM_IN1", "RX_MCLK", "RX_SWR_TX_PCM_IN0", "ADC1_OUTPUT", "RX_SWR_TX_PCM_IN1", "ADC2_OUTPUT", "RX_TX DEC0_INP", "TX DEC0 MUX", "RX_TX DEC1_INP", "TX DEC1 MUX", "RX_TX DEC2_INP", "TX DEC2 MUX", "RX_TX DEC3_INP", "TX DEC3 MUX", "TX_AIF1 CAP", "VA_TX_SWR_CLK", "TX_AIF2 CAP", "VA_TX_SWR_CLK", "TX_AIF3 CAP", "VA_TX_SWR_CLK", "VA SWR_INPUT", "VA_SWR_CLK", "VA_AIF1 CAP", "VA_SWR_CLK", "VA_AIF2 CAP", "VA_SWR_CLK", "VA_AIF3 CAP", "VA_SWR_CLK", "VA DMIC0", "Digital Mic0", "VA DMIC1", "Digital Mic1", "VA DMIC2", "Digital Mic2", "VA DMIC3", "Digital Mic3", "VA DMIC0", "VA MIC BIAS3", "VA DMIC1", "VA MIC BIAS3", "VA DMIC2", "VA MIC BIAS1", "VA DMIC3", "VA MIC BIAS1"; nvmem-cells = <&adsp_variant>; nvmem-cell-names = "adsp_variant"; asoc-codec = <&stub_codec>, <&bolero>, <&besbev_codec>; asoc-codec-names = "msm-stub-codec.1", "bolero_codec", "besbev_codec"; qcom,msm_audio_ssr_devs = <&audio_gpr>, <&bolero>, <&lpi_tlmm>; }; &soc { audio_pkt_core_platform: qcom,audio-pkt-core-platform { compatible = "qcom,audio-pkt-core-platform"; }; clock_audio_rx_1: rx_core_clk { compatible = "qcom,audio-ref-clk"; qcom,codec-ext-clk-src = ; qcom,codec-lpass-ext-clk-freq = <22579200>; qcom,codec-lpass-clk-id = <0x30E>; #clock-cells = <1>; }; clock_audio_rx_2: rx_npl_clk { compatible = "qcom,audio-ref-clk"; qcom,codec-ext-clk-src = ; qcom,codec-lpass-ext-clk-freq = <22579200>; qcom,codec-lpass-clk-id = <0x30F>; #clock-cells = <1>; }; clock_audio_tx_1: tx_core_clk { compatible = "qcom,audio-ref-clk"; qcom,codec-ext-clk-src = ; qcom,codec-lpass-ext-clk-freq = <19200000>; qcom,codec-lpass-clk-id = <0x30C>; #clock-cells = <1>; }; clock_audio_tx_2: tx_npl_clk { compatible = "qcom,audio-ref-clk"; qcom,codec-ext-clk-src = ; qcom,codec-lpass-ext-clk-freq = <19200000>; qcom,codec-lpass-clk-id = <0x30D>; #clock-cells = <1>; }; clock_audio_va_1: va_core_clk { compatible = "qcom,audio-ref-clk"; qcom,codec-ext-clk-src = ; qcom,codec-lpass-ext-clk-freq = <19200000>; qcom,codec-lpass-clk-id = <0x307>; #clock-cells = <1>; }; clock_audio_va_2: va_npl_clk { compatible = "qcom,audio-ref-clk"; qcom,codec-ext-clk-src = ; qcom,codec-lpass-ext-clk-freq = <19200000>; qcom,codec-lpass-clk-id = <0x308>; #clock-cells = <1>; }; }; &va_cdc_dma_0_tx { qcom,msm-dai-is-island-supported = <1>; };