From 5d9d8cec46189c74c07177d24765b84a3f75adb5 Mon Sep 17 00:00:00 2001 From: Yeshwanth Sriram Guntuka Date: Tue, 6 Feb 2024 15:59:30 +0530 Subject: [PATCH 1/4] ARM: dts: msm: Use shared iommu group for WLAN to support direct link Use shared iommu group for WLAN on sun to support direct link on Ganges. CRs-Fixed: 3714880 Change-Id: Id04d281542260c5ca07d104880dd2ec5a197f7f8 --- sun-peach-cnss-v8.dtsi | 17 ++--------------- sun-peach-cnss.dtsi | 17 ++--------------- 2 files changed, 4 insertions(+), 30 deletions(-) diff --git a/sun-peach-cnss-v8.dtsi b/sun-peach-cnss-v8.dtsi index 8d9a480c..071997af 100644 --- a/sun-peach-cnss-v8.dtsi +++ b/sun-peach-cnss-v8.dtsi @@ -133,28 +133,15 @@ }; &pcie0_rp { - cnss_pci0: cnss_pci0 { reg = <0 0 0 0 0>; - qcom,iommu-group = <&cnss_pci_iommu_group0>; + qcom,iommu-group = <&cnss_audio_iommu_group0>; memory-region = <&cnss_wlan_mem &cnss_pci0_iommu_region_partition>; - #address-cells = <1>; - #size-cells = <1>; - cnss_pci0_iommu_region_partition: cnss_pci0_iommu_region_partition { /* address-cells =3 size-cells=2 from sun-pcie.dtsi */ - iommu-addresses = <&cnss_pci0 0x0 0x0 0x0 0x0 0xa0000000>, + iommu-addresses = <&cnss_pci0 0x0 0x0 0x0 0x0 0x88000000>, <&cnss_pci0 0x0 0x0 0xB0000000 0x0 0x50000000>; }; - - cnss_pci_iommu_group0: cnss_pci_iommu_group0 { - qcom,iommu-msi-size = <0x1000>; - qcom,iommu-geometry = <0xa0000000 0x10010000>; - qcom,iommu-dma = "fastmap"; - qcom,iommu-pagetable = "coherent"; - qcom,iommu-faults = "stall-disable", "HUPCF", - "non-fatal"; - }; }; }; diff --git a/sun-peach-cnss.dtsi b/sun-peach-cnss.dtsi index 5b9a2536..bf259961 100644 --- a/sun-peach-cnss.dtsi +++ b/sun-peach-cnss.dtsi @@ -132,28 +132,15 @@ }; &pcie0_rp { - cnss_pci0: cnss_pci0 { reg = <0 0 0 0 0>; - qcom,iommu-group = <&cnss_pci_iommu_group0>; + qcom,iommu-group = <&cnss_audio_iommu_group0>; memory-region = <&cnss_wlan_mem &cnss_pci0_iommu_region_partition>; - #address-cells = <1>; - #size-cells = <1>; - cnss_pci0_iommu_region_partition: cnss_pci0_iommu_region_partition { /* address-cells =3 size-cells=2 from sun-pcie.dtsi */ - iommu-addresses = <&cnss_pci0 0x0 0x0 0x0 0x0 0xa0000000>, + iommu-addresses = <&cnss_pci0 0x0 0x0 0x0 0x0 0x88000000>, <&cnss_pci0 0x0 0x0 0xB0000000 0x0 0x50000000>; }; - - cnss_pci_iommu_group0: cnss_pci_iommu_group0 { - qcom,iommu-msi-size = <0x1000>; - qcom,iommu-geometry = <0xa0000000 0x10010000>; - qcom,iommu-dma = "fastmap"; - qcom,iommu-pagetable = "coherent"; - qcom,iommu-faults = "stall-disable", "HUPCF", - "non-fatal"; - }; }; }; From ba2f9850b93b11837b24fc713ba3906a0c0f174b Mon Sep 17 00:00:00 2001 From: Naman Padhiar Date: Mon, 12 Feb 2024 20:41:20 +0530 Subject: [PATCH 2/4] ARM: dts: msm: Unvote regulators after bootup Remove APPS vote for all the regulators except S5F(WLAN CX) after FW_READY during device bootup with V8 board. Change-Id: Ic9510af45b7f637e5900d03be041cc66e4351bb6 CRs-Fixed: 3731688 --- sun-kiwi-cnss-v8.dtsi | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/sun-kiwi-cnss-v8.dtsi b/sun-kiwi-cnss-v8.dtsi index 7af34953..c7da8623 100644 --- a/sun-kiwi-cnss-v8.dtsi +++ b/sun-kiwi-cnss-v8.dtsi @@ -92,21 +92,21 @@ qcom,qmp = <&aoss_qmp>; vdd-wlan-io-supply = <&L3F>; - qcom,vdd-wlan-io-config = <1800000 1800000 0 0 0>; + qcom,vdd-wlan-io-config = <1800000 1800000 0 0 1>; vdd-wlan-io12-supply = <&L2F>; - qcom,vdd-wlan-io12-config = <1200000 1200000 0 0 0>; + qcom,vdd-wlan-io12-config = <1200000 1200000 0 0 1>; vdd-wlan-supply = <&S5F>; qcom,vdd-wlan-config = <932000 1000000 0 0 0>; vdd-wlan-aon-supply = <&S4D>; - qcom,vdd-wlan-aon-config = <976000 1036000 0 0 0>; + qcom,vdd-wlan-aon-config = <976000 1036000 0 0 1>; vdd-wlan-dig-supply = <&S1D>; - qcom,vdd-wlan-dig-config = <916000 1100000 0 0 0>; + qcom,vdd-wlan-dig-config = <916000 1100000 0 0 1>; vdd-wlan-rfa1-supply = <&S3G>; - qcom,vdd-wlan-rfa1-config = <1864000 2000000 0 0 0>; + qcom,vdd-wlan-rfa1-config = <1864000 2000000 0 0 1>; vdd-wlan-rfa2-supply = <&S7I>; - qcom,vdd-wlan-rfa2-config = <1316000 1340000 0 0 0>; + qcom,vdd-wlan-rfa2-config = <1316000 1340000 0 0 1>; vdd-wlan-ant-share-supply = <&L6K>; - qcom,vdd-wlan-ant-share-config = <1800000 1800000 0 0 0>; + qcom,vdd-wlan-ant-share-config = <1800000 1800000 0 0 1>; qcom,vreg_pdc_map = "s5f", "bb", From 7356f111f51c2293dcdfb8faae7a77fd921937bf Mon Sep 17 00:00:00 2001 From: Rakesh Pillai Date: Tue, 20 Feb 2024 06:52:27 -0800 Subject: [PATCH 3/4] ARM: dts: msm: Add interconnect voting node for sun kiwi/peach Add the interconnect voting node for sun kiwi/peach, used for bus bandwidth voting. Change-Id: I623ab5c0e3def9c0a357713867564b6a2db55107 CRs-Fixed: 3736681 --- sun-kiwi-cnss-v8.dtsi | 46 ++++++++++++++++++++++++++++++++++++++++++ sun-kiwi-cnss.dtsi | 46 ++++++++++++++++++++++++++++++++++++++++++ sun-peach-cnss-v8.dtsi | 46 ++++++++++++++++++++++++++++++++++++++++++ sun-peach-cnss.dtsi | 46 ++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 184 insertions(+) diff --git a/sun-kiwi-cnss-v8.dtsi b/sun-kiwi-cnss-v8.dtsi index c7da8623..24ac36f4 100644 --- a/sun-kiwi-cnss-v8.dtsi +++ b/sun-kiwi-cnss-v8.dtsi @@ -108,6 +108,52 @@ vdd-wlan-ant-share-supply = <&L6K>; qcom,vdd-wlan-ant-share-config = <1800000 1800000 0 0 1>; + interconnects = + <&pcie_noc MASTER_PCIE_0 &pcie_noc SLAVE_ANOC_PCIE_GEM_NOC>, + <&gem_noc MASTER_ANOC_PCIE_GEM_NOC &mc_virt SLAVE_EBI1>; + interconnect-names = "pcie_to_memnoc", "memnoc_to_ddr"; + + qcom,icc-path-count = <2>; + qcom,bus-bw-cfg-count = <9>; + qcom,bus-bw-cfg = + /** ICC Path 1 **/ + <0 0>, /* no vote */ + /* idle: 0-18 Mbps snoc/anoc: 100 Mhz */ + <2250 1600000>, + /* low: 18-60 Mbps snoc/anoc: 100 Mhz */ + <7500 1600000>, + /* medium: 60-240 Mbps snoc/anoc: 100 Mhz */ + <30000 1600000>, + /* high: 240-1200 Mbps snoc/anoc: 100 Mhz */ + <100000 1600000>, + /* very high: > 1200 Mbps snoc/anoc: 403 Mhz */ + <175000 6448000>, + /* ultra high: DBS mode snoc/anoc: 403 Mhz */ + <312500 6448000>, + /* super high: DBS mode snoc/anoc: 533 Mhz */ + <587500 8528000>, + /* low (latency critical): 18-60 Mbps snoc/anoc: 200 Mhz */ + <7500 3200000>, + + /** ICC Path 2 **/ + <0 0>, + /* idle: 0-18 Mbps ddr: 547.2 MHz */ + <2250 2188800>, + /* low: 18-60 Mbps ddr: 547.2 MHz */ + <7500 2188800>, + /* medium: 60-240 Mbps ddr: 547.2 MHz */ + <30000 2188800>, + /* high: 240-1200 Mbps ddr: 547.2 MHz */ + <100000 2188800>, + /* very high: > 1200 Mbps ddr: 1555 MHz */ + <175000 6220800>, + /* ultra high: DBS mode ddr: 2092 MHz */ + <312500 8368000>, + /* super high: DBS mode ddr: 3.2 GHz */ + <587500 12800000>, + /* low (latency critical): 18-60 Mbps ddr: 547.2 MHz */ + <7500 2188800>; + qcom,vreg_pdc_map = "s5f", "bb", "s4d", "bb", diff --git a/sun-kiwi-cnss.dtsi b/sun-kiwi-cnss.dtsi index 07bf898f..95700676 100644 --- a/sun-kiwi-cnss.dtsi +++ b/sun-kiwi-cnss.dtsi @@ -108,6 +108,52 @@ vdd-wlan-ant-share-supply = <&L6K>; qcom,vdd-wlan-ant-share-config = <1800000 1800000 0 0 1>; + interconnects = + <&pcie_noc MASTER_PCIE_0 &pcie_noc SLAVE_ANOC_PCIE_GEM_NOC>, + <&gem_noc MASTER_ANOC_PCIE_GEM_NOC &mc_virt SLAVE_EBI1>; + interconnect-names = "pcie_to_memnoc", "memnoc_to_ddr"; + + qcom,icc-path-count = <2>; + qcom,bus-bw-cfg-count = <9>; + qcom,bus-bw-cfg = + /** ICC Path 1 **/ + <0 0>, /* no vote */ + /* idle: 0-18 Mbps snoc/anoc: 100 Mhz */ + <2250 1600000>, + /* low: 18-60 Mbps snoc/anoc: 100 Mhz */ + <7500 1600000>, + /* medium: 60-240 Mbps snoc/anoc: 100 Mhz */ + <30000 1600000>, + /* high: 240-1200 Mbps snoc/anoc: 100 Mhz */ + <100000 1600000>, + /* very high: > 1200 Mbps snoc/anoc: 403 Mhz */ + <175000 6448000>, + /* ultra high: DBS mode snoc/anoc: 403 Mhz */ + <312500 6448000>, + /* super high: DBS mode snoc/anoc: 533 Mhz */ + <587500 8528000>, + /* low (latency critical): 18-60 Mbps snoc/anoc: 200 Mhz */ + <7500 3200000>, + + /** ICC Path 2 **/ + <0 0>, + /* idle: 0-18 Mbps ddr: 547.2 MHz */ + <2250 2188800>, + /* low: 18-60 Mbps ddr: 547.2 MHz */ + <7500 2188800>, + /* medium: 60-240 Mbps ddr: 547.2 MHz */ + <30000 2188800>, + /* high: 240-1200 Mbps ddr: 547.2 MHz */ + <100000 2188800>, + /* very high: > 1200 Mbps ddr: 1555 MHz */ + <175000 6220800>, + /* ultra high: DBS mode ddr: 2092 MHz */ + <312500 8368000>, + /* super high: DBS mode ddr: 3.2 GHz */ + <587500 12800000>, + /* low (latency critical): 18-60 Mbps ddr: 547.2 MHz */ + <7500 2188800>; + qcom,vreg_pdc_map = "s4j", "bb", "s4d", "bb", diff --git a/sun-peach-cnss-v8.dtsi b/sun-peach-cnss-v8.dtsi index 8d9a480c..5e88ed5a 100644 --- a/sun-peach-cnss-v8.dtsi +++ b/sun-peach-cnss-v8.dtsi @@ -124,6 +124,52 @@ vdd-wlan-ant-share-supply = <&L6K>; qcom,vdd-wlan-ant-share-config = <1800000 1860000 0 0 1>; + interconnects = + <&pcie_noc MASTER_PCIE_0 &pcie_noc SLAVE_ANOC_PCIE_GEM_NOC>, + <&gem_noc MASTER_ANOC_PCIE_GEM_NOC &mc_virt SLAVE_EBI1>; + interconnect-names = "pcie_to_memnoc", "memnoc_to_ddr"; + + qcom,icc-path-count = <2>; + qcom,bus-bw-cfg-count = <9>; + qcom,bus-bw-cfg = + /** ICC Path 1 **/ + <0 0>, /* no vote */ + /* idle: 0-18 Mbps snoc/anoc: 100 Mhz */ + <2250 1600000>, + /* low: 18-60 Mbps snoc/anoc: 100 Mhz */ + <7500 1600000>, + /* medium: 60-240 Mbps snoc/anoc: 100 Mhz */ + <30000 1600000>, + /* high: 240-1200 Mbps snoc/anoc: 100 Mhz */ + <100000 1600000>, + /* very high: > 1200 Mbps snoc/anoc: 403 Mhz */ + <175000 6448000>, + /* ultra high: DBS mode snoc/anoc: 403 Mhz */ + <312500 6448000>, + /* super high: DBS mode snoc/anoc: 533 Mhz */ + <587500 8528000>, + /* low (latency critical): 18-60 Mbps snoc/anoc: 200 Mhz */ + <7500 3200000>, + + /** ICC Path 2 **/ + <0 0>, + /* idle: 0-18 Mbps ddr: 547.2 MHz */ + <2250 2188800>, + /* low: 18-60 Mbps ddr: 547.2 MHz */ + <7500 2188800>, + /* medium: 60-240 Mbps ddr: 547.2 MHz */ + <30000 2188800>, + /* high: 240-1200 Mbps ddr: 547.2 MHz */ + <100000 2188800>, + /* very high: > 1200 Mbps ddr: 1555 MHz */ + <175000 6220800>, + /* ultra high: DBS mode ddr: 2092 MHz */ + <312500 8368000>, + /* super high: DBS mode ddr: 3.2 GHz */ + <587500 12800000>, + /* low (latency critical): 18-60 Mbps ddr: 547.2 MHz */ + <7500 2188800>; + qcom,pdc_init_table = "{class: wlan_pdc, ss: rf, res: s5f.m, enable: 1}", "{class: wlan_pdc, ss: rf, res: s5f.v, enable: 1}", diff --git a/sun-peach-cnss.dtsi b/sun-peach-cnss.dtsi index 5b9a2536..af2a1b90 100644 --- a/sun-peach-cnss.dtsi +++ b/sun-peach-cnss.dtsi @@ -123,6 +123,52 @@ vdd-wlan-ant-share-supply = <&L6K>; qcom,vdd-wlan-ant-share-config = <1800000 1860000 0 0 1>; + interconnects = + <&pcie_noc MASTER_PCIE_0 &pcie_noc SLAVE_ANOC_PCIE_GEM_NOC>, + <&gem_noc MASTER_ANOC_PCIE_GEM_NOC &mc_virt SLAVE_EBI1>; + interconnect-names = "pcie_to_memnoc", "memnoc_to_ddr"; + + qcom,icc-path-count = <2>; + qcom,bus-bw-cfg-count = <9>; + qcom,bus-bw-cfg = + /** ICC Path 1 **/ + <0 0>, /* no vote */ + /* idle: 0-18 Mbps snoc/anoc: 100 Mhz */ + <2250 1600000>, + /* low: 18-60 Mbps snoc/anoc: 100 Mhz */ + <7500 1600000>, + /* medium: 60-240 Mbps snoc/anoc: 100 Mhz */ + <30000 1600000>, + /* high: 240-1200 Mbps snoc/anoc: 100 Mhz */ + <100000 1600000>, + /* very high: > 1200 Mbps snoc/anoc: 403 Mhz */ + <175000 6448000>, + /* ultra high: DBS mode snoc/anoc: 403 Mhz */ + <312500 6448000>, + /* super high: DBS mode snoc/anoc: 533 Mhz */ + <587500 8528000>, + /* low (latency critical): 18-60 Mbps snoc/anoc: 200 Mhz */ + <7500 3200000>, + + /** ICC Path 2 **/ + <0 0>, + /* idle: 0-18 Mbps ddr: 547.2 MHz */ + <2250 2188800>, + /* low: 18-60 Mbps ddr: 547.2 MHz */ + <7500 2188800>, + /* medium: 60-240 Mbps ddr: 547.2 MHz */ + <30000 2188800>, + /* high: 240-1200 Mbps ddr: 547.2 MHz */ + <100000 2188800>, + /* very high: > 1200 Mbps ddr: 1555 MHz */ + <175000 6220800>, + /* ultra high: DBS mode ddr: 2092 MHz */ + <312500 8368000>, + /* super high: DBS mode ddr: 3.2 GHz */ + <587500 12800000>, + /* low (latency critical): 18-60 Mbps ddr: 547.2 MHz */ + <7500 2188800>; + qcom,pdc_init_table = "{class: wlan_pdc, ss: rf, res: s4j.m, enable: 1}", "{class: wlan_pdc, ss: rf, res: s4j.v, enable: 1}", From 0dac8fe2b00c90f778999b49b9771682e4eb4d37 Mon Sep 17 00:00:00 2001 From: Sandeep Singh Date: Tue, 27 Feb 2024 14:17:53 +0530 Subject: [PATCH 4/4] dt-bindings: Add documentation qcom,wcn7750 node Add documentation qcom,wcn7750 node for wlan platform driver. Change-Id: I9cfbddf5c23847857ca6e0d4cbe6f81b42ad0f71 CRs-Fixed: 3743815 --- bindings/icnss-wlan.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/bindings/icnss-wlan.yaml b/bindings/icnss-wlan.yaml index 1d8903fe..9801cf83 100644 --- a/bindings/icnss-wlan.yaml +++ b/bindings/icnss-wlan.yaml @@ -18,6 +18,7 @@ properties: - qcom,icnss #for ADRASTEA architecture - qcom,wcn6750 #for iWCN architecture - qcom,wcn6450 #for evros architecture + - qcom,wcn7750 #for wcn7750 architecture reg: description: Memory regions defined as starting address and size.