1d5b0e70fSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2d5b0e70fSEmmanuel Vadot%YAML 1.2 3d5b0e70fSEmmanuel Vadot--- 4d5b0e70fSEmmanuel Vadot$id: "http://devicetree.org/schemas/arm/mediatek/mediatek,mt7622-wed.yaml#" 5d5b0e70fSEmmanuel Vadot$schema: "http://devicetree.org/meta-schemas/core.yaml#" 6d5b0e70fSEmmanuel Vadot 7d5b0e70fSEmmanuel Vadottitle: MediaTek Wireless Ethernet Dispatch Controller for MT7622 8d5b0e70fSEmmanuel Vadot 9d5b0e70fSEmmanuel Vadotmaintainers: 10d5b0e70fSEmmanuel Vadot - Lorenzo Bianconi <lorenzo@kernel.org> 11d5b0e70fSEmmanuel Vadot - Felix Fietkau <nbd@nbd.name> 12d5b0e70fSEmmanuel Vadot 13d5b0e70fSEmmanuel Vadotdescription: 14d5b0e70fSEmmanuel Vadot The mediatek wireless ethernet dispatch controller can be configured to 15d5b0e70fSEmmanuel Vadot intercept and handle access to the WLAN DMA queues and PCIe interrupts 16d5b0e70fSEmmanuel Vadot and implement hardware flow offloading from ethernet to WLAN. 17d5b0e70fSEmmanuel Vadot 18d5b0e70fSEmmanuel Vadotproperties: 19d5b0e70fSEmmanuel Vadot compatible: 20d5b0e70fSEmmanuel Vadot items: 21d5b0e70fSEmmanuel Vadot - enum: 22d5b0e70fSEmmanuel Vadot - mediatek,mt7622-wed 237ef62cebSEmmanuel Vadot - mediatek,mt7986-wed 24d5b0e70fSEmmanuel Vadot - const: syscon 25d5b0e70fSEmmanuel Vadot 26d5b0e70fSEmmanuel Vadot reg: 27d5b0e70fSEmmanuel Vadot maxItems: 1 28d5b0e70fSEmmanuel Vadot 29d5b0e70fSEmmanuel Vadot interrupts: 30d5b0e70fSEmmanuel Vadot maxItems: 1 31d5b0e70fSEmmanuel Vadot 32*8bab661aSEmmanuel Vadot memory-region: 33*8bab661aSEmmanuel Vadot items: 34*8bab661aSEmmanuel Vadot - description: firmware EMI region 35*8bab661aSEmmanuel Vadot - description: firmware ILM region 36*8bab661aSEmmanuel Vadot - description: firmware DLM region 37*8bab661aSEmmanuel Vadot - description: firmware CPU DATA region 38*8bab661aSEmmanuel Vadot - description: firmware BOOT region 39*8bab661aSEmmanuel Vadot 40*8bab661aSEmmanuel Vadot memory-region-names: 41*8bab661aSEmmanuel Vadot items: 42*8bab661aSEmmanuel Vadot - const: wo-emi 43*8bab661aSEmmanuel Vadot - const: wo-ilm 44*8bab661aSEmmanuel Vadot - const: wo-dlm 45*8bab661aSEmmanuel Vadot - const: wo-data 46*8bab661aSEmmanuel Vadot - const: wo-boot 47*8bab661aSEmmanuel Vadot 48*8bab661aSEmmanuel Vadot mediatek,wo-ccif: 49*8bab661aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/phandle 50*8bab661aSEmmanuel Vadot description: mediatek wed-wo controller interface. 51*8bab661aSEmmanuel Vadot 52*8bab661aSEmmanuel VadotallOf: 53*8bab661aSEmmanuel Vadot - if: 54*8bab661aSEmmanuel Vadot properties: 55*8bab661aSEmmanuel Vadot compatible: 56*8bab661aSEmmanuel Vadot contains: 57*8bab661aSEmmanuel Vadot const: mediatek,mt7622-wed 58*8bab661aSEmmanuel Vadot then: 59*8bab661aSEmmanuel Vadot properties: 60*8bab661aSEmmanuel Vadot memory-region-names: false 61*8bab661aSEmmanuel Vadot memory-region: false 62*8bab661aSEmmanuel Vadot mediatek,wo-ccif: false 63*8bab661aSEmmanuel Vadot 64d5b0e70fSEmmanuel Vadotrequired: 65d5b0e70fSEmmanuel Vadot - compatible 66d5b0e70fSEmmanuel Vadot - reg 67d5b0e70fSEmmanuel Vadot - interrupts 68d5b0e70fSEmmanuel Vadot 69d5b0e70fSEmmanuel VadotadditionalProperties: false 70d5b0e70fSEmmanuel Vadot 71d5b0e70fSEmmanuel Vadotexamples: 72d5b0e70fSEmmanuel Vadot - | 73d5b0e70fSEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 74d5b0e70fSEmmanuel Vadot #include <dt-bindings/interrupt-controller/irq.h> 75d5b0e70fSEmmanuel Vadot soc { 76d5b0e70fSEmmanuel Vadot #address-cells = <2>; 77d5b0e70fSEmmanuel Vadot #size-cells = <2>; 78d5b0e70fSEmmanuel Vadot wed0: wed@1020a000 { 79d5b0e70fSEmmanuel Vadot compatible = "mediatek,mt7622-wed","syscon"; 80d5b0e70fSEmmanuel Vadot reg = <0 0x1020a000 0 0x1000>; 81d5b0e70fSEmmanuel Vadot interrupts = <GIC_SPI 214 IRQ_TYPE_LEVEL_LOW>; 82d5b0e70fSEmmanuel Vadot }; 83d5b0e70fSEmmanuel Vadot }; 84*8bab661aSEmmanuel Vadot 85*8bab661aSEmmanuel Vadot - | 86*8bab661aSEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 87*8bab661aSEmmanuel Vadot #include <dt-bindings/interrupt-controller/irq.h> 88*8bab661aSEmmanuel Vadot soc { 89*8bab661aSEmmanuel Vadot #address-cells = <2>; 90*8bab661aSEmmanuel Vadot #size-cells = <2>; 91*8bab661aSEmmanuel Vadot 92*8bab661aSEmmanuel Vadot wed@15010000 { 93*8bab661aSEmmanuel Vadot compatible = "mediatek,mt7986-wed", "syscon"; 94*8bab661aSEmmanuel Vadot reg = <0 0x15010000 0 0x1000>; 95*8bab661aSEmmanuel Vadot interrupts = <GIC_SPI 205 IRQ_TYPE_LEVEL_HIGH>; 96*8bab661aSEmmanuel Vadot 97*8bab661aSEmmanuel Vadot memory-region = <&wo_emi>, <&wo_ilm>, <&wo_dlm>, 98*8bab661aSEmmanuel Vadot <&wo_data>, <&wo_boot>; 99*8bab661aSEmmanuel Vadot memory-region-names = "wo-emi", "wo-ilm", "wo-dlm", 100*8bab661aSEmmanuel Vadot "wo-data", "wo-boot"; 101*8bab661aSEmmanuel Vadot mediatek,wo-ccif = <&wo_ccif0>; 102*8bab661aSEmmanuel Vadot }; 103*8bab661aSEmmanuel Vadot }; 104