From 0f6ddbc23be4a9436898ba1a3bab3077d6f738e0 Mon Sep 17 00:00:00 2001 From: Kuichu Ni Date: Fri, 23 Apr 2021 15:47:49 +0800 Subject: [PATCH] ARM: dts: qcom: Add wlan node for sa6155 1. Add wlan converged node to support QCA6574/QCA6595/QCA6696 wlan devices. 2. Use the "-config" suffix to replace with "-info" because of the code changes in CNSS2, only reading property settings with "-config" suffix for vregs. Change-Id: Ib743b30f826f6dd5092db42aa0a9857e838880c4 --- qcom/sa6155-cnss.dtsi | 282 +++++++++++++++++++++++++++++++++++++++++ qcom/sa8155-cnss.dtsi | 2 +- qcom/sa8195p-cnss.dtsi | 2 +- 3 files changed, 284 insertions(+), 2 deletions(-) diff --git a/qcom/sa6155-cnss.dtsi b/qcom/sa6155-cnss.dtsi index 76ae6b88e3c6..335a6937ce2b 100644 --- a/qcom/sa6155-cnss.dtsi +++ b/qcom/sa6155-cnss.dtsi @@ -36,8 +36,290 @@ qcom,bt-vdd-rfa2-config = <2040000 2040000 0 0>; qcom,bt-vdd-rfa3-config = <1904000 1904000 450000 0>; }; + + vreg_wlan: vreg_wlan { + compatible = "qcom,stub-regulator"; + regulator-name = "vreg_wlan"; + }; + + cnss_pcie: 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; + + #address-cells=<1>; + #size-cells=<1>; + ranges = <0xb0000000 0xb0000000 0x10000>; + + vdd-wlan-ctrl1-supply = <&vreg_conn_pa>; + vdd-wlan-ctrl2-supply = <&vreg_conn_1p8>; + vdd-wlan-supply = <&vreg_wlan>; + vdd-wlan-rfa1-supply = <&pm6155_1_s6>; + vdd-wlan-rfa2-supply = <&pm6155_1_s5>; + vdd-wlan-rfa3-supply = <&pm6155_1_l15>; + + wlan_vregs = "vdd-wlan-ctrl1", "vdd-wlan-ctrl2"; + qcom,vdd-wlan-ctrl1-config = <0 0 0 0 0>; + qcom,vdd-wlan-ctrl2-config = <0 0 0 0 0>; + wlan-en-gpio = <&tlmm 98 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 = <0xb0000000 0x10000>; + reg-names = "smmu_iova_ipa"; + + supported-ids = <0x003e>; + wlan_vregs = "vdd-wlan"; + qcom,vdd-wlan-config = <0 0 0 10 1>; + + qcom,wlan-ramdump-dynamic = <0x200000>; + }; + + chip_cfg@1 { + reg = <0xb0000000 0x10000>; + reg-names = "smmu_iova_ipa"; + + supported-ids = <0x1101>; + wlan_vregs = "vdd-wlan-rfa1", "vdd-wlan-rfa2", + "vdd-wlan-rfa3"; + qcom,vdd-wlan-rfa1-config = <1350000 1350000 0 0 1>; + qcom,vdd-wlan-rfa2-config = <2040000 2040000 0 0 1>; + qcom,vdd-wlan-rfa3-config = <1904000 1904000 0 0 1>; + + qcom,wlan-ramdump-dynamic = <0x400000>; + mhi,max-channels = <30>; + mhi,timeout = <10000>; + mhi,buffer-len = <0x8000>; + mhi,m2-no-db-access; + + 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@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 = <0xb0000000 0x10000>; + reg-names = "smmu_iova_ipa"; + + supported-ids = <0x1102>; + wlan_vregs = "vdd-wlan-rfa1", "vdd-wlan-rfa2", + "vdd-wlan-rfa3"; + qcom,vdd-wlan-rfa1-config = <1350000 1350000 0 0 1>; + qcom,vdd-wlan-rfa2-config = <2040000 2040000 0 0 1>; + qcom,vdd-wlan-rfa3-config = <1904000 1904000 0 0 1>; + + qcom,wlan-ramdump-dynamic = <0x400000>; + mhi,max-channels = <30>; + mhi,timeout = <10000>; + mhi,ee = <0x3>, <0x4>; + mhi,ee-names = "SBL", "RDDM"; + mhi,bhie-offset = <0x0324>; + mhi,m2-no-db-access; + + 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@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>; + }; + }; + }; + }; }; &qupv3_se7_4uart { status = "ok"; }; + +&pcie_rc0 { + cnss_pci: cnss_pci { + reg = <0 0 0 0 0>; + qcom,iommu-group = <&cnss_pci_iommu_group>; + + #address-cells = <1>; + #size-cells = <1>; + + cnss_pci_iommu_group: cnss_pci_iommu_group { + qcom,iommu-dma-addr-pool = <0xa0000000 0x10000000>; + qcom,iommu-dma = "fastmap"; + qcom,iommu-pagetable = "coherent"; + qcom,iommu-faults = "stall-disable", "no-CFRE", + "non-fatal"; + }; + }; +}; diff --git a/qcom/sa8155-cnss.dtsi b/qcom/sa8155-cnss.dtsi index ee72cce892d3..a21d999a9444 100644 --- a/qcom/sa8155-cnss.dtsi +++ b/qcom/sa8155-cnss.dtsi @@ -84,7 +84,7 @@ supported-ids = <0x003e>; wlan_vregs = "vdd-wlan"; - qcom,vdd-wlan-info = <0 0 0 10 1>; + qcom,vdd-wlan-config = <0 0 0 10 1>; qcom,wlan-ramdump-dynamic = <0x200000>; }; diff --git a/qcom/sa8195p-cnss.dtsi b/qcom/sa8195p-cnss.dtsi index 251800fa1cf6..f6d3076f7c5b 100644 --- a/qcom/sa8195p-cnss.dtsi +++ b/qcom/sa8195p-cnss.dtsi @@ -82,7 +82,7 @@ supported-ids = <0x003e>; wlan_vregs = "vdd-wlan"; - qcom,vdd-wlan-info = <0 0 0 10 1>; + qcom,vdd-wlan-config = <0 0 0 10 1>; qcom,wlan-ramdump-dynamic = <0x200000>; };