From 6c3e1ef1f2d2d0121ac5e276b430e6b877c8e652 Mon Sep 17 00:00:00 2001 From: Kartikey Arora Date: Fri, 20 Sep 2024 17:20:15 +0530 Subject: [PATCH] ARM: dts: msm: Add opensource wlan device tree support for kera-qca6750 This change adds wlan related dt files for kera-qca6750 which has icnss and wpss dtsi node enabled. Change-Id: I2b10dfd91819ad8501479190823fe20b07382210 CRs-Fixed: 3960302 --- Kbuild | 7 +++ kera-atp-qca6750.dts | 16 ++++++ kera-cdp-qca6750.dts | 16 ++++++ kera-mtp-qca6750.dts | 16 ++++++ kera-qca6750.dtsi | 123 +++++++++++++++++++++++++++++++++++++++++++ kera-rcm-qca6750.dts | 16 ++++++ 6 files changed, 194 insertions(+) create mode 100644 kera-atp-qca6750.dts create mode 100644 kera-cdp-qca6750.dts create mode 100644 kera-mtp-qca6750.dts create mode 100644 kera-qca6750.dtsi create mode 100644 kera-rcm-qca6750.dts diff --git a/Kbuild b/Kbuild index 70c7bb92..3bf79516 100644 --- a/Kbuild +++ b/Kbuild @@ -48,6 +48,13 @@ dtbo-y += tuna-rcm-kiwi.dtbo dtbo-y += tuna-atp-kiwi.dtbo endif +ifeq ($(CONFIG_ARCH_KERA),y) +dtbo-y += kera-atp-qca6750.dtbo +dtbo-y += kera-cdp-qca6750.dtbo +dtbo-y += kera-mtp-qca6750.dtbo +dtbo-y += kera-rcm-qca6750.dtbo +endif + always-y := $(dtb-y) $(dtbo-y) subdir-y := $(dts-dirs) clean-files := *.dtb *.dtbo diff --git a/kera-atp-qca6750.dts b/kera-atp-qca6750.dts new file mode 100644 index 00000000..461f8c6b --- /dev/null +++ b/kera-atp-qca6750.dts @@ -0,0 +1,16 @@ +// SPDX-License-Identifier: BSD-3-Clause +/* + * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved. + */ + +/dts-v1/; +/plugin/; + +#include "kera-qca6750.dtsi" + +/ { + model = "Qualcomm Technologies, Inc. Kera ATP + MSL WLAN"; + compatible = "qcom,kera-atp", "qcom,kera", "qcom,atp"; + qcom,msm-id = <686 0x10000>, <659 0x10000>; + qcom,board-id = <0x000021 0>; +}; diff --git a/kera-cdp-qca6750.dts b/kera-cdp-qca6750.dts new file mode 100644 index 00000000..bae28946 --- /dev/null +++ b/kera-cdp-qca6750.dts @@ -0,0 +1,16 @@ +// SPDX-License-Identifier: BSD-3-Clause +/* + * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved. + */ + +/dts-v1/; +/plugin/; + +#include "kera-qca6750.dtsi" + +/ { + model = "Qualcomm Technologies, Inc. Kera CDP"; + compatible = "qcom,kera-cdp", "qcom,kera", "qcom,cdp"; + qcom,msm-id = <686 0x10000>, <659 0x10000>; + qcom,board-id = <0x010001 0>, <0x020001 0>, <0x030001 0>, <0x040001 0>; +}; diff --git a/kera-mtp-qca6750.dts b/kera-mtp-qca6750.dts new file mode 100644 index 00000000..2c22a3dd --- /dev/null +++ b/kera-mtp-qca6750.dts @@ -0,0 +1,16 @@ +// SPDX-License-Identifier: BSD-3-Clause +/* + * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved. + */ + +/dts-v1/; +/plugin/; + +#include "kera-qca6750.dtsi" + +/ { + model = "Qualcomm Technologies, Inc. Kera MTP"; + compatible = "qcom,kera-mtp", "qcom,kera", "qcom,mtp"; + qcom,msm-id = <686 0x10000>, <659 0x10000>; + qcom,board-id = <0x010008 0>, <0x020008 0>, <0x030008 0>; +}; diff --git a/kera-qca6750.dtsi b/kera-qca6750.dtsi new file mode 100644 index 00000000..9ae4e74b --- /dev/null +++ b/kera-qca6750.dtsi @@ -0,0 +1,123 @@ +// SPDX-License-Identifier: BSD-3-Clause + +/* + * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved. + */ + +#include + +&soc { + qcom,smp2p-wpss { + smp2p_wlan_1_in: qcom,smp2p-wlan-1-in { + qcom,entry-name = "wlan"; + interrupt-controller; + #interrupt-cells = <2>; + }; + + smp2p_wlan_1_out: qcom,smp2p-wlan-1-out { + qcom,entry-name = "wlan"; + #qcom,smem-state-cells = <1>; + }; + + 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>; + }; + }; + + icnss2: qcom,wcn6750 { + compatible = "qcom,wcn6750"; + reg = <0x17110040 0x0>, + <0xc0000000 0x10000>; + reg-names = "msi_addr", "smmu_iova_ipa"; + qcom,rproc-handle = <&wpss_pas>; + iommus = <&apps_smmu 0x1480 0x1>; + wlan-en-gpio = <35>; + host-sol-gpio = <33>; + dev-sol-gpio = <32>; + wlan-sw-ctrl-gpio = <81>; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + + qcom,iommu-dma = "fastmap"; + qcom,iommu-faults = "stall-disable", "HUPCF", "non-fatal"; + qcom,iommu-dma-addr-pool = <0xb0000000 0x10000000>; + qcom,iommu-geometry = <0xb0000000 0x10010000>; + dma-coherent; + qcom,fw-prefix; + qcom,wlan; + tsens = "sys-therm-3"; + qcom,wlan-msa-fixed-region = <&wlan_msa_mem>; + + 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"; + + qcom,qmp = <&aoss_qmp>; + qcom,vreg_ol_cpr ="s3b"; + + 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"; + }; + }; +}; diff --git a/kera-rcm-qca6750.dts b/kera-rcm-qca6750.dts new file mode 100644 index 00000000..c2f8023d --- /dev/null +++ b/kera-rcm-qca6750.dts @@ -0,0 +1,16 @@ +// SPDX-License-Identifier: BSD-3-Clause +/* + * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved. + */ + +/dts-v1/; +/plugin/; + +#include "kera-qca6750.dtsi" + +/ { + model = "Qualcomm Technologies, Inc. Kera RCM"; + compatible = "qcom,kera-rcm", "qcom,kera", "qcom,rcm"; + qcom,msm-id = <686 0x10000>, <659 0x10000>; + qcom,board-id = <0x010015 0>, <0x020015 0>; +};