| /* Copyright (c) 2019-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 "sa415m-ttp.dtsi" |
| #include "sdxpoorwills-v2.dtsi" |
| |
| &blsp1_uart2b_hs { |
| status = "okay"; |
| }; |
| |
| &qcom_seecom { |
| status = "okay"; |
| }; |
| |
| &qseecom_mem { |
| status = "okay"; |
| }; |
| |
| &qseecom_ta_mem { |
| status = "okay"; |
| }; |
| |
| &blsp1_uart2b_hs { |
| status = "okay"; |
| }; |
| |
| &mss_mem { |
| reg = <0x86400000 0x9300000>; |
| }; |
| |
| &i2c_3 { |
| tlv320aic3x_codec: tlv320aic3x@18 { |
| compatible = "ti,tlv320aic3x"; |
| reg = <0x18>; |
| gpio-reset = <&tlmm 86 0>; |
| reset-inverted; |
| AVDD-supply = <&codec_vreg>; |
| IOVDD-supply = <&codec_vreg>; |
| }; |
| }; |
| |
| &i2c_4 { |
| asm330@6a { |
| reg = <0x6b>; |
| asm330-enable-gpio = <&tlmm 90 0x1>; |
| }; |
| }; |
| |
| &spi_2 { |
| can-controller@0 { |
| qcom,max-can-channels = <2>; |
| }; |
| }; |
| |
| &wcd934x_cdc { |
| status = "disabled"; |
| }; |
| |
| &wcd9xxx_intc { |
| status = "disabled"; |
| }; |
| |
| &wcd_rst_gpio { |
| status = "disabled"; |
| }; |
| |
| &snd_934x { |
| status = "disabled"; |
| }; |
| |
| &clock_audio_up { |
| status = "disabled"; |
| }; |
| |
| &smb138x { |
| status = "disabled"; |
| }; |
| |
| &smb138x_vbus { |
| status = "disabled"; |
| }; |
| |
| &vreg_wlan { |
| gpio = <&tlmm 81 GPIO_ACTIVE_HIGH>; |
| }; |
| |
| &soc { |
| snd_tlv3x: sound-auto { |
| compatible = "qcom,sdx-asoc-snd-auto"; |
| qcom,model = "sdx-auto-i2s-snd-card"; |
| qcom,prim_mi2s_aux_master = <&prim_master>; |
| qcom,prim_mi2s_aux_slave = <&prim_slave>; |
| qcom,sec_mi2s_aux_master = <&sec_master>; |
| qcom,sec_mi2s_aux_slave = <&sec_slave>; |
| |
| pinctrl-names = "default"; |
| pinctrl-0 = <&a2b_cdc_sel_default>, <&i2s_mclk_active>; |
| |
| asoc-platform = <&pcm0>, <&pcm1>, <&voip>, <&voice>, |
| <&loopback>, <&hostless>, <&afe>, <&routing>, |
| <&pcm_dtmf>, <&host_pcm>, <&compress>; |
| asoc-platform-names = "msm-pcm-dsp.0", "msm-pcm-dsp.1", |
| "msm-voip-dsp", "msm-pcm-voice", |
| "msm-pcm-loopback", "msm-pcm-hostless", |
| "msm-pcm-afe", "msm-pcm-routing", |
| "msm-pcm-dtmf", "msm-voice-host-pcm", |
| "msm-compress-dsp"; |
| asoc-cpu = <&dai_pri_auxpcm>, <&mi2s_prim>, <&mi2s_sec>, |
| <&dtmf_tx>, |
| <&rx_capture_tx>, <&rx_playback_rx>, |
| <&tx_capture_tx>, <&tx_playback_rx>, |
| <&afe_pcm_rx>, <&afe_pcm_tx>, <&afe_proxy_rx>, |
| <&afe_proxy_tx>, <&incall_record_rx>, |
| <&incall_record_tx>, <&incall_music_rx>, |
| <&dai_pri_tdm_rx_0>, <&dai_pri_tdm_tx_0>, |
| <&dai_sec_tdm_rx_0>, <&dai_sec_tdm_tx_0>, |
| <&dai_sec_auxpcm>, <&incall_music_dl_rx>; |
| asoc-cpu-names = "msm-dai-q6-auxpcm.1", |
| "msm-dai-q6-mi2s.0", "msm-dai-q6-mi2s.1", |
| "msm-dai-stub-dev.4", "msm-dai-stub-dev.5", |
| "msm-dai-stub-dev.6", "msm-dai-stub-dev.7", |
| "msm-dai-stub-dev.8", "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-tdm.36864", "msm-dai-q6-tdm.36865", |
| "msm-dai-q6-tdm.36880", "msm-dai-q6-tdm.36881", |
| "msm-dai-q6-auxpcm.2", "msm-dai-q6-dev.32774"; |
| asoc-codec = <&tlv320aic3x_codec>, <&stub_codec>; |
| asoc-codec-names = "tlv320aic3x-codec", "msm-stub-codec.1"; |
| }; |
| |
| codec_vreg: regulator-codec-tlv320aic3x { |
| compatible = "regulator-fixed"; |
| regulator-name = "codec_vreg"; |
| startup-delay-us = <100>; |
| gpio = <&tlmm 23 GPIO_ACTIVE_HIGH>; |
| enable-active-high; |
| }; |
| |
| sdx_ext_ipc: qcom,sdx_ext_ipc { |
| compatible = "qcom,sdx-ext-ipc"; |
| qcom,default-policy-nop; |
| qcom,ap2mdm-status-gpio = <&tlmm 95 0x00>; |
| qcom,mdm2ap-status-gpio = <&tlmm 36 0x00>; |
| qcom,mdm2ap-status2-gpio = <&tlmm 88 0x00>; |
| status = "okay"; |
| }; |
| |
| wlan_ctrl1: wlan_ctrl1 { |
| compatible = "regulator-fixed"; |
| regulator-name = "wlan_ctrl1"; |
| startup-delay-us = <4000>; |
| gpio = <&tlmm 91 GPIO_ACTIVE_HIGH>; |
| enable-active-high; |
| }; |
| |
| wlan_ctrl2: wlan_ctrl2 { |
| compatible = "regulator-fixed"; |
| regulator-name = "wlan_ctrl2"; |
| startup-delay-us = <4000>; |
| gpio = <&tlmm 81 GPIO_ACTIVE_HIGH>; |
| enable-active-high; |
| }; |
| |
| cnss_pcie_converged: qcom,cnss-qca-converged { |
| compatible = "qcom,cnss-qca-converged"; |
| qcom,converged-dt; |
| qcom,wlan-rc-num = <0>; |
| qcom,bus-type=<0>; |
| qcom,notify-modem-status; |
| qcom,msm-bus,name = "msm-cnss"; |
| qcom,msm-bus,num-cases = <6>; |
| qcom,msm-bus,num-paths = <1>; |
| qcom,msm-bus,vectors-KBps = |
| /* no vote */ |
| <MSM_BUS_MASTER_PCIE MSM_BUS_SLAVE_FIRST 0 0>, |
| /* idle: 0-18 Mbps, ddr freq: 100 MHz */ |
| <MSM_BUS_MASTER_PCIE MSM_BUS_SLAVE_FIRST 2250 400000>, |
| /* low: 18-60 Mbps, ddr freq: 200 MHz*/ |
| <MSM_BUS_MASTER_PCIE MSM_BUS_SLAVE_FIRST 7500 800000>, |
| /* medium: 60-240 Mbps, ddr freq: 451.2 MHz */ |
| <MSM_BUS_MASTER_PCIE MSM_BUS_SLAVE_FIRST 30000 1804800>, |
| /* high: 240 - 800 Mbps, ddr freq: 451.2 MHz */ |
| <MSM_BUS_MASTER_PCIE MSM_BUS_SLAVE_FIRST 100000 1804800>, |
| /* very high: 800 - 1400 Mbps, ddr freq: 1555.2 MHz */ |
| <MSM_BUS_MASTER_PCIE MSM_BUS_SLAVE_FIRST 175000 6220800>; |
| |
| #address-cells=<1>; |
| #size-cells=<1>; |
| ranges = <0xa0000000 0xa0000000 0x10000000>, |
| <0xb0000000 0xb0000000 0x10000>; |
| |
| vdd-wlan-ctrl1-supply = <&wlan_ctrl1>; |
| vdd-wlan-ctrl2-supply = <&wlan_ctrl2>; |
| |
| vdd-wlan-aon-supply = <&pmxpoorwills_l6>; |
| vdd-wlan-rfa1-supply = <&pmxpoorwills_l6>; |
| vdd-wlan-rfa2-supply = <&pmxpoorwills_l6>; |
| vdd-wlan-rfa3-supply = <&pmxpoorwills_l6>; |
| |
| wlan_vregs = "vdd-wlan-ctrl1", "vdd-wlan-ctrl2"; |
| qcom,vdd-wlan-ctrl1-info = <0 0 0 0>; |
| qcom,vdd-wlan-ctrl2-info = <0 0 0 0>; |
| wlan-en-gpio = <&tlmm 52 0>; |
| pinctrl-names = "wlan_en_active", "wlan_en_sleep"; |
| pinctrl-0 = <&cnss_wlan_en_active>; |
| pinctrl-1 = <&cnss_wlan_en_sleep>; |
| |
| chip_cfg@0 { |
| reg = <0x10000000 0x10000000>, |
| <0x20000000 0x10000>; |
| reg-names = "smmu_iova_base", "smmu_iova_ipa"; |
| supported-ids = <0x003e>; |
| wlan_vregs = "vdd-wlan"; |
| qcom,vdd-wlan-info = <0 0 0 10>; |
| |
| qcom,smmu-s1-enable; |
| qcom,wlan-ramdump-dynamic = <0x200000>; |
| }; |
| |
| chip_cfg@1 { |
| reg = <0xa0000000 0x10000000>, |
| <0xb0000000 0x10000>; |
| reg-names = "smmu_iova_base", "smmu_iova_ipa"; |
| |
| supported-ids = <0x1101>; |
| wlan_vregs = "vdd-wlan-aon", "vdd-wlan-rfa1", |
| "vdd-wlan-rfa3"; |
| qcom,vdd-wlan-aon-info = <0 0 0 0>; |
| qcom,vdd-wlan-rfa1-info = <0 0 0 0>; |
| qcom,vdd-wlan-rfa3-info = <0 0 0 0>; |
| |
| qcom,wlan-ramdump-dynamic = <0x400000>; |
| mhi,max-channels = <30>; |
| mhi,timeout = <10000>; |
| qcom,smmu-s1-enable; |
| mhi_channels { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| mhi_chan@0 { |
| reg = <0>; |
| label = "LOOPBACK"; |
| mhi,num-elements = <32>; |
| mhi,event-ring = <1>; |
| mhi,chan-dir = <1>; |
| mhi,data-type = <0>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x14>; |
| }; |
| |
| mhi_chan@1 { |
| reg = <1>; |
| label = "LOOPBACK"; |
| mhi,num-elements = <32>; |
| mhi,event-ring = <1>; |
| mhi,chan-dir = <2>; |
| mhi,data-type = <0>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x14>; |
| }; |
| |
| mhi_chan@4 { |
| reg = <4>; |
| label = "DIAG"; |
| mhi,num-elements = <32>; |
| mhi,event-ring = <1>; |
| mhi,chan-dir = <1>; |
| mhi,data-type = <0>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x14>; |
| }; |
| |
| mhi_chan@5 { |
| reg = <5>; |
| label = "DIAG"; |
| mhi,num-elements = <32>; |
| mhi,event-ring = <1>; |
| mhi,chan-dir = <2>; |
| mhi,data-type = <0>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x14>; |
| }; |
| |
| mhi_chan@20 { |
| reg = <20>; |
| label = "IPCR"; |
| mhi,num-elements = <32>; |
| mhi,event-ring = <1>; |
| mhi,chan-dir = <1>; |
| mhi,data-type = <1>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x14>; |
| mhi,auto-start; |
| }; |
| |
| mhi_chan@21 { |
| reg = <21>; |
| label = "IPCR"; |
| mhi,num-elements = <32>; |
| mhi,event-ring = <1>; |
| mhi,chan-dir = <2>; |
| mhi,data-type = <0>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x14>; |
| mhi,auto-queue; |
| mhi,auto-start; |
| }; |
| }; |
| |
| mhi_events { |
| mhi_event@0 { |
| mhi,num-elements = <32>; |
| mhi,intmod = <1>; |
| mhi,msi = <1>; |
| mhi,priority = <1>; |
| mhi,brstmode = <2>; |
| mhi,data-type = <1>; |
| }; |
| |
| mhi_event@1 { |
| mhi,num-elements = <256>; |
| mhi,intmod = <1>; |
| mhi,msi = <2>; |
| mhi,priority = <1>; |
| mhi,brstmode = <2>; |
| }; |
| }; |
| }; |
| |
| chip_cfg@2 { |
| reg = <0xa0000000 0x10000000>, |
| <0xb0000000 0x10000>; |
| reg-names = "smmu_iova_base", "smmu_iova_ipa"; |
| qcom,smmu-s1-enable; |
| supported-ids = <0x1102>; |
| wlan_vregs = "vdd-wlan-aon", "vdd-wlan-rfa1", |
| "vdd-wlan-rfa2", "vdd-wlan-rfa3"; |
| qcom,vdd-wlan-aon-info = <0 0 0 0>; |
| qcom,vdd-wlan-rfa1-info = <0 0 0 0>; |
| qcom,vdd-wlan-rfa2-info = <0 0 0 0>; |
| qcom,vdd-wlan-rfa3-info = <0 0 0 0>; |
| |
| qcom,wlan-ramdump-dynamic = <0x300000>; |
| mhi,max-channels = <30>; |
| mhi,timeout = <10000>; |
| mhi,ee = <0x3>, <0x4>; |
| mhi,ee-names = "SBL", "RDDM"; |
| mhi,bhie-offset = <0x0324>; |
| |
| mhi_channels { |
| mhi_chan@0 { |
| reg = <0>; |
| label = "LOOPBACK"; |
| mhi,num-elements = <32>; |
| mhi,event-ring = <1>; |
| mhi,chan-dir = <1>; |
| mhi,data-type = <0>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x14>; |
| }; |
| |
| mhi_chan@1 { |
| reg = <1>; |
| label = "LOOPBACK"; |
| mhi,num-elements = <32>; |
| mhi,event-ring = <1>; |
| mhi,chan-dir = <2>; |
| mhi,data-type = <0>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x14>; |
| }; |
| |
| mhi_chan@4 { |
| reg = <4>; |
| label = "DIAG"; |
| mhi,num-elements = <32>; |
| mhi,event-ring = <1>; |
| mhi,chan-dir = <1>; |
| mhi,data-type = <0>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x14>; |
| }; |
| |
| mhi_chan@5 { |
| reg = <5>; |
| label = "DIAG"; |
| mhi,num-elements = <32>; |
| mhi,event-ring = <1>; |
| mhi,chan-dir = <2>; |
| mhi,data-type = <0>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x14>; |
| }; |
| |
| mhi_chan@16 { |
| reg = <16>; |
| label = "IPCR"; |
| mhi,num-elements = <32>; |
| mhi,event-ring = <1>; |
| mhi,chan-dir = <1>; |
| mhi,data-type = <1>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x14>; |
| mhi,auto-start; |
| }; |
| |
| mhi_chan@17 { |
| reg = <17>; |
| label = "IPCR"; |
| mhi,num-elements = <32>; |
| mhi,event-ring = <1>; |
| mhi,chan-dir = <2>; |
| mhi,data-type = <0>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x14>; |
| mhi,auto-queue; |
| mhi,auto-start; |
| }; |
| }; |
| |
| mhi_events { |
| mhi_event@0 { |
| mhi,num-elements = <32>; |
| mhi,intmod = <1>; |
| mhi,msi = <1>; |
| mhi,priority = <1>; |
| mhi,brstmode = <2>; |
| mhi,data-type = <1>; |
| }; |
| |
| mhi_event@1 { |
| mhi,num-elements = <256>; |
| mhi,intmod = <1>; |
| mhi,msi = <2>; |
| mhi,priority = <1>; |
| mhi,brstmode = <2>; |
| }; |
| }; |
| }; |
| }; |
| }; |
| |
| &emac_hw { |
| /delete-property/ vreg_rgmii-supply; |
| pinctrl-names = "default"; |
| pinctrl-0 = <&vreg_rgmii_off_default>; |
| qcom,phy-reset-delay-msecs = <10>; |
| }; |
| |
| &vreg_rgmii_io_pads { |
| regulator-min-microvolt = <1800000>; |
| regulator-max-microvolt = <1800000>; |
| }; |