Loading arch/arm64/boot/dts/qcom/apq8009-dragon.dts +157 −17 Original line number Diff line number Diff line Loading @@ -16,7 +16,6 @@ #include "msm8909-mtp.dtsi" #include "8909-pm8916.dtsi" #include "msm8909-pm8916-mtp.dtsi" #include "apq8009-audio-external_codec.dtsi" / { model = "Qualcomm Technologies, Inc. APQ8009 Dragon Board"; Loading @@ -26,24 +25,95 @@ }; &soc { ext-codec { cdc_dmic_gpios: cdc_dmic_pinctrl { compatible = "qcom,msm-cdc-pinctrl"; pinctrl-names = "aud_active", "aud_sleep"; pinctrl-0 = <&cdc_dmic0_clk_act &cdc_dmic0_data_act>; pinctrl-1 = <&cdc_dmic0_clk_sus &cdc_dmic0_data_sus>; }; cdc_prim_mi2s_gpios: msm_cdc_pinctrl_pri { compatible = "qcom,msm-cdc-pinctrl"; pinctrl-names = "aud_active", "aud_sleep"; pinctrl-0 = <&pri_mi2s_sleep &pri_mi2s_ws_sleep &pri_mi2s_dout_sleep &pri_mi2s_din_sleep &ext_amp_ctrl_sleep &_mute_sleep>; pinctrl-1 = <&pri_mi2s_active &pri_mi2s_ws_active &pri_mi2s_dout_active &pri_mi2s_din_active &ext_amp_ctrl_active &_mute_active>; }; audio_codec_mtp: sound { status = "ok"; qcom,msm-hs-micbias-type = "internal"; qcom,model = "msm8909-212-som-snd-card"; qcom,msm-mbhc-hphl-swh = <0>; qcom,audio-routing = "AIF4 VI", "MCLK", "RX_BIAS", "MCLK", "MADINPUT", "MCLK", "AMIC2", "MIC BIAS2", "MIC BIAS2", "Headset 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", "SpkrLeft IN", "SPK1 OUT", "SpkrRight IN", "SPK2 OUT"; "SPK_RX_BIAS", "MCLK", "INT_LDO_H", "MCLK", "RX_I2S_CLK", "MCLK", "TX_I2S_CLK", "MCLK", "MIC BIAS Internal1", "Handset Mic", "MIC BIAS Internal2", "Headset Mic", "MIC BIAS Internal1", "Secondary Mic", "AMIC1", "MIC BIAS Internal1", "AMIC2", "MIC BIAS Internal2", "AMIC3", "MIC BIAS Internal1", "DMIC1", "DIGITAL_REGULATOR", "DIGITAL_REGULATOR", "Digital Mic1", "DMIC2", "DIGITAL_REGULATOR", "DIGITAL_REGULATOR", "Digital Mic2"; qcom,pri-mi2s-gpios = <&cdc_prim_mi2s_gpios>; qcom,cdc-dmic-gpios = <&cdc_dmic_gpios>; qcom,afe-rxtx-lb; asoc-platform = <&pcm0>, <&pcm1>, <&pcm2>, <&voip>, <&voice>, <&loopback>, <&compress>, <&hostless>, <&afe>, <&lsm>, <&routing>, <&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-pcm-dsp-noirq"; asoc-cpu = <&dai_pri_auxpcm>, <&dai_mi2s0>, <&dai_mi2s1>, <&dai_mi2s2>, <&dai_mi2s3>, <&dai_mi2s4>, <&dai_mi2s5>, <&sb_0_rx>, <&sb_0_tx>, <&sb_1_rx>, <&sb_1_tx>, <&sb_3_rx>, <&sb_3_tx>, <&sb_4_rx>, <&sb_4_tx>, <&bt_sco_rx>, <&bt_sco_tx>, <&int_fm_rx>, <&int_fm_tx>, <&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>, <&bt_a2dp_rx>, <&afe_loopback_tx>; asoc-cpu-names = "msm-dai-q6-auxpcm.1", "msm-dai-q6-mi2s.0", "msm-dai-q6-mi2s.1", "msm-dai-q6-mi2s.2", "msm-dai-q6-mi2s.3", "msm-dai-q6-mi2s.4", "msm-dai-q6-mi2s.6", "msm-dai-q6-dev.16384", "msmdai-q6-dev.16385", "msm-dai-q6-dev.16386", "msm-dai-q6-dev.16387", "msm-dai-q6-dev.16390", "msm-dai-q6-dev.16391", "msm-dai-q6-dev.16392", "msm-dai-q6-dev.16393", "msm-dai-q6-dev.12288", "msm-dai-q6-dev.12289", "msm-dai-q6-dev.12292", "msm-dai-q6-dev.12293", "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.12290", "msm-dai-q6-dev.24577"; asoc-codec = <&stub_codec>, <&msm_digital_codec>, <&pmic_analog_codec>; asoc-codec-names = "msm-stub-codec.1", "msm-dig-codec", "analog-codec"; }; sound-9335 { Loading Loading @@ -97,6 +167,72 @@ status = "disabled"; }; &pm8916_1 { pmic_analog_codec: analog-codec@f000 { compatible = "qcom,pmic-analog-codec"; reg = <0xf000 0x200>; #address-cells = <2>; #size-cells = <0>; interrupt-parent = <&spmi_bus>; interrupts = <0x1 0xf0 0x0 IRQ_TYPE_NONE>, <0x1 0xf0 0x1 IRQ_TYPE_NONE>, <0x1 0xf0 0x2 IRQ_TYPE_NONE>, <0x1 0xf0 0x3 IRQ_TYPE_NONE>, <0x1 0xf0 0x4 IRQ_TYPE_NONE>, <0x1 0xf0 0x5 IRQ_TYPE_NONE>, <0x1 0xf0 0x6 IRQ_TYPE_NONE>, <0x1 0xf0 0x7 IRQ_TYPE_NONE>, <0x1 0xf1 0x0 IRQ_TYPE_NONE>, <0x1 0xf1 0x1 IRQ_TYPE_NONE>, <0x1 0xf1 0x2 IRQ_TYPE_NONE>, <0x1 0xf1 0x3 IRQ_TYPE_NONE>, <0x1 0xf1 0x4 IRQ_TYPE_NONE>, <0x1 0xf1 0x5 IRQ_TYPE_NONE>; interrupt-names = "spk_cnp_int", "spk_clip_int", "spk_ocp_int", "ins_rem_det1", "but_rel_det", "but_press_det", "ins_rem_det", "mbhc_int", "ear_ocp_int", "hphr_ocp_int", "hphl_ocp_det", "ear_cnp_int", "hphr_cnp_int", "hphl_cnp_int"; cdc-vdda-cp-supply = <&pm8916_s4>; qcom,cdc-vdda-cp-voltage = <1800000 2200000>; qcom,cdc-vdda-cp-current = <770000>; cdc-vdd-pa-supply = <&pm8916_l5>; qcom,cdc-vdd-pa-voltage = <1800000 1800000>; qcom,cdc-vdd-pa-current = <5000>; cdc-vdd-mic-bias-supply = <&pm8916_l13>; qcom,cdc-vdd-mic-bias-voltage = <3075000 3075000>; qcom,cdc-vdd-mic-bias-current = <25000>; qcom,cdc-mclk-clk-rate = <9600000>; qcom,cdc-static-supplies = "cdc-vdda-cp", "cdc-vdd-pa"; qcom,cdc-on-demand-supplies = "cdc-vdd-mic-bias"; msm_digital_codec: msm-dig-codec { compatible = "qcom,msm-digital-codec"; reg = <0x0771C000 0x0>; cdc-vdd-digital-supply = <&pm8916_l5>; qcom,cdc-vdd-digital-voltage = <1800000 1800000>; qcom,cdc-vdd-digital-current = <5000>; qcom,cdc-on-demand-supplies = "cdc-vdd-digital"; }; }; }; &msm_gpio { sdc2_wlan_gpio_on: sdc2_wlan_gpio_on { mux { Loading Loading @@ -192,7 +328,7 @@ qcom,recharge-thresh-mv = <100>; qcom,thermal-mitigation = <1500 700 600 0>; regulator-name = "smb1360_otg_vreg"; status= "disabled"; status= "okay"; }; }; Loading Loading @@ -221,3 +357,7 @@ &blsp1_uart2_hs { status = "ok"; }; &blsp1_uart1 { status = "disabled"; }; arch/arm64/boot/dts/qcom/msm8909-pinctrl.dtsi +59 −2 Original line number Diff line number Diff line Loading @@ -1981,7 +1981,7 @@ config { pins = "gpio4"; drive-strength = <8>; bias-pull-none; output-high; }; }; Loading @@ -1995,6 +1995,7 @@ pins = "gpio4"; drive-strength = <2>; bias-disable; output-low; }; }; Loading @@ -2007,7 +2008,7 @@ config { pins = "gpio5"; drive-strength = <8>; bias-pull-none; input-enable; }; }; Loading Loading @@ -2084,6 +2085,62 @@ }; }; amp_mute { label = "amp_mute"; amp_mute_active: amp_mute_active { mux { pins = "gpio84"; function = "gpio"; }; config { pins = "gpio84"; drive-strength = <8>; /* 8 MA */ bias-pull-up; /* PULL UP */ output-high; }; }; amp_mute_sleep: amp_mute_sleep { mux { pins = "gpio84"; function = "gpio"; }; configs { pins = "gpio84"; drive-strength = <2>; /* 2 MA */ bias-pull-down; /* PULL DOWN */ }; }; }; ext_amp_ctrl { label = "ext_amp_ctrl"; ext_amp_ctrl_active: ext_amp_ctrl_active { mux { pins = "gpio25"; function = "gpio"; }; config { pins = "gpio25"; drive-strength = <8>; /* 8 MA */ bias-pull-up; /* PULL UP */ output-high; }; }; ext_amp_ctrl_sleep: ext_amp_ctrl_sleep { mux { pins = "gpio25"; function = "gpio"; }; configs { pins = "gpio25"; drive-strength = <2>; /* 2 MA */ bias-pull-down; /* PULL DOWN */ }; }; }; pmx_i2s_mclk { label = "i2s_mclk"; i2s_mclk_active: i2s_mclk_active { Loading arch/arm64/boot/dts/qcom/msm8909.dtsi +6 −0 Original line number Diff line number Diff line Loading @@ -1465,6 +1465,12 @@ compatible = "qcom,msm-pcm-loopback"; }; pcm_noirq: qcom,msm-pcm-dsp-noirq { compatible = "qcom,msm-pcm-dsp-noirq"; qcom,msm-pcm-low-latency; qcom,latency-level = "ultra"; }; qcom,msm-dai-mi2s { compatible = "qcom,msm-dai-mi2s"; dai_mi2s0: qcom,msm-dai-q6-mi2s-prim { Loading Loading
arch/arm64/boot/dts/qcom/apq8009-dragon.dts +157 −17 Original line number Diff line number Diff line Loading @@ -16,7 +16,6 @@ #include "msm8909-mtp.dtsi" #include "8909-pm8916.dtsi" #include "msm8909-pm8916-mtp.dtsi" #include "apq8009-audio-external_codec.dtsi" / { model = "Qualcomm Technologies, Inc. APQ8009 Dragon Board"; Loading @@ -26,24 +25,95 @@ }; &soc { ext-codec { cdc_dmic_gpios: cdc_dmic_pinctrl { compatible = "qcom,msm-cdc-pinctrl"; pinctrl-names = "aud_active", "aud_sleep"; pinctrl-0 = <&cdc_dmic0_clk_act &cdc_dmic0_data_act>; pinctrl-1 = <&cdc_dmic0_clk_sus &cdc_dmic0_data_sus>; }; cdc_prim_mi2s_gpios: msm_cdc_pinctrl_pri { compatible = "qcom,msm-cdc-pinctrl"; pinctrl-names = "aud_active", "aud_sleep"; pinctrl-0 = <&pri_mi2s_sleep &pri_mi2s_ws_sleep &pri_mi2s_dout_sleep &pri_mi2s_din_sleep &ext_amp_ctrl_sleep &_mute_sleep>; pinctrl-1 = <&pri_mi2s_active &pri_mi2s_ws_active &pri_mi2s_dout_active &pri_mi2s_din_active &ext_amp_ctrl_active &_mute_active>; }; audio_codec_mtp: sound { status = "ok"; qcom,msm-hs-micbias-type = "internal"; qcom,model = "msm8909-212-som-snd-card"; qcom,msm-mbhc-hphl-swh = <0>; qcom,audio-routing = "AIF4 VI", "MCLK", "RX_BIAS", "MCLK", "MADINPUT", "MCLK", "AMIC2", "MIC BIAS2", "MIC BIAS2", "Headset 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", "SpkrLeft IN", "SPK1 OUT", "SpkrRight IN", "SPK2 OUT"; "SPK_RX_BIAS", "MCLK", "INT_LDO_H", "MCLK", "RX_I2S_CLK", "MCLK", "TX_I2S_CLK", "MCLK", "MIC BIAS Internal1", "Handset Mic", "MIC BIAS Internal2", "Headset Mic", "MIC BIAS Internal1", "Secondary Mic", "AMIC1", "MIC BIAS Internal1", "AMIC2", "MIC BIAS Internal2", "AMIC3", "MIC BIAS Internal1", "DMIC1", "DIGITAL_REGULATOR", "DIGITAL_REGULATOR", "Digital Mic1", "DMIC2", "DIGITAL_REGULATOR", "DIGITAL_REGULATOR", "Digital Mic2"; qcom,pri-mi2s-gpios = <&cdc_prim_mi2s_gpios>; qcom,cdc-dmic-gpios = <&cdc_dmic_gpios>; qcom,afe-rxtx-lb; asoc-platform = <&pcm0>, <&pcm1>, <&pcm2>, <&voip>, <&voice>, <&loopback>, <&compress>, <&hostless>, <&afe>, <&lsm>, <&routing>, <&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-pcm-dsp-noirq"; asoc-cpu = <&dai_pri_auxpcm>, <&dai_mi2s0>, <&dai_mi2s1>, <&dai_mi2s2>, <&dai_mi2s3>, <&dai_mi2s4>, <&dai_mi2s5>, <&sb_0_rx>, <&sb_0_tx>, <&sb_1_rx>, <&sb_1_tx>, <&sb_3_rx>, <&sb_3_tx>, <&sb_4_rx>, <&sb_4_tx>, <&bt_sco_rx>, <&bt_sco_tx>, <&int_fm_rx>, <&int_fm_tx>, <&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>, <&bt_a2dp_rx>, <&afe_loopback_tx>; asoc-cpu-names = "msm-dai-q6-auxpcm.1", "msm-dai-q6-mi2s.0", "msm-dai-q6-mi2s.1", "msm-dai-q6-mi2s.2", "msm-dai-q6-mi2s.3", "msm-dai-q6-mi2s.4", "msm-dai-q6-mi2s.6", "msm-dai-q6-dev.16384", "msmdai-q6-dev.16385", "msm-dai-q6-dev.16386", "msm-dai-q6-dev.16387", "msm-dai-q6-dev.16390", "msm-dai-q6-dev.16391", "msm-dai-q6-dev.16392", "msm-dai-q6-dev.16393", "msm-dai-q6-dev.12288", "msm-dai-q6-dev.12289", "msm-dai-q6-dev.12292", "msm-dai-q6-dev.12293", "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.12290", "msm-dai-q6-dev.24577"; asoc-codec = <&stub_codec>, <&msm_digital_codec>, <&pmic_analog_codec>; asoc-codec-names = "msm-stub-codec.1", "msm-dig-codec", "analog-codec"; }; sound-9335 { Loading Loading @@ -97,6 +167,72 @@ status = "disabled"; }; &pm8916_1 { pmic_analog_codec: analog-codec@f000 { compatible = "qcom,pmic-analog-codec"; reg = <0xf000 0x200>; #address-cells = <2>; #size-cells = <0>; interrupt-parent = <&spmi_bus>; interrupts = <0x1 0xf0 0x0 IRQ_TYPE_NONE>, <0x1 0xf0 0x1 IRQ_TYPE_NONE>, <0x1 0xf0 0x2 IRQ_TYPE_NONE>, <0x1 0xf0 0x3 IRQ_TYPE_NONE>, <0x1 0xf0 0x4 IRQ_TYPE_NONE>, <0x1 0xf0 0x5 IRQ_TYPE_NONE>, <0x1 0xf0 0x6 IRQ_TYPE_NONE>, <0x1 0xf0 0x7 IRQ_TYPE_NONE>, <0x1 0xf1 0x0 IRQ_TYPE_NONE>, <0x1 0xf1 0x1 IRQ_TYPE_NONE>, <0x1 0xf1 0x2 IRQ_TYPE_NONE>, <0x1 0xf1 0x3 IRQ_TYPE_NONE>, <0x1 0xf1 0x4 IRQ_TYPE_NONE>, <0x1 0xf1 0x5 IRQ_TYPE_NONE>; interrupt-names = "spk_cnp_int", "spk_clip_int", "spk_ocp_int", "ins_rem_det1", "but_rel_det", "but_press_det", "ins_rem_det", "mbhc_int", "ear_ocp_int", "hphr_ocp_int", "hphl_ocp_det", "ear_cnp_int", "hphr_cnp_int", "hphl_cnp_int"; cdc-vdda-cp-supply = <&pm8916_s4>; qcom,cdc-vdda-cp-voltage = <1800000 2200000>; qcom,cdc-vdda-cp-current = <770000>; cdc-vdd-pa-supply = <&pm8916_l5>; qcom,cdc-vdd-pa-voltage = <1800000 1800000>; qcom,cdc-vdd-pa-current = <5000>; cdc-vdd-mic-bias-supply = <&pm8916_l13>; qcom,cdc-vdd-mic-bias-voltage = <3075000 3075000>; qcom,cdc-vdd-mic-bias-current = <25000>; qcom,cdc-mclk-clk-rate = <9600000>; qcom,cdc-static-supplies = "cdc-vdda-cp", "cdc-vdd-pa"; qcom,cdc-on-demand-supplies = "cdc-vdd-mic-bias"; msm_digital_codec: msm-dig-codec { compatible = "qcom,msm-digital-codec"; reg = <0x0771C000 0x0>; cdc-vdd-digital-supply = <&pm8916_l5>; qcom,cdc-vdd-digital-voltage = <1800000 1800000>; qcom,cdc-vdd-digital-current = <5000>; qcom,cdc-on-demand-supplies = "cdc-vdd-digital"; }; }; }; &msm_gpio { sdc2_wlan_gpio_on: sdc2_wlan_gpio_on { mux { Loading Loading @@ -192,7 +328,7 @@ qcom,recharge-thresh-mv = <100>; qcom,thermal-mitigation = <1500 700 600 0>; regulator-name = "smb1360_otg_vreg"; status= "disabled"; status= "okay"; }; }; Loading Loading @@ -221,3 +357,7 @@ &blsp1_uart2_hs { status = "ok"; }; &blsp1_uart1 { status = "disabled"; };
arch/arm64/boot/dts/qcom/msm8909-pinctrl.dtsi +59 −2 Original line number Diff line number Diff line Loading @@ -1981,7 +1981,7 @@ config { pins = "gpio4"; drive-strength = <8>; bias-pull-none; output-high; }; }; Loading @@ -1995,6 +1995,7 @@ pins = "gpio4"; drive-strength = <2>; bias-disable; output-low; }; }; Loading @@ -2007,7 +2008,7 @@ config { pins = "gpio5"; drive-strength = <8>; bias-pull-none; input-enable; }; }; Loading Loading @@ -2084,6 +2085,62 @@ }; }; amp_mute { label = "amp_mute"; amp_mute_active: amp_mute_active { mux { pins = "gpio84"; function = "gpio"; }; config { pins = "gpio84"; drive-strength = <8>; /* 8 MA */ bias-pull-up; /* PULL UP */ output-high; }; }; amp_mute_sleep: amp_mute_sleep { mux { pins = "gpio84"; function = "gpio"; }; configs { pins = "gpio84"; drive-strength = <2>; /* 2 MA */ bias-pull-down; /* PULL DOWN */ }; }; }; ext_amp_ctrl { label = "ext_amp_ctrl"; ext_amp_ctrl_active: ext_amp_ctrl_active { mux { pins = "gpio25"; function = "gpio"; }; config { pins = "gpio25"; drive-strength = <8>; /* 8 MA */ bias-pull-up; /* PULL UP */ output-high; }; }; ext_amp_ctrl_sleep: ext_amp_ctrl_sleep { mux { pins = "gpio25"; function = "gpio"; }; configs { pins = "gpio25"; drive-strength = <2>; /* 2 MA */ bias-pull-down; /* PULL DOWN */ }; }; }; pmx_i2s_mclk { label = "i2s_mclk"; i2s_mclk_active: i2s_mclk_active { Loading
arch/arm64/boot/dts/qcom/msm8909.dtsi +6 −0 Original line number Diff line number Diff line Loading @@ -1465,6 +1465,12 @@ compatible = "qcom,msm-pcm-loopback"; }; pcm_noirq: qcom,msm-pcm-dsp-noirq { compatible = "qcom,msm-pcm-dsp-noirq"; qcom,msm-pcm-low-latency; qcom,latency-level = "ultra"; }; qcom,msm-dai-mi2s { compatible = "qcom,msm-dai-mi2s"; dai_mi2s0: qcom,msm-dai-q6-mi2s-prim { Loading