ARM: dts: msm: Add opensource wlan device tree support for Netrani

Add wcn6750 and wcn3990 parrot dtsi from kernel devicetree to vendor
wlan-devicetree and corresponding dts files as part of new wlan teckpack
for kernel-6.6 upgrade.

Change-Id: I9a48a0731209216800151f21a46727a033cf62cb
This commit is contained in:
Kartikey Arora
2024-05-20 13:01:28 +05:30
parent a2e8bb5636
commit 8ef6a82f1f
9 changed files with 359 additions and 0 deletions

11
Kbuild
View File

@@ -15,6 +15,17 @@ ifeq ($(CONFIG_ARCH_X1E80100),y)
dtbo-y += x1e80100-kiwi-cnss.dtbo dtbo-y += x1e80100-kiwi-cnss.dtbo
endif endif
ifeq ($(CONFIG_ARCH_PARROT),y)
dtbo-y += parrot-idp-wcn3990.dtbo
dtbo-y += parrot-idp-wcn6750.dtbo
dtbo-y += parrot-qrd-wcn3990.dtbo
dtbo-y += parrot-qrd-wcn6750.dtbo
dtbo-y += parrot-atp-wcn3990.dtbo
dtbo-y += parrot-rumi-wcn3990.dtbo
dtbo-y += parrot-idp-wcn6755.dtbo
dtbo-y += parrot-qrd-wcn6755.dtbo
endif
always-y := $(dtb-y) $(dtbo-y) always-y := $(dtb-y) $(dtbo-y)
subdir-y := $(dts-dirs) subdir-y := $(dts-dirs)
clean-files := *.dtb *.dtbo clean-files := *.dtb *.dtbo

17
parrot-atp-wcn3990.dts Normal file
View File

@@ -0,0 +1,17 @@
// SPDX-License-Identifier: BSD-3-Clause
/*
* Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved.
*/
/dts-v1/;
/plugin/;
#include "parrot-wcn3990.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Parrot ATP";
compatible = "qcom,parrot", "qcom,parrot-atp", "qcom,atp";
qcom,msm-id = <537 0x10000>, <583 0x10000>, <613 0x10000>, <631 0x10000>, <633 0x10000>, <634 0x10000>, <638 0x10000>, <663 0x10000>;
qcom,board-id = <33 0>;
};

17
parrot-idp-wcn3990.dts Normal file
View File

@@ -0,0 +1,17 @@
// SPDX-License-Identifier: BSD-3-Clause
/*
* Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved.
*/
/dts-v1/;
/plugin/;
#include "parrot-wcn3990.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Parrot IDP";
compatible = "qcom,parrot", "qcom,parrot-idp", "qcom,idp";
qcom,msm-id = <537 0x10000>, <583 0x10000>, <613 0x10000>, <631 0x10000>, <633 0x10000>, <634 0x10000>, <638 0x10000>, <663 0x10000>;
qcom,board-id = <34 1>, <34 3>, <34 0x601>, <34 0x603>;
};

17
parrot-idp-wcn6750.dts Normal file
View File

@@ -0,0 +1,17 @@
// SPDX-License-Identifier: BSD-3-Clause
/*
* Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved.
*/
/dts-v1/;
/plugin/;
#include "parrot-wcn6750.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Parrot IDP";
compatible = "qcom,parrot", "qcom,parrot-idp", "qcom,idp";
qcom,msm-id = <537 0x10000>, <583 0x10000>, <613 0x10000>, <631 0x10000>, <633 0x10000>, <634 0x10000>, <638 0x10000>, <663 0x10000>;
qcom,board-id = <34 0>, <34 2>, <34 4>, <34 5>, <34 6>, <34 0x600>, <34 0x602>, <34 0x604>;
};

17
parrot-qrd-wcn3990.dts Normal file
View File

@@ -0,0 +1,17 @@
// SPDX-License-Identifier: BSD-3-Clause
/*
* Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved.
*/
/dts-v1/;
/plugin/;
#include "parrot-wcn3990.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Parrot QRD";
compatible = "qcom,parrot", "qcom,parrot-qrd", "qcom,qrd";
qcom,msm-id = <537 0x10000>, <583 0x10000>, <613 0x10000>, <631 0x10000>, <633 0x10000>, <634 0x10000>, <638 0x10000>, <663 0x10000>;
qcom,board-id = <0x1000B 0>, <0x1000B 0x600>;
};

17
parrot-qrd-wcn6750.dts Normal file
View File

@@ -0,0 +1,17 @@
// SPDX-License-Identifier: BSD-3-Clause
/*
* Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved.
*/
/dts-v1/;
/plugin/;
#include "parrot-wcn6750.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Parrot QRD";
compatible = "qcom,parrot", "qcom,parrot-qrd", "qcom,qrd";
qcom,msm-id = <537 0x10000>, <583 0x10000>, <613 0x10000>, <631 0x10000>, <633 0x10000>, <634 0x10000>, <638 0x10000>, <663 0x10000>;
qcom,board-id = <0x1000B 1>, <0x1000B 2>, <0x1000B 0x601>;
};

17
parrot-rumi-wcn3990.dts Normal file
View File

@@ -0,0 +1,17 @@
// SPDX-License-Identifier: BSD-3-Clause
/*
* Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved.
*/
/dts-v1/;
/plugin/;
#include "parrot-wcn3990.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Parrot RUMI";
compatible = "qcom,parrot", "qcom,parrot-rumi", "qcom,rumi";
qcom,msm-id = <537 0x10000>, <583 0x10000>, <613 0x10000>, <631 0x10000>, <633 0x10000>, <634 0x10000>, <638 0x10000>, <663 0x10000>;
qcom,board-id = <0x1000F 0>;
};

83
parrot-wcn3990.dtsi Normal file
View File

@@ -0,0 +1,83 @@
// SPDX-License-Identifier: BSD-3-Clause
/*
* Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved.
*/
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/gpio/gpio.h>
&reserved_memory {
wlan_fw_mem: wlan_fw_region@82a00000 {
no-map;
reg = <0x0 0x82a00000 0x0 0x300000>;
};
};
&soc {
wpss_pas: remoteproc-wpss@8a00000 {
firmware-name = "adrastea/wpss.mdt";
};
icnss: qcom,icnss@22800000 {
compatible = "qcom,icnss";
reg = <0x22800000 0x800000>;
reg-names = "membase";
qcom,rproc-handle = <&wpss_pas>;
iommus = <&apps_smmu 0x4c0 0x1>;
interrupts = <GIC_SPI 389 IRQ_TYPE_LEVEL_HIGH /* CE0 */ >,
<GIC_SPI 413 IRQ_TYPE_LEVEL_HIGH /* CE1 */ >,
<GIC_SPI 416 IRQ_TYPE_LEVEL_HIGH /* CE2 */ >,
<GIC_SPI 417 IRQ_TYPE_LEVEL_HIGH /* CE3 */ >,
<GIC_SPI 434 IRQ_TYPE_LEVEL_HIGH /* CE4 */ >,
<GIC_SPI 435 IRQ_TYPE_LEVEL_HIGH /* CE5 */ >,
<GIC_SPI 438 IRQ_TYPE_LEVEL_HIGH /* CE6 */ >,
<GIC_SPI 439 IRQ_TYPE_LEVEL_HIGH /* CE7 */ >,
<GIC_SPI 440 IRQ_TYPE_LEVEL_HIGH /* CE8 */ >,
<GIC_SPI 451 IRQ_TYPE_LEVEL_HIGH /* CE9 */ >,
<GIC_SPI 453 IRQ_TYPE_LEVEL_HIGH /* CE10 */ >,
<GIC_SPI 454 IRQ_TYPE_LEVEL_HIGH /* CE11 */ >;
qcom,iommu-dma = "fastmap";
qcom,iommu-faults = "stall-disable", "HUPCF", "non-fatal";
qcom,iommu-dma-addr-pool = <0xa0000000 0x10000000>;
qcom,iommu-geometry = <0xa0000000 0x10000000>;
qcom,fw-prefix;
qcom,wlan;
bdf-download-support;
wpss-support-enable;
qcom,wlan-msa-fixed-region = <&wlan_fw_mem>;
vdd-cx-mx-supply = <&L11B>;
vdd-1.8-xo-supply = <&L1E>;
vdd-1.3-rfa-supply = <&L14B>;
vdd-3.3-ch1-supply = <&L11E>;
vdd-3.3-ch0-supply = <&L10E>;
qcom,vdd-cx-mx-config = <0 0>;
qcom,vdd-3.3-ch1-config = <3000000 3312000>;
qcom,vdd-3.3-ch0-config = <3000000 3312000>;
qcom,smem-states = <&smp2p_wlan_1_out 0>;
qcom,smem-state-names = "wlan-smp2p-out";
qcom,smp2p_map_wlan_1_in {
interrupts-extended = <&smp2p_wlan_1_in 0 0>,
<&smp2p_wlan_1_in 1 0>;
interrupt-names = "qcom,smp2p-force-fatal-error",
"qcom,smp2p-early-crash-ind";
};
};
bluetooth: bt_wcn3990 {
compatible = "qcom,wcn3990";
qcom,bt-sw-ctrl-gpio = <&tlmm 61 GPIO_ACTIVE_HIGH>;
qcom,bt-vdd-io-supply = <&L22B>; /* IO */
qcom,bt-vdd-core-supply = <&L14B>; /* RFA */
qcom,bt-vdd-pa-supply = <&L10E>; /* CH0 */
qcom,bt-vdd-xtal-supply = <&L1E>; /* XO */
qcom,bt-vdd-io-config = <1700000 1900000 1 0>;
qcom,bt-vdd-core-config = <1304000 1304000 1 0>;
qcom,bt-vdd-pa-config = <3000000 3312000 1 0>;
qcom,bt-vdd-xtal-config = <1700000 1900000 1 0>;
};
};

163
parrot-wcn6750.dtsi Normal file
View File

@@ -0,0 +1,163 @@
// SPDX-License-Identifier: BSD-3-Clause
/*
* Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved.
*/
#include <dt-bindings/interrupt-controller/arm-gic.h>
&soc {
bluetooth: bt_wcn6750 {
compatible = "qcom,wcn6750-bt";
pinctrl-names = "default";
pinctrl-0 = <&bt_en_sleep>;
qcom,bt-reset-gpio = <&tlmm 35 0>; /* BT_EN */
qcom,bt-sw-ctrl-gpio = <&tlmm 61 0>; /* SW_CTRL */
qcom,wl-reset-gpio = <&tlmm 36 0>; /* WL_EN */
tsens = "quiet-therm";
qcom,bt-vdd-io-supply = <&L22B>; /* IO */
qcom,bt-vdd-aon-supply = <&S7B>;
qcom,bt-vdd-dig-supply = <&S7B>; /* BT_CX_MX */
qcom,bt-vdd-rfacmn-supply = <&S7B>;
qcom,bt-vdd-rfa-0p8-supply = <&S7B>;
qcom,bt-vdd-rfa1-supply = <&S8E>; /*RFA 1p7*/
qcom,bt-vdd-rfa2-supply = <&S8B>; /*RFA 1p2*/
qcom,bt-vdd-ipa-2p2-supply = <&S9B>; /*IPA 2p2*/
//qcom,bt-vdd-asd-supply = <&L11C>;
/* max voltage are set to regulator max voltage supported */
qcom,bt-vdd-io-config = <1800000 2000000 0 1>;
qcom,bt-vdd-aon-config = <824000 1174000 0 1>;
qcom,bt-vdd-dig-config = <824000 1174000 0 1>;
qcom,bt-vdd-rfacmn-config = <824000 1174000 0 1>;
qcom,bt-vdd-rfa-0p8-config = <824000 1174000 0 1>;
qcom,bt-vdd-rfa1-config = <1872000 2040000 0 1>;
qcom,bt-vdd-rfa2-config = <1256000 1654000 0 1>;
qcom,bt-vdd-ipa-2p2-config = <2200000 2208000 0 1>;
//qcom,bt-vdd-asd-config = <2800000 3544000 0 1>;
};
qcom,smp2p-wpss {
smp2p_wlan_2_in: qcom,smp2p-wlan-2-in {
qcom,entry-name = "wlan_soc_wake";
interrupt-controller;
#interrupt-cells = <2>;
};
smp2p_wlan_2_out: qcom,smp2p-wlan-2-out {
qcom,entry-name = "wlan_soc_wake";
#qcom,smem-state-cells = <1>;
};
smp2p_wlan_3_out: qcom,smp2p-wlan-3-out {
qcom,entry-name = "wlan_ep_power_save";
#qcom,smem-state-cells = <1>;
};
};
wpss_pas: remoteproc-wpss@8a00000 {
firmware-name = "qca6750/wpss.mdt";
};
icnss2: qcom,wcn6750 {
compatible = "qcom,wcn6750";
reg = <0x17210040 0x0>,
<0xb0000000 0x10000>;
reg-names = "msi_addr", "smmu_iova_ipa";
qcom,rproc-handle = <&wpss_pas>;
iommus = <&apps_smmu 0x1c00 0x1>;
interrupts = <GIC_SPI 768 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 769 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 770 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 771 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 772 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 773 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 774 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 775 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 776 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 777 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 778 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 779 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 780 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 781 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 782 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 783 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 784 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 785 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 786 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 787 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 788 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 789 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 790 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 791 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 792 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 793 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 794 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 795 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 796 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 797 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 798 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 799 IRQ_TYPE_EDGE_RISING>;
qcom,iommu-dma = "fastmap";
qcom,iommu-faults = "stall-disable", "HUPCF", "non-fatal";
qcom,iommu-dma-addr-pool = <0xa0000000 0x10000000>;
qcom,iommu-geometry = <0xa0000000 0x10010000>;
dma-coherent;
qcom,fw-prefix;
qcom,wlan;
tsens = "quiet-therm";
qcom,wlan-msa-fixed-region = <&wlan_fw_mem>;
vdd-cx-mx-supply = <&S7B>;
qcom,vdd-cx-mx-config = <880000 1120000 0 0 1>;
vdd-1.8-xo-supply = <&S8E>;
qcom,vdd-1.8-xo-config = <1872000 2040000 0 0 0>;
vdd-1.3-rfa-supply = <&S8B>;
qcom,vdd-1.3-rfa-config = <1256000 1500000 0 0 0>;
qcom,smem-states = <&smp2p_wlan_1_out 0>,
<&smp2p_wlan_2_out 0>,
<&smp2p_wlan_3_out 0>;
qcom,smem-state-names = "wlan-smp2p-out",
"wlan-soc-wake-smp2p-out",
"wlan-ep-powersave-smp2p-out";
mboxes = <&qmp_aop 0>;
qcom,vreg_ol_cpr ="s7b";
icnss_cdev_apss: qcom,icnss_cdev1 {
#cooling-cells = <2>;
};
icnss_cdev_wpss: qcom,icnss_cdev2 {
#cooling-cells = <2>;
};
qcom,smp2p_map_wlan_1_in {
interrupts-extended = <&smp2p_wlan_1_in 0 0>,
<&smp2p_wlan_1_in 1 0>;
interrupt-names = "qcom,smp2p-force-fatal-error",
"qcom,smp2p-early-crash-ind";
};
qcom,smp2p_map_wlan_2_in {
interrupts-extended = <&smp2p_wlan_2_in 0 0>;
interrupt-names = "qcom,smp2p-soc-wake-ack";
};
};
};
&qupv3_se2_i2c {
status = "ok";
nq@64 {
compatible = "rtc6226";
reg = <0x64>;
fmint-gpio = <&tlmm 105 0>;
vdd-supply = <&L5E>;
rtc6226,vdd-supply-voltage = <2800000 2800000>;
rtc6226,vdd-load = <15000>;
vio-supply = <&L22B>;
rtc6226,vio-supply-voltage = <1800000 1800000>;
};
};