Loading arch/arm64/boot/dts/qcom/Makefile +3 −0 Original line number Diff line number Diff line Loading @@ -150,6 +150,7 @@ ifeq ($(CONFIG_BUILD_ARM64_DT_OVERLAY),y) qcs605-mtp-overlay.dtbo \ qcs605-360camera-overlay.dtbo \ qcs605-external-codec-mtp-overlay.dtbo \ qcs605-lc-ipcamera-overlay.dtbo \ qcs605-lc-mtp-overlay.dtbo \ qcs605-lc-cdp-overlay.dtbo \ sdm710-cdp-overlay.dtbo \ Loading Loading @@ -211,6 +212,7 @@ qcs605-cdp-overlay.dtbo-base := qcs605.dtb qcs605-mtp-overlay.dtbo-base := qcs605.dtb qcs605-external-codec-mtp-overlay.dtbo-base := qcs605.dtb qcs605-lc-mtp-overlay.dtbo-base := qcs605-lc.dtb qcs605-lc-ipcamera-overlay.dtbo-base := qcs605-lc.dtb qcs605-360camera-overlay.dtbo-base := qcs605.dtb qcs605-lc-cdp-overlay.dtbo-base := qcs605-lc-cdp-base.dtb sdm710-cdp-overlay.dtbo-base := sdm710.dtb Loading Loading @@ -271,6 +273,7 @@ dtb-$(CONFIG_ARCH_SDM670) += sdm670-rumi.dtb \ qcs605-mtp.dtb \ qcs605-cdp.dtb \ qcs605-external-codec-mtp.dtb \ qcs605-lc-ipcamera.dtb \ qcs605-lc-mtp.dtb \ qcs605-lc-cdp.dtb \ sdm710-mtp.dtb \ Loading arch/arm64/boot/dts/qcom/qcs605-lc-ipcamera-audio.dtsi 0 → 100644 +360 −0 Original line number Diff line number Diff line /* * Copyright (c) 2017-2018, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and * only version 2 as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. */ #include "sdm670-wcd.dtsi" #include "sdm670-wsa881x.dtsi" #include "sdm670-lpi.dtsi" #include <dt-bindings/clock/qcom,audio-ext-clk.h> &tavil_snd { qcom,msm-mi2s-master = <1>, <1>, <1>, <1>, <1>; qcom,audio-routing = "AIF4 VI", "MCLK", "RX_BIAS", "MCLK", "MADINPUT", "MCLK", "hifi amp", "LINEOUT1", "hifi amp", "LINEOUT2", "AMIC2", "MIC BIAS2", "MIC BIAS2", "Headset Mic", "AMIC3", "MIC BIAS2", "MIC BIAS2", "ANCRight Headset Mic", "AMIC4", "MIC BIAS2", "MIC BIAS2", "ANCLeft Headset Mic", "AMIC5", "MIC BIAS3", "MIC BIAS3", "Handset Mic", "DMIC0", "MIC BIAS1", "MIC BIAS1", "Digital Mic0", "DMIC1", "MIC BIAS1", "MIC BIAS1", "Digital Mic1", "DMIC2", "MIC BIAS3", "MIC BIAS3", "Digital Mic2", "DMIC3", "MIC BIAS3", "MIC BIAS3", "Digital Mic3", "DMIC4", "MIC BIAS4", "MIC BIAS4", "Digital Mic4", "DMIC5", "MIC BIAS4", "MIC BIAS4", "Digital Mic5", "SpkrLeft IN", "SPK1 OUT", "SpkrRight IN", "SPK2 OUT"; qcom,msm-mbhc-hphl-swh = <1>; qcom,msm-mbhc-gnd-swh = <1>; qcom,hph-en0-gpio = <&tavil_hph_en0>; qcom,hph-en1-gpio = <&tavil_hph_en1>; qcom,msm-mclk-freq = <9600000>; asoc-codec = <&stub_codec>, <&ext_disp_audio_codec>; asoc-codec-names = "msm-stub-codec.1", "msm-ext-disp-audio-codec-rx"; qcom,wsa-max-devs = <2>; qcom,wsa-devs = <&wsa881x_0211>, <&wsa881x_0212>, <&wsa881x_0213>, <&wsa881x_0214>; qcom,wsa-aux-dev-prefix = "SpkrLeft", "SpkrRight", "SpkrLeft", "SpkrRight"; }; &tasha_snd { qcom,msm-mi2s-master = <1>, <1>, <1>, <1>, <1>; qcom,audio-routing = "AIF4 VI", "MCLK", "RX_BIAS", "MCLK", "MADINPUT", "MCLK", "hifi amp", "LINEOUT1", "hifi amp", "LINEOUT2", "AMIC2", "MIC BIAS2", "MIC BIAS2", "Headset Mic", "AMIC3", "MIC BIAS2", "MIC BIAS2", "ANCRight Headset Mic", "AMIC4", "MIC BIAS2", "MIC BIAS2", "ANCLeft Headset Mic", "AMIC5", "MIC BIAS3", "MIC BIAS3", "Handset Mic", "DMIC0", "MIC BIAS1", "MIC BIAS1", "Digital Mic0", "DMIC1", "MIC BIAS1", "MIC BIAS1", "Digital Mic1", "DMIC2", "MIC BIAS3", "MIC BIAS3", "Digital Mic2", "DMIC3", "MIC BIAS3", "MIC BIAS3", "Digital Mic3", "DMIC4", "MIC BIAS4", "MIC BIAS4", "Digital Mic4", "DMIC5", "MIC BIAS4", "MIC BIAS4", "Digital Mic5", "SpkrLeft IN", "SPK1 OUT", "SpkrRight IN", "SPK2 OUT"; qcom,msm-mbhc-hphl-swh = <0>; qcom,msm-mbhc-gnd-swh = <0>; qcom,msm-mclk-freq = <9600000>; asoc-codec = <&stub_codec>; asoc-codec-names = "msm-stub-codec.1"; qcom,wsa-max-devs = <2>; qcom,wsa-devs = <&wsa881x_211>, <&wsa881x_212>, <&wsa881x_213>, <&wsa881x_214>; qcom,wsa-aux-dev-prefix = "SpkrLeft", "SpkrRight", "SpkrLeft", "SpkrRight"; }; &soc { wcd_usbc_analog_en1_gpio: msm_cdc_pinctrl_usbc_audio_en1 { compatible = "qcom,msm-cdc-pinctrl"; pinctrl-names = "aud_active", "aud_sleep"; pinctrl-0 = <&wcd_usbc_analog_en1_active>; pinctrl-1 = <&wcd_usbc_analog_en1_idle>; }; cdc_pdm_gpios: cdc_pdm_pinctrl { compatible = "qcom,msm-cdc-pinctrl"; pinctrl-names = "aud_active", "aud_sleep"; pinctrl-0 = <&cdc_pdm_clk_active &cdc_pdm_sync_active &cdc_pdm_rx0_active &cdc_pdm_rx1_2_active &cdc_pdm_2_gpios_active>; pinctrl-1 = <&cdc_pdm_clk_sleep &cdc_pdm_sync_sleep &cdc_pdm_rx0_sleep &cdc_pdm_rx1_2_sleep &cdc_pdm_2_gpios_sleep>; qcom,lpi-gpios; }; cdc_comp_gpios: cdc_comp_pinctrl { compatible = "qcom,msm-cdc-pinctrl"; pinctrl-names = "aud_active", "aud_sleep"; pinctrl-0 = <&cdc_rx0_comp_active &cdc_rx1_comp_active>; pinctrl-1 = <&cdc_rx0_comp_sleep &cdc_rx1_comp_sleep>; qcom,lpi-gpios; }; cdc_dmic_gpios: cdc_dmic_pinctrl { compatible = "qcom,msm-cdc-pinctrl"; pinctrl-names = "aud_active", "aud_sleep"; pinctrl-0 = <&cdc_dmic12_gpios_active &cdc_dmic34_gpios_active>; pinctrl-1 = <&cdc_dmic12_gpios_sleep &cdc_dmic34_gpios_sleep>; qcom,lpi-gpios; }; cdc_sdw_gpios: sdw_clk_data_pinctrl { compatible = "qcom,msm-cdc-pinctrl"; pinctrl-names = "aud_active", "aud_sleep"; pinctrl-0 = <&sdw_clk_active &sdw_data_active>; pinctrl-1 = <&sdw_clk_sleep &sdw_data_sleep>; }; wsa_spkr_en1: wsa_spkr_en1_pinctrl { compatible = "qcom,msm-cdc-pinctrl"; pinctrl-names = "aud_active", "aud_sleep"; pinctrl-0 = <&spkr_1_sd_n_active>; pinctrl-1 = <&spkr_1_sd_n_sleep>; }; wsa_spkr_en2: wsa_spkr_en2_pinctrl { compatible = "qcom,msm-cdc-pinctrl"; pinctrl-names = "aud_active", "aud_sleep"; pinctrl-0 = <&spkr_2_sd_n_active>; pinctrl-1 = <&spkr_2_sd_n_sleep>; }; msm_sdw_codec: msm-sdw-codec@62ec1000 { status = "okay"; compatible = "qcom,msm-sdw-codec"; reg = <0x62ec1000 0x0>; interrupts = <0 88 0>; interrupt-names = "swr_master_irq"; qcom,cdc-sdw-gpios = <&cdc_sdw_gpios>; swr_master { compatible = "qcom,swr-wcd"; #address-cells = <2>; #size-cells = <0>; wsa881x_211_en: wsa881x_en@20170211 { compatible = "qcom,wsa881x"; reg = <0x0 0x20170211>; qcom,spkr-sd-n-node = <&wsa_spkr_en1>; }; wsa881x_212_en: wsa881x_en@20170212 { compatible = "qcom,wsa881x"; reg = <0x0 0x20170212>; qcom,spkr-sd-n-node = <&wsa_spkr_en2>; }; wsa881x_213_en: wsa881x_en@21170213 { compatible = "qcom,wsa881x"; reg = <0x0 0x21170213>; qcom,spkr-sd-n-node = <&wsa_spkr_en1>; }; wsa881x_214_en: wsa881x_en@21170214 { compatible = "qcom,wsa881x"; reg = <0x0 0x21170214>; qcom,spkr-sd-n-node = <&wsa_spkr_en2>; }; }; }; wcd9xxx_intc: wcd9xxx-irq { status = "disabled"; compatible = "qcom,wcd9xxx-irq"; interrupt-controller; #interrupt-cells = <1>; interrupt-parent = <&tlmm>; qcom,gpio-connect = <&tlmm 80 0>; pinctrl-names = "default"; pinctrl-0 = <&wcd_intr_default>; }; clock_audio_native: audio_ext_clk_native { status = "disabled"; compatible = "qcom,audio-ref-clk"; #clock-cells = <1>; qcom,lpass-mclk-id = <0x116>; qcom,codec-mclk-clk-freq = <11289600>; qcom,audio-ref-clk-gpio = <&lpi_tlmm 19 0>; pinctrl-names = "sleep", "active"; pinctrl-0 = <&lpi_mclk0_sleep>; pinctrl-1 = <&lpi_mclk0_active>; }; clock_audio: audio_ext_clk { status = "disabled"; compatible = "qcom,audio-ref-clk"; pinctrl-names = "active", "sleep"; pinctrl-0 = <&tasha_mclk_default>; pinctrl-1 = <&tasha_mclk_default>; qcom,audio-ref-clk-gpio = <&pm660_gpios 3 0>; clock-names = "osr_clk"; clocks = <&pm660_div_clk>; qcom,node_has_rpm_clock; #clock-cells = <1>; }; clock_audio_lnbb: audio_ext_clk_lnbb { status = "disabled"; compatible = "qcom,audio-ref-clk"; clock-names = "osr_clk"; clocks = <&clock_rpmh RPMH_LN_BB_CLK2>; qcom,node_has_rpm_clock; #clock-cells = <1>; }; wcd_rst_gpio: msm_cdc_pinctrl@64 { status = "disabled"; compatible = "qcom,msm-cdc-pinctrl"; pinctrl-names = "aud_active", "aud_sleep"; pinctrl-0 = <&lpi_cdc_reset_active>; pinctrl-1 = <&lpi_cdc_reset_sleep>; qcom,lpi-gpios; }; wdsp_mgr: qcom,wcd-dsp-mgr { compatible = "qcom,wcd-dsp-mgr"; qcom,wdsp-components = <&wcd934x_cdc 0>, <&wcd_spi_0 1>, <&glink_spi_xprt_wdsp 2>; qcom,img-filename = "cpe_9340"; }; wdsp_glink: qcom,wcd-dsp-glink { compatible = "qcom,wcd-dsp-glink"; }; tert_mi2s_gpios: tert_mi2s_pinctrl { status = "disabled"; compatible = "qcom,msm-cdc-pinctrl"; pinctrl-names = "aud_active", "aud_sleep"; pinctrl-0 = <&ter_i2s_data0_active &ter_i2s_data1_active &ter_i2s_sck_active>; pinctrl-1 = <&ter_i2s_data0_sleep &ter_i2s_data1_sleep &ter_i2s_sck_sleep>; }; }; &slim_aud { wcd9335: tasha_codec { status = "disabled"; compatible = "qcom,tasha-slim-pgd"; elemental-addr = [00 01 a0 01 17 02]; interrupt-parent = <&wcd9xxx_intc>; interrupts = <0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30>; qcom,wcd-rst-gpio-node = <&wcd_rst_gpio>; clock-names = "wcd_clk", "wcd_native_clk"; clocks = <&clock_audio AUDIO_PMI_CLK>, <&clock_audio_native AUDIO_LPASS_MCLK>; cdc-vdd-mic-bias-supply = <&pm660l_bob>; qcom,cdc-vdd-mic-bias-voltage = <3312000 3312000>; qcom,cdc-vdd-mic-bias-current = <30400>; qcom,cdc-static-supplies = "cdc-vdd-mic-bias"; qcom,cdc-micbias1-mv = <1800>; qcom,cdc-micbias2-mv = <1800>; qcom,cdc-micbias3-mv = <1800>; qcom,cdc-micbias4-mv = <1800>; qcom,cdc-mclk-clk-rate = <9600000>; qcom,cdc-slim-ifd = "tasha-slim-ifd"; qcom,cdc-slim-ifd-elemental-addr = [00 00 a0 01 17 02]; qcom,cdc-dmic-sample-rate = <4800000>; qcom,cdc-mad-dmic-rate = <600000>; }; wcd934x_cdc: tavil_codec { status = "disabled"; compatible = "qcom,tavil-slim-pgd"; elemental-addr = [00 01 50 02 17 02]; interrupt-parent = <&wcd9xxx_intc>; interrupts = <0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31>; qcom,wcd-rst-gpio-node = <&wcd_rst_gpio>; clock-names = "wcd_clk"; clocks = <&clock_audio_lnbb AUDIO_PMIC_LNBB_CLK>; cdc-vdd-mic-bias-supply = <&pm660l_bob>; qcom,cdc-vdd-mic-bias-voltage = <3312000 3312000>; qcom,cdc-vdd-mic-bias-current = <30400>; qcom,cdc-static-supplies = "cdc-vdd-mic-bias"; qcom,cdc-micbias1-mv = <1800>; qcom,cdc-micbias2-mv = <1800>; qcom,cdc-micbias3-mv = <1800>; qcom,cdc-micbias4-mv = <1800>; qcom,cdc-mclk-clk-rate = <9600000>; qcom,cdc-slim-ifd = "tavil-slim-ifd"; qcom,cdc-slim-ifd-elemental-addr = [00 00 50 02 17 02]; qcom,cdc-dmic-sample-rate = <4800000>; qcom,cdc-mad-dmic-rate = <600000>; qcom,wdsp-cmpnt-dev-name = "tavil_codec"; wcd_spi_0: wcd_spi { compatible = "qcom,wcd-spi-v2"; qcom,master-bus-num = <0>; qcom,chip-select = <0>; qcom,max-frequency = <24000000>; qcom,mem-base-addr = <0x100000>; }; }; }; arch/arm64/boot/dts/qcom/qcs605-lc-ipcamera-overlay.dts 0 → 100644 +30 −0 Original line number Diff line number Diff line /* * Copyright (c) 2018, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and * only version 2 as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. */ /dts-v1/; /plugin/; #include <dt-bindings/clock/qcom,gcc-sdm845.h> #include <dt-bindings/clock/qcom,camcc-sdm845.h> #include <dt-bindings/clock/qcom,dispcc-sdm845.h> #include <dt-bindings/clock/qcom,rpmh.h> #include <dt-bindings/interrupt-controller/arm-gic.h> #include "qcs605-lc-ipcamera.dtsi" / { model = "Qualcomm Technologies, Inc. QC605 LC Groot + PM8005 IPC"; compatible = "qcom,qcs605-mtp", "qcom,qcs605", "qcom,mtp"; qcom,msm-id = <347 0x0>; qcom,board-id = <8 6>; }; arch/arm64/boot/dts/qcom/qcs605-lc-ipcamera.dts 0 → 100644 +24 −0 Original line number Diff line number Diff line /* * Copyright (c) 2018, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and * only version 2 as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. */ /dts-v1/; #include "qcs605-lc.dtsi" #include "qcs605-lc-ipcamera.dtsi" / { model = "Qualcomm Technologies, Inc. QC605 LC Groot + PM8005 IPC"; compatible = "qcom,qcs605-mtp", "qcom,qcs605", "qcom,mtp"; qcom,board-id = <8 6>; }; arch/arm64/boot/dts/qcom/qcs605-lc-ipcamera.dtsi 0 → 100644 +196 −0 Original line number Diff line number Diff line /* Copyright (c) 2017-2018, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and * only version 2 as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. */ #include "qcs605-lc-pmic-overlay.dtsi" #include "qcs605-lc-camera-sensor-mtp.dtsi" #include "qcs605-lc-ipcamera-audio.dtsi" &qupv3_se9_2uart { status = "disabled"; }; &qupv3_se12_2uart { status = "ok"; }; &sdhc_1 { vdd-supply = <&pm660_l19>; qcom,vdd-voltage-level = <2960000 2960000>; qcom,vdd-current-level = <0 570000>; vdd-io-supply = <&pm660_l8>; qcom,vdd-io-always-on; qcom,vdd-io-lpm-sup; qcom,vdd-io-voltage-level = <1800000 1800000>; qcom,vdd-io-current-level = <0 325000>; pinctrl-names = "active", "sleep"; pinctrl-0 = <&sdc1_clk_on &sdc1_cmd_on &sdc1_data_on &sdc1_rclk_on>; pinctrl-1 = <&sdc1_clk_off &sdc1_cmd_off &sdc1_data_off &sdc1_rclk_off>; status = "ok"; }; &tlmm { sdc2_cd_on: cd_on { mux { pins = "gpio116"; function = "gpio"; }; config { pins = "gpio116"; drive-strength = <2>; bias-pull-up; }; }; sdc2_cd_off: cd_off { mux { pins = "gpio116"; function = "gpio"; }; config { pins = "gpio116"; drive-strength = <2>; bias-disable; }; }; }; &sdhc_2 { /* VDD external regulator is enabled/disabled by pm660_l18 regulator */ vdd-io-supply = <&pm660_l18>; qcom,vdd-io-voltage-level = <1800000 2960000>; qcom,vdd-io-current-level = <0 22000>; pinctrl-names = "active", "sleep"; pinctrl-0 = <&sdc2_clk_on &sdc2_cmd_on &sdc2_data_on &sdc2_cd_on>; pinctrl-1 = <&sdc2_clk_off &sdc2_cmd_off &sdc2_data_off &sdc2_cd_off>; cd-gpios = <&tlmm 116 0x1>; status = "ok"; }; &usb0 { dwc3@a600000 { dr_mode = "host"; }; }; &icnss { status = "disabled"; }; &msm_sdw_codec { status = "disabled"; }; &cdc_pdm_gpios { status = "disabled"; }; &cdc_comp_gpios { status = "disabled"; }; &cdc_dmic_gpios { status = "disabled"; }; &cdc_sdw_gpios { status = "disabled"; }; &wsa_spkr_en1 { status = "disabled"; }; &wsa_spkr_en2 { status = "disabled"; }; &qupv3_se8_spi { status = "okay"; }; &wcd9xxx_intc { status = "okay"; }; &wdsp_mgr { status = "okay"; }; &wdsp_glink { status = "okay"; }; &slim_aud { status = "okay"; }; &dai_slim { status = "okay"; }; &wcd934x_cdc { status = "okay"; }; &clock_audio_lnbb { status = "okay"; }; &tavil_snd { status = "okay"; compatible = "qcom,qcs605-asoc-snd-tavil"; qcom,model = "qcs605-tavil-snd-card"; qcom,audio-routing = "AIF4 VI", "MCLK", "RX_BIAS", "MCLK", "MADINPUT", "MCLK", "DMIC0", "MIC BIAS1", "MIC BIAS1", "Digital Mic0", "DMIC1", "MIC BIAS1", "MIC BIAS1", "Digital Mic1", "DMIC2", "MIC BIAS3", "MIC BIAS3", "Digital Mic2", "DMIC3", "MIC BIAS3", "MIC BIAS3", "Digital Mic3", "SpkrLeft IN", "SPK1 OUT"; qcom,wsa-max-devs = <1>; qcom,wsa-devs = <&wsa881x_0211>, <&wsa881x_0213>; qcom,wsa-aux-dev-prefix = "SpkrLeft", "SpkrLeft"; }; &soc { wcd_rst_gpio1: msm_cdc_pinctrl@11 { compatible = "qcom,msm-cdc-pinctrl"; qcom,cdc-rst-n-gpio = <&tlmm 11 0>; pinctrl-names = "aud_active", "aud_sleep"; pinctrl-0 = <&cdc_reset_active>; pinctrl-1 = <&cdc_reset_sleep>; }; }; &wcd934x_cdc { /delete-property/ cdc-vdd-mic-bias-supply; /delete-property/ qcom,cdc-static-supplies; qcom,wcd-rst-gpio-node = <&wcd_rst_gpio1>; }; &wcd9335 { /delete-property/ cdc-vdd-mic-bias-supply; }; Loading
arch/arm64/boot/dts/qcom/Makefile +3 −0 Original line number Diff line number Diff line Loading @@ -150,6 +150,7 @@ ifeq ($(CONFIG_BUILD_ARM64_DT_OVERLAY),y) qcs605-mtp-overlay.dtbo \ qcs605-360camera-overlay.dtbo \ qcs605-external-codec-mtp-overlay.dtbo \ qcs605-lc-ipcamera-overlay.dtbo \ qcs605-lc-mtp-overlay.dtbo \ qcs605-lc-cdp-overlay.dtbo \ sdm710-cdp-overlay.dtbo \ Loading Loading @@ -211,6 +212,7 @@ qcs605-cdp-overlay.dtbo-base := qcs605.dtb qcs605-mtp-overlay.dtbo-base := qcs605.dtb qcs605-external-codec-mtp-overlay.dtbo-base := qcs605.dtb qcs605-lc-mtp-overlay.dtbo-base := qcs605-lc.dtb qcs605-lc-ipcamera-overlay.dtbo-base := qcs605-lc.dtb qcs605-360camera-overlay.dtbo-base := qcs605.dtb qcs605-lc-cdp-overlay.dtbo-base := qcs605-lc-cdp-base.dtb sdm710-cdp-overlay.dtbo-base := sdm710.dtb Loading Loading @@ -271,6 +273,7 @@ dtb-$(CONFIG_ARCH_SDM670) += sdm670-rumi.dtb \ qcs605-mtp.dtb \ qcs605-cdp.dtb \ qcs605-external-codec-mtp.dtb \ qcs605-lc-ipcamera.dtb \ qcs605-lc-mtp.dtb \ qcs605-lc-cdp.dtb \ sdm710-mtp.dtb \ Loading
arch/arm64/boot/dts/qcom/qcs605-lc-ipcamera-audio.dtsi 0 → 100644 +360 −0 Original line number Diff line number Diff line /* * Copyright (c) 2017-2018, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and * only version 2 as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. */ #include "sdm670-wcd.dtsi" #include "sdm670-wsa881x.dtsi" #include "sdm670-lpi.dtsi" #include <dt-bindings/clock/qcom,audio-ext-clk.h> &tavil_snd { qcom,msm-mi2s-master = <1>, <1>, <1>, <1>, <1>; qcom,audio-routing = "AIF4 VI", "MCLK", "RX_BIAS", "MCLK", "MADINPUT", "MCLK", "hifi amp", "LINEOUT1", "hifi amp", "LINEOUT2", "AMIC2", "MIC BIAS2", "MIC BIAS2", "Headset Mic", "AMIC3", "MIC BIAS2", "MIC BIAS2", "ANCRight Headset Mic", "AMIC4", "MIC BIAS2", "MIC BIAS2", "ANCLeft Headset Mic", "AMIC5", "MIC BIAS3", "MIC BIAS3", "Handset Mic", "DMIC0", "MIC BIAS1", "MIC BIAS1", "Digital Mic0", "DMIC1", "MIC BIAS1", "MIC BIAS1", "Digital Mic1", "DMIC2", "MIC BIAS3", "MIC BIAS3", "Digital Mic2", "DMIC3", "MIC BIAS3", "MIC BIAS3", "Digital Mic3", "DMIC4", "MIC BIAS4", "MIC BIAS4", "Digital Mic4", "DMIC5", "MIC BIAS4", "MIC BIAS4", "Digital Mic5", "SpkrLeft IN", "SPK1 OUT", "SpkrRight IN", "SPK2 OUT"; qcom,msm-mbhc-hphl-swh = <1>; qcom,msm-mbhc-gnd-swh = <1>; qcom,hph-en0-gpio = <&tavil_hph_en0>; qcom,hph-en1-gpio = <&tavil_hph_en1>; qcom,msm-mclk-freq = <9600000>; asoc-codec = <&stub_codec>, <&ext_disp_audio_codec>; asoc-codec-names = "msm-stub-codec.1", "msm-ext-disp-audio-codec-rx"; qcom,wsa-max-devs = <2>; qcom,wsa-devs = <&wsa881x_0211>, <&wsa881x_0212>, <&wsa881x_0213>, <&wsa881x_0214>; qcom,wsa-aux-dev-prefix = "SpkrLeft", "SpkrRight", "SpkrLeft", "SpkrRight"; }; &tasha_snd { qcom,msm-mi2s-master = <1>, <1>, <1>, <1>, <1>; qcom,audio-routing = "AIF4 VI", "MCLK", "RX_BIAS", "MCLK", "MADINPUT", "MCLK", "hifi amp", "LINEOUT1", "hifi amp", "LINEOUT2", "AMIC2", "MIC BIAS2", "MIC BIAS2", "Headset Mic", "AMIC3", "MIC BIAS2", "MIC BIAS2", "ANCRight Headset Mic", "AMIC4", "MIC BIAS2", "MIC BIAS2", "ANCLeft Headset Mic", "AMIC5", "MIC BIAS3", "MIC BIAS3", "Handset Mic", "DMIC0", "MIC BIAS1", "MIC BIAS1", "Digital Mic0", "DMIC1", "MIC BIAS1", "MIC BIAS1", "Digital Mic1", "DMIC2", "MIC BIAS3", "MIC BIAS3", "Digital Mic2", "DMIC3", "MIC BIAS3", "MIC BIAS3", "Digital Mic3", "DMIC4", "MIC BIAS4", "MIC BIAS4", "Digital Mic4", "DMIC5", "MIC BIAS4", "MIC BIAS4", "Digital Mic5", "SpkrLeft IN", "SPK1 OUT", "SpkrRight IN", "SPK2 OUT"; qcom,msm-mbhc-hphl-swh = <0>; qcom,msm-mbhc-gnd-swh = <0>; qcom,msm-mclk-freq = <9600000>; asoc-codec = <&stub_codec>; asoc-codec-names = "msm-stub-codec.1"; qcom,wsa-max-devs = <2>; qcom,wsa-devs = <&wsa881x_211>, <&wsa881x_212>, <&wsa881x_213>, <&wsa881x_214>; qcom,wsa-aux-dev-prefix = "SpkrLeft", "SpkrRight", "SpkrLeft", "SpkrRight"; }; &soc { wcd_usbc_analog_en1_gpio: msm_cdc_pinctrl_usbc_audio_en1 { compatible = "qcom,msm-cdc-pinctrl"; pinctrl-names = "aud_active", "aud_sleep"; pinctrl-0 = <&wcd_usbc_analog_en1_active>; pinctrl-1 = <&wcd_usbc_analog_en1_idle>; }; cdc_pdm_gpios: cdc_pdm_pinctrl { compatible = "qcom,msm-cdc-pinctrl"; pinctrl-names = "aud_active", "aud_sleep"; pinctrl-0 = <&cdc_pdm_clk_active &cdc_pdm_sync_active &cdc_pdm_rx0_active &cdc_pdm_rx1_2_active &cdc_pdm_2_gpios_active>; pinctrl-1 = <&cdc_pdm_clk_sleep &cdc_pdm_sync_sleep &cdc_pdm_rx0_sleep &cdc_pdm_rx1_2_sleep &cdc_pdm_2_gpios_sleep>; qcom,lpi-gpios; }; cdc_comp_gpios: cdc_comp_pinctrl { compatible = "qcom,msm-cdc-pinctrl"; pinctrl-names = "aud_active", "aud_sleep"; pinctrl-0 = <&cdc_rx0_comp_active &cdc_rx1_comp_active>; pinctrl-1 = <&cdc_rx0_comp_sleep &cdc_rx1_comp_sleep>; qcom,lpi-gpios; }; cdc_dmic_gpios: cdc_dmic_pinctrl { compatible = "qcom,msm-cdc-pinctrl"; pinctrl-names = "aud_active", "aud_sleep"; pinctrl-0 = <&cdc_dmic12_gpios_active &cdc_dmic34_gpios_active>; pinctrl-1 = <&cdc_dmic12_gpios_sleep &cdc_dmic34_gpios_sleep>; qcom,lpi-gpios; }; cdc_sdw_gpios: sdw_clk_data_pinctrl { compatible = "qcom,msm-cdc-pinctrl"; pinctrl-names = "aud_active", "aud_sleep"; pinctrl-0 = <&sdw_clk_active &sdw_data_active>; pinctrl-1 = <&sdw_clk_sleep &sdw_data_sleep>; }; wsa_spkr_en1: wsa_spkr_en1_pinctrl { compatible = "qcom,msm-cdc-pinctrl"; pinctrl-names = "aud_active", "aud_sleep"; pinctrl-0 = <&spkr_1_sd_n_active>; pinctrl-1 = <&spkr_1_sd_n_sleep>; }; wsa_spkr_en2: wsa_spkr_en2_pinctrl { compatible = "qcom,msm-cdc-pinctrl"; pinctrl-names = "aud_active", "aud_sleep"; pinctrl-0 = <&spkr_2_sd_n_active>; pinctrl-1 = <&spkr_2_sd_n_sleep>; }; msm_sdw_codec: msm-sdw-codec@62ec1000 { status = "okay"; compatible = "qcom,msm-sdw-codec"; reg = <0x62ec1000 0x0>; interrupts = <0 88 0>; interrupt-names = "swr_master_irq"; qcom,cdc-sdw-gpios = <&cdc_sdw_gpios>; swr_master { compatible = "qcom,swr-wcd"; #address-cells = <2>; #size-cells = <0>; wsa881x_211_en: wsa881x_en@20170211 { compatible = "qcom,wsa881x"; reg = <0x0 0x20170211>; qcom,spkr-sd-n-node = <&wsa_spkr_en1>; }; wsa881x_212_en: wsa881x_en@20170212 { compatible = "qcom,wsa881x"; reg = <0x0 0x20170212>; qcom,spkr-sd-n-node = <&wsa_spkr_en2>; }; wsa881x_213_en: wsa881x_en@21170213 { compatible = "qcom,wsa881x"; reg = <0x0 0x21170213>; qcom,spkr-sd-n-node = <&wsa_spkr_en1>; }; wsa881x_214_en: wsa881x_en@21170214 { compatible = "qcom,wsa881x"; reg = <0x0 0x21170214>; qcom,spkr-sd-n-node = <&wsa_spkr_en2>; }; }; }; wcd9xxx_intc: wcd9xxx-irq { status = "disabled"; compatible = "qcom,wcd9xxx-irq"; interrupt-controller; #interrupt-cells = <1>; interrupt-parent = <&tlmm>; qcom,gpio-connect = <&tlmm 80 0>; pinctrl-names = "default"; pinctrl-0 = <&wcd_intr_default>; }; clock_audio_native: audio_ext_clk_native { status = "disabled"; compatible = "qcom,audio-ref-clk"; #clock-cells = <1>; qcom,lpass-mclk-id = <0x116>; qcom,codec-mclk-clk-freq = <11289600>; qcom,audio-ref-clk-gpio = <&lpi_tlmm 19 0>; pinctrl-names = "sleep", "active"; pinctrl-0 = <&lpi_mclk0_sleep>; pinctrl-1 = <&lpi_mclk0_active>; }; clock_audio: audio_ext_clk { status = "disabled"; compatible = "qcom,audio-ref-clk"; pinctrl-names = "active", "sleep"; pinctrl-0 = <&tasha_mclk_default>; pinctrl-1 = <&tasha_mclk_default>; qcom,audio-ref-clk-gpio = <&pm660_gpios 3 0>; clock-names = "osr_clk"; clocks = <&pm660_div_clk>; qcom,node_has_rpm_clock; #clock-cells = <1>; }; clock_audio_lnbb: audio_ext_clk_lnbb { status = "disabled"; compatible = "qcom,audio-ref-clk"; clock-names = "osr_clk"; clocks = <&clock_rpmh RPMH_LN_BB_CLK2>; qcom,node_has_rpm_clock; #clock-cells = <1>; }; wcd_rst_gpio: msm_cdc_pinctrl@64 { status = "disabled"; compatible = "qcom,msm-cdc-pinctrl"; pinctrl-names = "aud_active", "aud_sleep"; pinctrl-0 = <&lpi_cdc_reset_active>; pinctrl-1 = <&lpi_cdc_reset_sleep>; qcom,lpi-gpios; }; wdsp_mgr: qcom,wcd-dsp-mgr { compatible = "qcom,wcd-dsp-mgr"; qcom,wdsp-components = <&wcd934x_cdc 0>, <&wcd_spi_0 1>, <&glink_spi_xprt_wdsp 2>; qcom,img-filename = "cpe_9340"; }; wdsp_glink: qcom,wcd-dsp-glink { compatible = "qcom,wcd-dsp-glink"; }; tert_mi2s_gpios: tert_mi2s_pinctrl { status = "disabled"; compatible = "qcom,msm-cdc-pinctrl"; pinctrl-names = "aud_active", "aud_sleep"; pinctrl-0 = <&ter_i2s_data0_active &ter_i2s_data1_active &ter_i2s_sck_active>; pinctrl-1 = <&ter_i2s_data0_sleep &ter_i2s_data1_sleep &ter_i2s_sck_sleep>; }; }; &slim_aud { wcd9335: tasha_codec { status = "disabled"; compatible = "qcom,tasha-slim-pgd"; elemental-addr = [00 01 a0 01 17 02]; interrupt-parent = <&wcd9xxx_intc>; interrupts = <0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30>; qcom,wcd-rst-gpio-node = <&wcd_rst_gpio>; clock-names = "wcd_clk", "wcd_native_clk"; clocks = <&clock_audio AUDIO_PMI_CLK>, <&clock_audio_native AUDIO_LPASS_MCLK>; cdc-vdd-mic-bias-supply = <&pm660l_bob>; qcom,cdc-vdd-mic-bias-voltage = <3312000 3312000>; qcom,cdc-vdd-mic-bias-current = <30400>; qcom,cdc-static-supplies = "cdc-vdd-mic-bias"; qcom,cdc-micbias1-mv = <1800>; qcom,cdc-micbias2-mv = <1800>; qcom,cdc-micbias3-mv = <1800>; qcom,cdc-micbias4-mv = <1800>; qcom,cdc-mclk-clk-rate = <9600000>; qcom,cdc-slim-ifd = "tasha-slim-ifd"; qcom,cdc-slim-ifd-elemental-addr = [00 00 a0 01 17 02]; qcom,cdc-dmic-sample-rate = <4800000>; qcom,cdc-mad-dmic-rate = <600000>; }; wcd934x_cdc: tavil_codec { status = "disabled"; compatible = "qcom,tavil-slim-pgd"; elemental-addr = [00 01 50 02 17 02]; interrupt-parent = <&wcd9xxx_intc>; interrupts = <0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31>; qcom,wcd-rst-gpio-node = <&wcd_rst_gpio>; clock-names = "wcd_clk"; clocks = <&clock_audio_lnbb AUDIO_PMIC_LNBB_CLK>; cdc-vdd-mic-bias-supply = <&pm660l_bob>; qcom,cdc-vdd-mic-bias-voltage = <3312000 3312000>; qcom,cdc-vdd-mic-bias-current = <30400>; qcom,cdc-static-supplies = "cdc-vdd-mic-bias"; qcom,cdc-micbias1-mv = <1800>; qcom,cdc-micbias2-mv = <1800>; qcom,cdc-micbias3-mv = <1800>; qcom,cdc-micbias4-mv = <1800>; qcom,cdc-mclk-clk-rate = <9600000>; qcom,cdc-slim-ifd = "tavil-slim-ifd"; qcom,cdc-slim-ifd-elemental-addr = [00 00 50 02 17 02]; qcom,cdc-dmic-sample-rate = <4800000>; qcom,cdc-mad-dmic-rate = <600000>; qcom,wdsp-cmpnt-dev-name = "tavil_codec"; wcd_spi_0: wcd_spi { compatible = "qcom,wcd-spi-v2"; qcom,master-bus-num = <0>; qcom,chip-select = <0>; qcom,max-frequency = <24000000>; qcom,mem-base-addr = <0x100000>; }; }; };
arch/arm64/boot/dts/qcom/qcs605-lc-ipcamera-overlay.dts 0 → 100644 +30 −0 Original line number Diff line number Diff line /* * Copyright (c) 2018, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and * only version 2 as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. */ /dts-v1/; /plugin/; #include <dt-bindings/clock/qcom,gcc-sdm845.h> #include <dt-bindings/clock/qcom,camcc-sdm845.h> #include <dt-bindings/clock/qcom,dispcc-sdm845.h> #include <dt-bindings/clock/qcom,rpmh.h> #include <dt-bindings/interrupt-controller/arm-gic.h> #include "qcs605-lc-ipcamera.dtsi" / { model = "Qualcomm Technologies, Inc. QC605 LC Groot + PM8005 IPC"; compatible = "qcom,qcs605-mtp", "qcom,qcs605", "qcom,mtp"; qcom,msm-id = <347 0x0>; qcom,board-id = <8 6>; };
arch/arm64/boot/dts/qcom/qcs605-lc-ipcamera.dts 0 → 100644 +24 −0 Original line number Diff line number Diff line /* * Copyright (c) 2018, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and * only version 2 as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. */ /dts-v1/; #include "qcs605-lc.dtsi" #include "qcs605-lc-ipcamera.dtsi" / { model = "Qualcomm Technologies, Inc. QC605 LC Groot + PM8005 IPC"; compatible = "qcom,qcs605-mtp", "qcom,qcs605", "qcom,mtp"; qcom,board-id = <8 6>; };
arch/arm64/boot/dts/qcom/qcs605-lc-ipcamera.dtsi 0 → 100644 +196 −0 Original line number Diff line number Diff line /* Copyright (c) 2017-2018, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and * only version 2 as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. */ #include "qcs605-lc-pmic-overlay.dtsi" #include "qcs605-lc-camera-sensor-mtp.dtsi" #include "qcs605-lc-ipcamera-audio.dtsi" &qupv3_se9_2uart { status = "disabled"; }; &qupv3_se12_2uart { status = "ok"; }; &sdhc_1 { vdd-supply = <&pm660_l19>; qcom,vdd-voltage-level = <2960000 2960000>; qcom,vdd-current-level = <0 570000>; vdd-io-supply = <&pm660_l8>; qcom,vdd-io-always-on; qcom,vdd-io-lpm-sup; qcom,vdd-io-voltage-level = <1800000 1800000>; qcom,vdd-io-current-level = <0 325000>; pinctrl-names = "active", "sleep"; pinctrl-0 = <&sdc1_clk_on &sdc1_cmd_on &sdc1_data_on &sdc1_rclk_on>; pinctrl-1 = <&sdc1_clk_off &sdc1_cmd_off &sdc1_data_off &sdc1_rclk_off>; status = "ok"; }; &tlmm { sdc2_cd_on: cd_on { mux { pins = "gpio116"; function = "gpio"; }; config { pins = "gpio116"; drive-strength = <2>; bias-pull-up; }; }; sdc2_cd_off: cd_off { mux { pins = "gpio116"; function = "gpio"; }; config { pins = "gpio116"; drive-strength = <2>; bias-disable; }; }; }; &sdhc_2 { /* VDD external regulator is enabled/disabled by pm660_l18 regulator */ vdd-io-supply = <&pm660_l18>; qcom,vdd-io-voltage-level = <1800000 2960000>; qcom,vdd-io-current-level = <0 22000>; pinctrl-names = "active", "sleep"; pinctrl-0 = <&sdc2_clk_on &sdc2_cmd_on &sdc2_data_on &sdc2_cd_on>; pinctrl-1 = <&sdc2_clk_off &sdc2_cmd_off &sdc2_data_off &sdc2_cd_off>; cd-gpios = <&tlmm 116 0x1>; status = "ok"; }; &usb0 { dwc3@a600000 { dr_mode = "host"; }; }; &icnss { status = "disabled"; }; &msm_sdw_codec { status = "disabled"; }; &cdc_pdm_gpios { status = "disabled"; }; &cdc_comp_gpios { status = "disabled"; }; &cdc_dmic_gpios { status = "disabled"; }; &cdc_sdw_gpios { status = "disabled"; }; &wsa_spkr_en1 { status = "disabled"; }; &wsa_spkr_en2 { status = "disabled"; }; &qupv3_se8_spi { status = "okay"; }; &wcd9xxx_intc { status = "okay"; }; &wdsp_mgr { status = "okay"; }; &wdsp_glink { status = "okay"; }; &slim_aud { status = "okay"; }; &dai_slim { status = "okay"; }; &wcd934x_cdc { status = "okay"; }; &clock_audio_lnbb { status = "okay"; }; &tavil_snd { status = "okay"; compatible = "qcom,qcs605-asoc-snd-tavil"; qcom,model = "qcs605-tavil-snd-card"; qcom,audio-routing = "AIF4 VI", "MCLK", "RX_BIAS", "MCLK", "MADINPUT", "MCLK", "DMIC0", "MIC BIAS1", "MIC BIAS1", "Digital Mic0", "DMIC1", "MIC BIAS1", "MIC BIAS1", "Digital Mic1", "DMIC2", "MIC BIAS3", "MIC BIAS3", "Digital Mic2", "DMIC3", "MIC BIAS3", "MIC BIAS3", "Digital Mic3", "SpkrLeft IN", "SPK1 OUT"; qcom,wsa-max-devs = <1>; qcom,wsa-devs = <&wsa881x_0211>, <&wsa881x_0213>; qcom,wsa-aux-dev-prefix = "SpkrLeft", "SpkrLeft"; }; &soc { wcd_rst_gpio1: msm_cdc_pinctrl@11 { compatible = "qcom,msm-cdc-pinctrl"; qcom,cdc-rst-n-gpio = <&tlmm 11 0>; pinctrl-names = "aud_active", "aud_sleep"; pinctrl-0 = <&cdc_reset_active>; pinctrl-1 = <&cdc_reset_sleep>; }; }; &wcd934x_cdc { /delete-property/ cdc-vdd-mic-bias-supply; /delete-property/ qcom,cdc-static-supplies; qcom,wcd-rst-gpio-node = <&wcd_rst_gpio1>; }; &wcd9335 { /delete-property/ cdc-vdd-mic-bias-supply; };