From 78636f89ac5eb7c8f5cf0366405efaa4c5c962a2 Mon Sep 17 00:00:00 2001 From: Manikandan Mohan Date: Sun, 27 Mar 2022 14:39:00 -0700 Subject: [PATCH] ARM: dts: msm: Add PDC configuration for WLAN device Add configuration data for WLAN Device PMU to Platform VReg mapping, PDC name to VReg mapping and PDC initialization table for WLAN device. This is needed to select WLAN device config in multiple device attach support in platform build. Change-Id: Ic210494468110ec0aec6522eb1fd3980e0abd86c --- bindings/cnss/cnss-wlan.txt | 41 +++++++++++++++++++++++++++++++++++++ qcom/waipio-kiwi.dtsi | 32 +++++++++++++++++++++++++++++ 2 files changed, 73 insertions(+) diff --git a/bindings/cnss/cnss-wlan.txt b/bindings/cnss/cnss-wlan.txt index 7d81c867..94a829e0 100644 --- a/bindings/cnss/cnss-wlan.txt +++ b/bindings/cnss/cnss-wlan.txt @@ -106,6 +106,30 @@ Optional properties: - qcom,sw-ctrl-gpio: Switch control GPIO for device power control. - wlan-dev-sol-gpio: Device->host Sign-Of-Life GPIO number - wlan-host-sol-gpio: Host->device Sign-Of-Life GPIO number + - qcom,pmu_vreg_map: WLAN device PMU pin to Platform VReg mapping. + Syntax: + Comma separated mapping list for all WLAN Dev PMU pin as follows + "", "", ... + Reference: + This info can be identified from Power grid doc. + - qcom,vreg_pdc_map: Platform VReg to PDC name mapping. + Syntax: + Comma separated mapping list for all Platform VReg connected to + WLAN Device as follows + "", "", ... + Reference: + This info can be identified from SOC Platform TCS context worksheet. + - qcom,pdc_init_table: Default TCS contents for a WLAN device. This is needed + to support CDT / runtime WLAN device detection and PDC initialization. + Syntax: + Comma separated Json format AOP messages as follows: + 1. To configure Platform VReg: + "{class: wlan_pdc, ss: , res: ., + : }", ... + 2. To configure PDC: + "{class: wlan_pdc, ss: , res: pdc, enable: }" + Reference: + This info can be identified from SOC Platform TCS context worksheet. Examples: @@ -159,4 +183,21 @@ Examples: qcom,vdd-wlan-rfa2-config = <1350000 1350000 0 0 1>; wlan-ant-switch-supply = <&L7E>; qcom,wlan-ant-switch-config = <2800000 2800000 0 0 1>; + + qcom,pmu_vreg_map = + "VDD095_MX_PMU", "s2e", + "VDD095_PMU", "s3e", + "VDD_PMU_AON_I", "s11b", + "VDD095_PMU_BT", "s11b", + "VDD19_PMU_RFA_I", "s1c"; + + qcom,vreg_pdc_map = + "s11b", "rf", "s10b", "rf", "s12b", "rf", "s1c", "rf", + "l7e", "rf", "s3e", "bb", "s2e", "bb"; + + qcom,pdc_init_table = + "{class: wlan_pdc, ss: rf, res: s11b.v, upval: 916}", + "{class: wlan_pdc, ss: rf, res: s11b.v, dwnval: 612}", + "{class: wlan_pdc, ss: rf, res: s12b.v, upval: 1316}", + "{class: wlan_pdc, ss: rf, res: s12b.v, dwnval: 944}"; }; diff --git a/qcom/waipio-kiwi.dtsi b/qcom/waipio-kiwi.dtsi index af4e3d62..fa1eaa19 100644 --- a/qcom/waipio-kiwi.dtsi +++ b/qcom/waipio-kiwi.dtsi @@ -70,6 +70,38 @@ vdd-wlan-rfa2-supply = <&S12B>; qcom,vdd-wlan-rfa2-config = <1350000 1350000 0 0 1>; + qcom,pmu_vreg_map = + "VDD095_MX_PMU", "s2e", + "VDD095_PMU", "s3e", + "VDD_PMU_AON_I", "s11b", + "VDD095_PMU_BT", "s11b", + "VDD09_PMU_RFA_I", "s11b", + "VDD13_PMU_PCIE_I", "s12b", + "VDD13_PMU_RFA_I", "s12b", + "VDD19_PMU_PCIE_I", "s1c", + "VDD19_PMU_RFA_I", "s1c"; + + qcom,vreg_pdc_map = + "s11b", "rf", "s10b", "rf", "s12b", "rf", "s1c", "rf", + "l7e", "rf", "s3e", "bb", "s2e", "bb"; + + qcom,pdc_init_table = + " {class: wlan_pdc, ss: rf, res: s11b.v, upval: 916}", + " {class: wlan_pdc, ss: rf, res: s11b.v, dwnval: 612}", + " {class: wlan_pdc, ss: rf, res: s12b.v, upval: 1316}", + " {class: wlan_pdc, ss: rf, res: s12b.v, dwnval: 944}", + " {class: wlan_pdc, ss: rf, res: s1c.v, upval: 1864}", + " {class: wlan_pdc, ss: rf, res: s1c.v, dwnval: 1820}", + " {class: wlan_pdc, ss: rf, res: s2e.m, enable: 0}", + " {class: wlan_pdc, ss: rf, res: s2e.v, enable: 0}", + " {class: wlan_pdc, ss: rf, res: s3e.m, enable: 0}", + " {class: wlan_pdc, ss: rf, res: s3e.v, enable: 0}", + " {class: wlan_pdc, ss: bb, res: s2e.v, upval: 976}", + " {class: wlan_pdc, ss: bb, res: s2e.v, dwnval: 512}", + " {class: wlan_pdc, ss: bb, res: s3e.v, upval: 940}", + " {class: wlan_pdc, ss: bb, res: s3e.v, dwnval: 420}", + " {class: wlan_pdc, ss: bb, res: pdc, enable: 1}"; + interconnects = <&pcie_noc MASTER_PCIE_1 &pcie_noc SLAVE_ANOC_PCIE_GEM_NOC>, <&gem_noc MASTER_ANOC_PCIE_GEM_NOC &mc_virt SLAVE_EBI1>;