Having S4J enabled in the TCS by default will cause TCS address to be populated with the wrong address on V8 and will cause TCS ACK hang. Thus, AOP will keep S4J and S5F regulators disabled by default and host will vote to enable S4J and S5F regulators based on V6 or V8 power grid, respectively. Change-Id: I852ca4aa80ef0e6bd5c802e6032f876fb53c9670 CRs-Fixed: 3709995
170 lines
3.9 KiB
Plaintext
170 lines
3.9 KiB
Plaintext
// SPDX-License-Identifier: BSD-3-Clause
|
|
|
|
/*
|
|
* Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved.
|
|
*/
|
|
|
|
#include <dt-bindings/interconnect/qcom,sun.h>
|
|
|
|
&tlmm {
|
|
cnss_pins {
|
|
cnss_wlan_en_active: cnss_wlan_en_active {
|
|
mux {
|
|
pins = "gpio16";
|
|
function = "gpio";
|
|
};
|
|
|
|
config {
|
|
pins = "gpio16";
|
|
drive-strength = <16>;
|
|
output-high;
|
|
bias-pull-up;
|
|
};
|
|
};
|
|
|
|
cnss_wlan_en_sleep: cnss_wlan_en_sleep {
|
|
mux {
|
|
pins = "gpio16";
|
|
function = "gpio";
|
|
};
|
|
|
|
config {
|
|
pins = "gpio16";
|
|
drive-strength = <2>;
|
|
output-low;
|
|
bias-pull-down;
|
|
};
|
|
};
|
|
|
|
cnss_wlan_sw_ctrl: cnss_wlan_sw_ctrl {
|
|
mux {
|
|
pins = "gpio18";
|
|
function = "wcn_sw_ctrl";
|
|
};
|
|
};
|
|
|
|
cnss_wlan_sw_ctrl_wl_cx: cnss_wlan_sw_ctrl_wl_cx {
|
|
mux {
|
|
pins = "gpio19";
|
|
function = "wcn_sw";
|
|
};
|
|
};
|
|
|
|
cnss_host_sol_default: cnss_host_sol_default {
|
|
mux {
|
|
pins = "gpio202";
|
|
function = "gpio";
|
|
};
|
|
|
|
config {
|
|
pins = "gpio202";
|
|
drive-strength = <4>;
|
|
bias-pull-down;
|
|
};
|
|
};
|
|
|
|
cnss_dev_sol_default: cnss_dev_sol_default {
|
|
mux {
|
|
pins = "gpio203";
|
|
function = "gpio";
|
|
};
|
|
|
|
config {
|
|
pins = "gpio203";
|
|
drive-strength = <4>;
|
|
bias-pull-down;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
&reserved_memory {
|
|
cnss_wlan_mem: cnss_wlan_region {
|
|
compatible = "shared-dma-pool";
|
|
alloc-ranges = <0x0 0x00000000 0x0 0xffffffff>;
|
|
reusable;
|
|
alignment = <0x0 0x400000>;
|
|
size = <0x0 0x2000000>;
|
|
};
|
|
};
|
|
|
|
&soc {
|
|
wlan_peach: qcom,cnss-peach@b0000000 {
|
|
compatible = "qcom,cnss-peach";
|
|
reg = <0xb0000000 0x10000>;
|
|
reg-names = "smmu_iova_ipa";
|
|
qcom,wlan-sw-ctrl-gpio = <&tlmm 19 0>;
|
|
|
|
supported-ids = <0x110E>;
|
|
wlan-en-gpio = <&tlmm 16 0>;
|
|
qcom,bt-en-gpio = <&pm8550vs_f_gpios 3 0>;
|
|
qcom,sw-ctrl-gpio = <&tlmm 18 0>;
|
|
wlan-host-sol-gpio = <&tlmm 202 0>;
|
|
wlan-dev-sol-gpio = <&tlmm 203 0>;
|
|
/* List of GPIOs to be setup for interrupt wakeup capable */
|
|
mpm_wake_set_gpios = <18 19>;
|
|
pinctrl-names = "wlan_en_active", "wlan_en_sleep", "sw_ctrl",
|
|
"sw_ctrl_wl_cx", "sol_default";
|
|
pinctrl-0 = <&cnss_wlan_en_active>;
|
|
pinctrl-1 = <&cnss_wlan_en_sleep>;
|
|
pinctrl-2 = <&cnss_wlan_sw_ctrl>;
|
|
pinctrl-3 = <&cnss_wlan_sw_ctrl_wl_cx>;
|
|
pinctrl-4 = <&cnss_host_sol_default &cnss_dev_sol_default>;
|
|
qcom,wlan;
|
|
qcom,wlan-rc-num = <0>;
|
|
qcom,wlan-ramdump-dynamic = <0x780000>;
|
|
cnss-enable-self-recovery;
|
|
qcom,wlan-cbc-enabled;
|
|
use-pm-domain;
|
|
qcom,same-dt-multi-dev;
|
|
/* For AOP communication, use direct QMP instead of mailbox */
|
|
qcom,qmp = <&aoss_qmp>;
|
|
msix-match-addr = <0x3000>;
|
|
|
|
vdd-wlan-io-supply = <&L3F>;
|
|
qcom,vdd-wlan-io-config = <1800000 1800000 0 0 1>;
|
|
vdd-wlan-io12-supply = <&L2F>;
|
|
qcom,vdd-wlan-io12-config = <1200000 1200000 0 0 1>;
|
|
vdd-wlan-aon-supply = <&S4D>;
|
|
qcom,vdd-wlan-aon-config = <876000 1036000 0 0 1>;
|
|
vdd-wlan-dig-supply = <&S4J>;
|
|
qcom,vdd-wlan-dig-config = <876000 1000000 0 0 1>;
|
|
vdd-wlan-rfa1-supply = <&S3G>;
|
|
qcom,vdd-wlan-rfa1-config = <1860000 2000000 0 0 1>;
|
|
vdd-wlan-rfa2-supply = <&S7I>;
|
|
qcom,vdd-wlan-rfa2-config = <1312000 1340000 0 0 1>;
|
|
vdd-wlan-ant-share-supply = <&L6K>;
|
|
qcom,vdd-wlan-ant-share-config = <1800000 1860000 0 0 1>;
|
|
|
|
qcom,pdc_init_table =
|
|
"{class: wlan_pdc, ss: rf, res: s4j.m, enable: 1}",
|
|
"{class: wlan_pdc, ss: rf, res: s4j.v, enable: 1}",
|
|
"{class: wlan_pdc, ss: rf, res: s4j.v, upval: 876}",
|
|
"{class: wlan_pdc, ss: rf, res: s4j.v, dwnval: 876}";
|
|
};
|
|
};
|
|
|
|
&pcie0_rp {
|
|
#address-cells = <5>;
|
|
#size-cells = <0>;
|
|
|
|
cnss_pci0: cnss_pci0 {
|
|
reg = <0 0 0 0 0>;
|
|
qcom,iommu-group = <&cnss_pci_iommu_group0>;
|
|
memory-region = <&cnss_wlan_mem>;
|
|
|
|
#address-cells = <1>;
|
|
#size-cells = <1>;
|
|
|
|
cnss_pci_iommu_group0: cnss_pci_iommu_group0 {
|
|
qcom,iommu-msi-size = <0x1000>;
|
|
qcom,iommu-dma-addr-pool = <0xa0000000 0x10000000>;
|
|
qcom,iommu-geometry = <0xa0000000 0x10010000>;
|
|
qcom,iommu-dma = "fastmap";
|
|
qcom,iommu-pagetable = "coherent";
|
|
qcom,iommu-faults = "stall-disable", "HUPCF",
|
|
"non-fatal";
|
|
};
|
|
};
|
|
};
|