Loading Documentation/devicetree/bindings/sound/qcom-audio-dev.txt +2 −0 Original line number Diff line number Diff line Loading @@ -1185,6 +1185,8 @@ Example: Required properties: - compatible : "qcom,sm8150-asoc-snd-stub" for SM8150 target. - compatible : "qcom,kona-asoc-snd-stub" for Kona target. - compatible : "qcom,msm8952-audio-codec" for pmic codec, "qcom,msm8952-dig-asoc-snd" for digital internal codec. - qcom,model : The user-visible name of this sound card. - qcom,tasha-mclk-clk-freq : MCLK frequency value for tasha codec - asoc-platform: This is phandle list containing the references to platform device Loading Documentation/devicetree/bindings/sound/tfa98xx.txt 0 → 100644 +26 −0 Original line number Diff line number Diff line TFA9898 SmartpA Required properties: - compatible : "nxp,tfa98xx" - reg : I2C address of the device - reset-gpio : gpio used for HW reset - dvdd-supply : Power supply for PA's dvdd - dvdd-voltage : Minimum and maximum voltage in uV to set for power supply - dvdd-current : dvdd's max current in uA Examples: i2c_smartpa@34 { compatible = "nxp,tfa98xx; reg = <0x34>; reset-gpio = <&tlmm 68 0>; dvdd-supply = <&pm660_l9>; dvdd-voltage = <1800000 1800000>; dvdd-current = <15000>; }; arch/arm64/boot/dts/qcom/sdm429-audio.dtsi 0 → 100644 +162 −0 Original line number Diff line number Diff line /* * Copyright (c) 2018, 2020, 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 "msm-audio-lpass.dtsi" &msm_audio_ion { iommus = <&apps_iommu 0x2001 0x0>; qcom,smmu-sid-mask = /bits/ 64 <0xf>; }; &soc { qcom,avtimer@c0a300c { compatible = "qcom,avtimer"; reg = <0x0c0a300c 0x4>, <0x0c0a3010 0x4>; reg-names = "avtimer_lsb_addr", "avtimer_msb_addr"; qcom,clk-div = <27>; }; audio_apr: qcom,msm-audio-apr { compatible = "qcom,msm-audio-apr"; q6core: q6core { compatible = "qcom,q6core-audio"; }; }; int_codec: sound { status = "disabled"; compatible = "qcom,msm8952-audio-codec"; qcom,model = "msm8952-snd-card-mtp"; reg = <0xc051000 0x4>, <0xc051004 0x4>, <0xc055000 0x4>, <0xc052000 0x4>; reg-names = "csr_gp_io_mux_mic_ctl", "csr_gp_io_mux_spkr_ctl", "csr_gp_io_lpaif_pri_pcm_pri_mode_muxsel", "csr_gp_io_mux_quin_ctl"; qcom,msm-ext-pa = "primary"; qcom,msm-mclk-freq = <9600000>; qcom,msm-mbhc-hphl-swh = <0>; qcom,msm-mbhc-gnd-swh = <0>; qcom,msm-hs-micbias-type = "external"; qcom,msm-micbias1-ext-cap; qcom,audio-routing = "RX_BIAS", "MCLK", "SPK_RX_BIAS", "MCLK", "INT_LDO_H", "MCLK", "RX_I2S_CLK", "MCLK", "TX_I2S_CLK", "MCLK", "MIC BIAS External", "Handset Mic", "MIC BIAS External2", "Headset Mic", "MIC BIAS External", "Secondary Mic", "AMIC1", "MIC BIAS External", "AMIC2", "MIC BIAS External2", "AMIC3", "MIC BIAS External", "ADC1_IN", "ADC1_OUT", "ADC2_IN", "ADC2_OUT", "ADC3_IN", "ADC3_OUT", "PDM_IN_RX1", "PDM_OUT_RX1", "PDM_IN_RX2", "PDM_OUT_RX2", "PDM_IN_RX3", "PDM_OUT_RX3", "WSA_SPK OUT", "VDD_WSA_SWITCH", "SpkrMono WSA_IN", "WSA_SPK OUT"; qcom,cdc-us-euro-gpios = <&tlmm 63 0>; qcom,cdc-us-eu-gpios = <&cdc_us_euro_sw>; qcom,pri-mi2s-gpios = <&cdc_pri_mi2s_gpios>; qcom,quin-mi2s-gpios = <&cdc_quin_mi2s_gpios>; 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>; 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"; asoc-codec = <&stub_codec>; asoc-codec-names = "msm-stub-codec.1"; }; cdc_us_euro_sw: msm_cdc_pinctrl_us_euro_sw { compatible = "qcom,msm-cdc-pinctrl"; pinctrl-names = "aud_active", "aud_sleep"; pinctrl-0 = <&cross_conn_det_act>; pinctrl-1 = <&cross_conn_det_sus>; }; cdc_pri_mi2s_gpios: msm_cdc_pinctrl_pri { compatible = "qcom,msm-cdc-pinctrl"; pinctrl-names = "aud_active", "aud_sleep"; pinctrl-0 = <&cdc_pdm_lines_act &cdc_pdm_lines_2_act>; pinctrl-1 = <&cdc_pdm_lines_sus &cdc_pdm_lines_2_sus>; }; cdc_quin_mi2s_gpios: msm_cdc_pinctrl_quin { compatible = "qcom,msm-cdc-pinctrl"; pinctrl-names = "aud_active", "aud_sleep"; pinctrl-0 = <&pri_tlmm_lines_act &pri_tlmm_ws_act>; pinctrl-1 = <&pri_tlmm_lines_sus &pri_tlmm_ws_sus>; }; i2c@78b6000 { status = "okay"; }; cpe: qcom,msm-cpe-lsm { compatible = "qcom,msm-cpe-lsm"; }; clock_audio: audio_ext_clk { status = "disabled"; compatible = "qcom,audio-ref-clk"; clock-names = "osr_clk"; qcom,node_has_rpm_clock; #clock-cells = <1>; pinctrl-0 = <&cdc_mclk2_sleep>; pinctrl-1 = <&cdc_mclk2_active>; }; }; arch/arm64/boot/dts/qcom/sdm429-bg-dvt2-wtp-overlay.dts +1 −0 Original line number Diff line number Diff line Loading @@ -17,6 +17,7 @@ #include <dt-bindings/clock/qcom,rpmcc.h> #include "sdm429-bg-dvt2-wtp.dtsi" #include "sdm429-mdss-panels.dtsi" #include "sdm429-spyro-qrd-evt-audio.dtsi" / { model = "Qualcomm Technologies, Inc. SDM429 QRD BG WTP Overlay"; Loading arch/arm64/boot/dts/qcom/sdm429-pinctrl.dtsi +269 −0 Original line number Diff line number Diff line Loading @@ -1044,5 +1044,274 @@ }; }; }; pmx_quat_mi2s { label = "quat_mi2s"; quat_mi2s_active: quat_mi2s_active { mux { pins = "gpio94", "gpio95"; function = "sec_mi2s"; }; configs { pins = "gpio94", "gpio95"; drive-strength = <8>; /* 8 MA */ bias-disable; /* No PULL */ }; }; quat_mi2s_sleep: quat_mi2s_sleep { mux { pins = "gpio94", "gpio95"; function = "sec_mi2s"; }; configs { pins = "gpio94", "gpio95"; drive-strength = <2>; /* 2 MA */ bias-pull-down; /* PULL DOWN */ }; }; }; pmx_quat_mi2s_din { label = "quat_mi2s_din"; quat_mi2s_din_active: quat_mi2s_din_active { mux { pins = "gpio12", "gpio13"; function = "sec_mi2s"; }; configs { pins = "gpio12", "gpio13"; drive-strength = <8>; /* 8 MA */ bias-disable; /* No PULL */ output-high; }; }; quat_mi2s_din_sleep: quat_mi2s_din_sleep { mux { pins = "gpio12", "gpio13"; function = "sec_mi2s"; }; configs { pins = "gpio12", "gpio13"; drive-strength = <2>; /* 2 MA */ bias-pull-down; /* PULL DOWN */ }; }; }; cdc-dmic-lines { cdc_dmic0_clk_act: dmic0_clk_on { mux { pins = "gpio89"; function = "dmic0_clk"; }; config { pins = "gpio89"; drive-strength = <8>; bias-pull-none; }; }; cdc_dmic0_clk_sus: dmic0_clk_off { mux { pins = "gpio89"; function = "gpio"; }; config { pins = "gpio89"; drive-strength = <2>; bias-disable; }; }; cdc_dmic0_data_act: dmic0_data_on { mux { pins = "gpio90"; function = "dmic0_data"; }; config { pins = "gpio90"; drive-strength = <8>; bias-pull-none; }; }; cdc_dmic0_data_sus: dmic0_data_off { mux { pins = "gpio90"; function = "gpio"; }; config { pins = "gpio90"; drive-strength = <2>; bias-disable; }; }; }; cdc_mclk2_pin { cdc_mclk2_sleep: cdc_mclk2_sleep { mux { pins = "gpio66"; function = "pri_mi2s"; }; config { pins = "gpio66"; drive-strength = <2>; /* 2 mA */ bias-pull-down; /* PULL DOWN */ }; }; cdc_mclk2_active: cdc_mclk2_active { mux { pins = "gpio66"; function = "pri_mi2s"; }; config { pins = "gpio66"; drive-strength = <8>; /* 8 mA */ bias-disable; /* NO PULL */ }; }; }; cross-conn-det { cross_conn_det_act: lines_on { mux { pins = "gpio63"; function = "gpio"; }; config { pins = "gpio63"; drive-strength = <8>; output-low; bias-pull-down; }; }; cross_conn_det_sus: lines_off { mux { pins = "gpio63"; function = "gpio"; }; config { pins = "gpio63"; drive-strength = <2>; bias-pull-down; }; }; }; cdc-pdm-lines { cdc_pdm_lines_act: pdm_lines_on { mux { pins = "gpio69", "gpio73", "gpio74"; function = "cdc_pdm0"; }; config { pins = "gpio69", "gpio73", "gpio74"; drive-strength = <8>; }; }; cdc_pdm_lines_sus: pdm_lines_off { mux { pins = "gpio69", "gpio73", "gpio74"; function = "cdc_pdm0"; }; config { pins = "gpio69", "gpio73", "gpio74"; drive-strength = <2>; bias-disable; }; }; }; cdc-pdm-2-lines { cdc_pdm_lines_2_act: pdm_lines_2_on { mux { pins = "gpio70", "gpio71", "gpio72"; function = "cdc_pdm0"; }; config { pins = "gpio70", "gpio71", "gpio72"; drive-strength = <8>; }; }; cdc_pdm_lines_2_sus: pdm_lines_2_off { mux { pins = "gpio70", "gpio71", "gpio72"; function = "cdc_pdm0"; }; config { pins = "gpio70", "gpio71", "gpio72"; drive-strength = <2>; bias-disable; }; }; }; pri-tlmm-lines { pri_tlmm_lines_act: pri_tlmm_lines_act { mux { pins = "gpio85", "gpio88"; function = "pri_mi2s"; }; config { pins = "gpio85", "gpio88"; drive-strength = <8>; }; }; pri_tlmm_lines_sus: pri_tlmm_lines_sus { mux { pins = "gpio85", "gpio88"; function = "pri_mi2s"; }; config { pins = "gpio85", "gpio88"; drive-strength = <2>; bias-pull-down; }; }; }; pri-tlmm-ws-lines { pri_tlmm_ws_act: pri_tlmm_ws_act { mux { pins = "gpio87"; function = "pri_mi2s_ws"; }; config { pins = "gpio87"; drive-strength = <8>; }; }; pri_tlmm_ws_sus: pri_tlmm_ws_sus { mux { pins = "gpio87"; function = "pri_mi2s_ws"; }; config { pins = "gpio87"; drive-strength = <2>; bias-pull-down; }; }; }; }; }; Loading
Documentation/devicetree/bindings/sound/qcom-audio-dev.txt +2 −0 Original line number Diff line number Diff line Loading @@ -1185,6 +1185,8 @@ Example: Required properties: - compatible : "qcom,sm8150-asoc-snd-stub" for SM8150 target. - compatible : "qcom,kona-asoc-snd-stub" for Kona target. - compatible : "qcom,msm8952-audio-codec" for pmic codec, "qcom,msm8952-dig-asoc-snd" for digital internal codec. - qcom,model : The user-visible name of this sound card. - qcom,tasha-mclk-clk-freq : MCLK frequency value for tasha codec - asoc-platform: This is phandle list containing the references to platform device Loading
Documentation/devicetree/bindings/sound/tfa98xx.txt 0 → 100644 +26 −0 Original line number Diff line number Diff line TFA9898 SmartpA Required properties: - compatible : "nxp,tfa98xx" - reg : I2C address of the device - reset-gpio : gpio used for HW reset - dvdd-supply : Power supply for PA's dvdd - dvdd-voltage : Minimum and maximum voltage in uV to set for power supply - dvdd-current : dvdd's max current in uA Examples: i2c_smartpa@34 { compatible = "nxp,tfa98xx; reg = <0x34>; reset-gpio = <&tlmm 68 0>; dvdd-supply = <&pm660_l9>; dvdd-voltage = <1800000 1800000>; dvdd-current = <15000>; };
arch/arm64/boot/dts/qcom/sdm429-audio.dtsi 0 → 100644 +162 −0 Original line number Diff line number Diff line /* * Copyright (c) 2018, 2020, 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 "msm-audio-lpass.dtsi" &msm_audio_ion { iommus = <&apps_iommu 0x2001 0x0>; qcom,smmu-sid-mask = /bits/ 64 <0xf>; }; &soc { qcom,avtimer@c0a300c { compatible = "qcom,avtimer"; reg = <0x0c0a300c 0x4>, <0x0c0a3010 0x4>; reg-names = "avtimer_lsb_addr", "avtimer_msb_addr"; qcom,clk-div = <27>; }; audio_apr: qcom,msm-audio-apr { compatible = "qcom,msm-audio-apr"; q6core: q6core { compatible = "qcom,q6core-audio"; }; }; int_codec: sound { status = "disabled"; compatible = "qcom,msm8952-audio-codec"; qcom,model = "msm8952-snd-card-mtp"; reg = <0xc051000 0x4>, <0xc051004 0x4>, <0xc055000 0x4>, <0xc052000 0x4>; reg-names = "csr_gp_io_mux_mic_ctl", "csr_gp_io_mux_spkr_ctl", "csr_gp_io_lpaif_pri_pcm_pri_mode_muxsel", "csr_gp_io_mux_quin_ctl"; qcom,msm-ext-pa = "primary"; qcom,msm-mclk-freq = <9600000>; qcom,msm-mbhc-hphl-swh = <0>; qcom,msm-mbhc-gnd-swh = <0>; qcom,msm-hs-micbias-type = "external"; qcom,msm-micbias1-ext-cap; qcom,audio-routing = "RX_BIAS", "MCLK", "SPK_RX_BIAS", "MCLK", "INT_LDO_H", "MCLK", "RX_I2S_CLK", "MCLK", "TX_I2S_CLK", "MCLK", "MIC BIAS External", "Handset Mic", "MIC BIAS External2", "Headset Mic", "MIC BIAS External", "Secondary Mic", "AMIC1", "MIC BIAS External", "AMIC2", "MIC BIAS External2", "AMIC3", "MIC BIAS External", "ADC1_IN", "ADC1_OUT", "ADC2_IN", "ADC2_OUT", "ADC3_IN", "ADC3_OUT", "PDM_IN_RX1", "PDM_OUT_RX1", "PDM_IN_RX2", "PDM_OUT_RX2", "PDM_IN_RX3", "PDM_OUT_RX3", "WSA_SPK OUT", "VDD_WSA_SWITCH", "SpkrMono WSA_IN", "WSA_SPK OUT"; qcom,cdc-us-euro-gpios = <&tlmm 63 0>; qcom,cdc-us-eu-gpios = <&cdc_us_euro_sw>; qcom,pri-mi2s-gpios = <&cdc_pri_mi2s_gpios>; qcom,quin-mi2s-gpios = <&cdc_quin_mi2s_gpios>; 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>; 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"; asoc-codec = <&stub_codec>; asoc-codec-names = "msm-stub-codec.1"; }; cdc_us_euro_sw: msm_cdc_pinctrl_us_euro_sw { compatible = "qcom,msm-cdc-pinctrl"; pinctrl-names = "aud_active", "aud_sleep"; pinctrl-0 = <&cross_conn_det_act>; pinctrl-1 = <&cross_conn_det_sus>; }; cdc_pri_mi2s_gpios: msm_cdc_pinctrl_pri { compatible = "qcom,msm-cdc-pinctrl"; pinctrl-names = "aud_active", "aud_sleep"; pinctrl-0 = <&cdc_pdm_lines_act &cdc_pdm_lines_2_act>; pinctrl-1 = <&cdc_pdm_lines_sus &cdc_pdm_lines_2_sus>; }; cdc_quin_mi2s_gpios: msm_cdc_pinctrl_quin { compatible = "qcom,msm-cdc-pinctrl"; pinctrl-names = "aud_active", "aud_sleep"; pinctrl-0 = <&pri_tlmm_lines_act &pri_tlmm_ws_act>; pinctrl-1 = <&pri_tlmm_lines_sus &pri_tlmm_ws_sus>; }; i2c@78b6000 { status = "okay"; }; cpe: qcom,msm-cpe-lsm { compatible = "qcom,msm-cpe-lsm"; }; clock_audio: audio_ext_clk { status = "disabled"; compatible = "qcom,audio-ref-clk"; clock-names = "osr_clk"; qcom,node_has_rpm_clock; #clock-cells = <1>; pinctrl-0 = <&cdc_mclk2_sleep>; pinctrl-1 = <&cdc_mclk2_active>; }; };
arch/arm64/boot/dts/qcom/sdm429-bg-dvt2-wtp-overlay.dts +1 −0 Original line number Diff line number Diff line Loading @@ -17,6 +17,7 @@ #include <dt-bindings/clock/qcom,rpmcc.h> #include "sdm429-bg-dvt2-wtp.dtsi" #include "sdm429-mdss-panels.dtsi" #include "sdm429-spyro-qrd-evt-audio.dtsi" / { model = "Qualcomm Technologies, Inc. SDM429 QRD BG WTP Overlay"; Loading
arch/arm64/boot/dts/qcom/sdm429-pinctrl.dtsi +269 −0 Original line number Diff line number Diff line Loading @@ -1044,5 +1044,274 @@ }; }; }; pmx_quat_mi2s { label = "quat_mi2s"; quat_mi2s_active: quat_mi2s_active { mux { pins = "gpio94", "gpio95"; function = "sec_mi2s"; }; configs { pins = "gpio94", "gpio95"; drive-strength = <8>; /* 8 MA */ bias-disable; /* No PULL */ }; }; quat_mi2s_sleep: quat_mi2s_sleep { mux { pins = "gpio94", "gpio95"; function = "sec_mi2s"; }; configs { pins = "gpio94", "gpio95"; drive-strength = <2>; /* 2 MA */ bias-pull-down; /* PULL DOWN */ }; }; }; pmx_quat_mi2s_din { label = "quat_mi2s_din"; quat_mi2s_din_active: quat_mi2s_din_active { mux { pins = "gpio12", "gpio13"; function = "sec_mi2s"; }; configs { pins = "gpio12", "gpio13"; drive-strength = <8>; /* 8 MA */ bias-disable; /* No PULL */ output-high; }; }; quat_mi2s_din_sleep: quat_mi2s_din_sleep { mux { pins = "gpio12", "gpio13"; function = "sec_mi2s"; }; configs { pins = "gpio12", "gpio13"; drive-strength = <2>; /* 2 MA */ bias-pull-down; /* PULL DOWN */ }; }; }; cdc-dmic-lines { cdc_dmic0_clk_act: dmic0_clk_on { mux { pins = "gpio89"; function = "dmic0_clk"; }; config { pins = "gpio89"; drive-strength = <8>; bias-pull-none; }; }; cdc_dmic0_clk_sus: dmic0_clk_off { mux { pins = "gpio89"; function = "gpio"; }; config { pins = "gpio89"; drive-strength = <2>; bias-disable; }; }; cdc_dmic0_data_act: dmic0_data_on { mux { pins = "gpio90"; function = "dmic0_data"; }; config { pins = "gpio90"; drive-strength = <8>; bias-pull-none; }; }; cdc_dmic0_data_sus: dmic0_data_off { mux { pins = "gpio90"; function = "gpio"; }; config { pins = "gpio90"; drive-strength = <2>; bias-disable; }; }; }; cdc_mclk2_pin { cdc_mclk2_sleep: cdc_mclk2_sleep { mux { pins = "gpio66"; function = "pri_mi2s"; }; config { pins = "gpio66"; drive-strength = <2>; /* 2 mA */ bias-pull-down; /* PULL DOWN */ }; }; cdc_mclk2_active: cdc_mclk2_active { mux { pins = "gpio66"; function = "pri_mi2s"; }; config { pins = "gpio66"; drive-strength = <8>; /* 8 mA */ bias-disable; /* NO PULL */ }; }; }; cross-conn-det { cross_conn_det_act: lines_on { mux { pins = "gpio63"; function = "gpio"; }; config { pins = "gpio63"; drive-strength = <8>; output-low; bias-pull-down; }; }; cross_conn_det_sus: lines_off { mux { pins = "gpio63"; function = "gpio"; }; config { pins = "gpio63"; drive-strength = <2>; bias-pull-down; }; }; }; cdc-pdm-lines { cdc_pdm_lines_act: pdm_lines_on { mux { pins = "gpio69", "gpio73", "gpio74"; function = "cdc_pdm0"; }; config { pins = "gpio69", "gpio73", "gpio74"; drive-strength = <8>; }; }; cdc_pdm_lines_sus: pdm_lines_off { mux { pins = "gpio69", "gpio73", "gpio74"; function = "cdc_pdm0"; }; config { pins = "gpio69", "gpio73", "gpio74"; drive-strength = <2>; bias-disable; }; }; }; cdc-pdm-2-lines { cdc_pdm_lines_2_act: pdm_lines_2_on { mux { pins = "gpio70", "gpio71", "gpio72"; function = "cdc_pdm0"; }; config { pins = "gpio70", "gpio71", "gpio72"; drive-strength = <8>; }; }; cdc_pdm_lines_2_sus: pdm_lines_2_off { mux { pins = "gpio70", "gpio71", "gpio72"; function = "cdc_pdm0"; }; config { pins = "gpio70", "gpio71", "gpio72"; drive-strength = <2>; bias-disable; }; }; }; pri-tlmm-lines { pri_tlmm_lines_act: pri_tlmm_lines_act { mux { pins = "gpio85", "gpio88"; function = "pri_mi2s"; }; config { pins = "gpio85", "gpio88"; drive-strength = <8>; }; }; pri_tlmm_lines_sus: pri_tlmm_lines_sus { mux { pins = "gpio85", "gpio88"; function = "pri_mi2s"; }; config { pins = "gpio85", "gpio88"; drive-strength = <2>; bias-pull-down; }; }; }; pri-tlmm-ws-lines { pri_tlmm_ws_act: pri_tlmm_ws_act { mux { pins = "gpio87"; function = "pri_mi2s_ws"; }; config { pins = "gpio87"; drive-strength = <8>; }; }; pri_tlmm_ws_sus: pri_tlmm_ws_sus { mux { pins = "gpio87"; function = "pri_mi2s_ws"; }; config { pins = "gpio87"; drive-strength = <2>; bias-pull-down; }; }; }; }; };