# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) # Copyright (c) 2024-2025 Qualcomm Innovation Center, Inc. All rights reserved. %YAML 1.2 --- $id: http://devicetree.org/schemas/net/wireless/qcom,ipq5332-wifi.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: Qualcomm Technologies ath12k wireless devices (AHB) maintainers: - Jeff Johnson description: Qualcomm Technologies IEEE 802.11be AHB devices. properties: compatible: enum: - qcom,ipq5332-wifi reg: maxItems: 1 clocks: items: - description: XO clock used for copy engine clock-names: items: - const: xo interrupts: items: - description: Fatal interrupt - description: Ready interrupt - description: Spawn acknowledge interrupt - description: Stop acknowledge interrupt - description: misc-pulse1 interrupt events - description: misc-latch interrupt events - description: sw exception interrupt events - description: interrupt event for ring CE0 - description: interrupt event for ring CE1 - description: interrupt event for ring CE2 - description: interrupt event for ring CE3 - description: interrupt event for ring CE4 - description: interrupt event for ring CE5 - description: interrupt event for ring CE6 - description: interrupt event for ring CE7 - description: interrupt event for ring CE8 - description: interrupt event for ring CE9 - description: interrupt event for ring CE10 - description: interrupt event for ring CE11 - description: interrupt event for ring host2wbm-desc-feed - description: interrupt event for ring host2reo-re-injection - description: interrupt event for ring host2reo-command - description: interrupt event for ring host2rxdma-monitor-ring1 - description: interrupt event for ring reo2ost-exception - description: interrupt event for ring wbm2host-rx-release - description: interrupt event for ring reo2host-status - description: interrupt event for ring reo2host-destination-ring4 - description: interrupt event for ring reo2host-destination-ring3 - description: interrupt event for ring reo2host-destination-ring2 - description: interrupt event for ring reo2host-destination-ring1 - description: interrupt event for ring rxdma2host-monitor-destination-mac3 - description: interrupt event for ring rxdma2host-monitor-destination-mac2 - description: interrupt event for ring rxdma2host-monitor-destination-mac1 - description: interrupt event for ring host2rxdma-host-buf-ring-mac3 - description: interrupt event for ring host2rxdma-host-buf-ring-mac2 - description: interrupt event for ring host2rxdma-host-buf-ring-mac1 - description: interrupt event for ring host2tcl-input-ring4 - description: interrupt event for ring host2tcl-input-ring3 - description: interrupt event for ring host2tcl-input-ring2 - description: interrupt event for ring host2tcl-input-ring1 - description: interrupt event for ring wbm2host-tx-completions-ring4 - description: interrupt event for ring wbm2host-tx-completions-ring3 - description: interrupt event for ring wbm2host-tx-completions-ring2 - description: interrupt event for ring wbm2host-tx-completions-ring1 - description: interrupt event for ring host2tx-monitor-ring1 - description: interrupt event for ring txmon2host-monitor-destination-mac3 - description: interrupt event for ring txmon2host-monitor-destination-mac2 - description: interrupt event for ring txmon2host-monitor-destination-mac1 - description: interrupt event for umac-reset interrupt-names: items: - const: fatal - const: ready - const: spawn - const: stop-ack - const: misc-pulse1 - const: misc-latch - const: sw-exception - const: ce0 - const: ce1 - const: ce2 - const: ce3 - const: ce4 - const: ce5 - const: ce6 - const: ce7 - const: ce8 - const: ce9 - const: ce10 - const: ce11 - const: host2wbm-desc-feed - const: host2reo-re-injection - const: host2reo-command - const: host2rxdma-monitor-ring1 - const: reo2ost-exception - const: wbm2host-rx-release - const: reo2host-status - const: reo2host-destination-ring4 - const: reo2host-destination-ring3 - const: reo2host-destination-ring2 - const: reo2host-destination-ring1 - const: rxdma2host-monitor-destination-mac3 - const: rxdma2host-monitor-destination-mac2 - const: rxdma2host-monitor-destination-mac1 - const: host2rxdma-host-buf-ring-mac3 - const: host2rxdma-host-buf-ring-mac2 - const: host2rxdma-host-buf-ring-mac1 - const: host2tcl-input-ring4 - const: host2tcl-input-ring3 - const: host2tcl-input-ring2 - const: host2tcl-input-ring1 - const: wbm2host-tx-completions-ring4 - const: wbm2host-tx-completions-ring3 - const: wbm2host-tx-completions-ring2 - const: wbm2host-tx-completions-ring1 - const: host2tx-monitor-ring1 - const: txmon2host-monitor-destination-mac3 - const: txmon2host-monitor-destination-mac2 - const: txmon2host-monitor-destination-mac1 - const: umac-reset memory-region: description: Memory regions used by the ath12k firmware. items: - description: Q6 memory region - description: m3 dump memory region - description: Q6 caldata memory region - description: Multi Link Operation (MLO) Global memory region memory-region-names: items: - const: q6-region - const: m3-dump - const: q6-caldb - const: mlo-global-mem qcom,calibration-variant: $ref: /schemas/types.yaml#/definitions/string description: String to uniquely identify variant of the calibration data for designs with colliding bus and device ids qcom,rproc: $ref: /schemas/types.yaml#/definitions/phandle description: Phandle to the Qualcomm Hexagon DSP(q6 remote processor), which is utilized for offloading WiFi processing tasks, this q6 remote processor operates in conjunction with WiFi. qcom,smem-states: $ref: /schemas/types.yaml#/definitions/phandle-array description: States used by the AP to signal the remote processor items: - description: Shutdown WCSS pd - description: Stop WCSS pd - description: Spawn WCSS pd qcom,smem-state-names: description: Names of the states used by the AP to signal the remote processor items: - const: shutdown - const: stop - const: spawn required: - compatible - reg - clocks - clock-names - interrupts - interrupt-names - memory-region - memory-region-names - qcom,rproc - qcom,smem-states - qcom,smem-state-names additionalProperties: false examples: - | #include #include wifi0: wifi@c000000 { compatible = "qcom,ipq5332-wifi"; reg = <0x0c000000 0x1000000>; clocks = <&gcc GCC_XO_CLK>; clock-names = "xo"; interrupts-extended = <&wcss_smp2p_in 8 IRQ_TYPE_NONE>, <&wcss_smp2p_in 9 IRQ_TYPE_NONE>, <&wcss_smp2p_in 12 IRQ_TYPE_NONE>, <&wcss_smp2p_in 11 IRQ_TYPE_NONE>, <&intc GIC_SPI 559 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 560 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 561 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 422 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 423 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 424 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 425 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 426 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 427 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 428 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 429 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 430 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 431 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 432 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 433 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 491 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 495 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 493 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 544 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 457 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 466 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 497 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 454 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 453 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 452 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 451 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 488 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 488 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 484 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 554 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 554 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 549 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 507 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 500 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 499 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 498 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 450 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 449 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 448 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 447 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 543 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 486 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 486 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 482 IRQ_TYPE_EDGE_RISING>, <&intc GIC_SPI 419 IRQ_TYPE_EDGE_RISING>; interrupt-names = "fatal", "ready", "spawn", "stop-ack", "misc-pulse1", "misc-latch", "sw-exception", "ce0", "ce1", "ce2", "ce3", "ce4", "ce5", "ce6", "ce7", "ce8", "ce9", "ce10", "ce11", "host2wbm-desc-feed", "host2reo-re-injection", "host2reo-command", "host2rxdma-monitor-ring1", "reo2ost-exception", "wbm2host-rx-release", "reo2host-status", "reo2host-destination-ring4", "reo2host-destination-ring3", "reo2host-destination-ring2", "reo2host-destination-ring1", "rxdma2host-monitor-destination-mac3", "rxdma2host-monitor-destination-mac2", "rxdma2host-monitor-destination-mac1", "host2rxdma-host-buf-ring-mac3", "host2rxdma-host-buf-ring-mac2", "host2rxdma-host-buf-ring-mac1", "host2tcl-input-ring4", "host2tcl-input-ring3", "host2tcl-input-ring2", "host2tcl-input-ring1", "wbm2host-tx-completions-ring4", "wbm2host-tx-completions-ring3", "wbm2host-tx-completions-ring2", "wbm2host-tx-completions-ring1", "host2tx-monitor-ring1", "txmon2host-monitor-destination-mac3", "txmon2host-monitor-destination-mac2", "txmon2host-monitor-destination-mac1", "umac-reset"; memory-region = <&q6_region>, <&m3_dump>, <&q6_caldb>, <&mlo_mem>; memory-region-names = "q6-region", "m3-dump", "q6-caldb", "mlo-global-mem"; qcom,calibration-variant = "RDP441_1"; qcom,rproc = <&q6v5_wcss>; qcom,smem-states = <&wcss_smp2p_out 8>, <&wcss_smp2p_out 9>, <&wcss_smp2p_out 10>; qcom,smem-state-names = "shutdown", "stop", "spawn"; };