155c1c4e9SLorenzo Bianconi# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 255c1c4e9SLorenzo Bianconi%YAML 1.2 355c1c4e9SLorenzo Bianconi--- 44b71ed9fSRob Herring$id: http://devicetree.org/schemas/arm/mediatek/mediatek,mt7622-wed.yaml# 54b71ed9fSRob Herring$schema: http://devicetree.org/meta-schemas/core.yaml# 655c1c4e9SLorenzo Bianconi 755c1c4e9SLorenzo Bianconititle: MediaTek Wireless Ethernet Dispatch Controller for MT7622 855c1c4e9SLorenzo Bianconi 955c1c4e9SLorenzo Bianconimaintainers: 1055c1c4e9SLorenzo Bianconi - Lorenzo Bianconi <lorenzo@kernel.org> 1155c1c4e9SLorenzo Bianconi - Felix Fietkau <nbd@nbd.name> 1255c1c4e9SLorenzo Bianconi 1355c1c4e9SLorenzo Bianconidescription: 1455c1c4e9SLorenzo Bianconi The mediatek wireless ethernet dispatch controller can be configured to 1555c1c4e9SLorenzo Bianconi intercept and handle access to the WLAN DMA queues and PCIe interrupts 1655c1c4e9SLorenzo Bianconi and implement hardware flow offloading from ethernet to WLAN. 1755c1c4e9SLorenzo Bianconi 1855c1c4e9SLorenzo Bianconiproperties: 1955c1c4e9SLorenzo Bianconi compatible: 2055c1c4e9SLorenzo Bianconi items: 2155c1c4e9SLorenzo Bianconi - enum: 2255c1c4e9SLorenzo Bianconi - mediatek,mt7622-wed 23cf88231dSDaniel Golle - mediatek,mt7981-wed 2422ecfce1SLorenzo Bianconi - mediatek,mt7986-wed 25*f881f273SLorenzo Bianconi - mediatek,mt7988-wed 2655c1c4e9SLorenzo Bianconi - const: syscon 2755c1c4e9SLorenzo Bianconi 2855c1c4e9SLorenzo Bianconi reg: 2955c1c4e9SLorenzo Bianconi maxItems: 1 3055c1c4e9SLorenzo Bianconi 3155c1c4e9SLorenzo Bianconi interrupts: 3255c1c4e9SLorenzo Bianconi maxItems: 1 3355c1c4e9SLorenzo Bianconi 34ceb82ac2SLorenzo Bianconi memory-region: 35ceb82ac2SLorenzo Bianconi items: 36ceb82ac2SLorenzo Bianconi - description: firmware EMI region 37ceb82ac2SLorenzo Bianconi - description: firmware ILM region 38ceb82ac2SLorenzo Bianconi - description: firmware DLM region 39ceb82ac2SLorenzo Bianconi - description: firmware CPU DATA region 40ceb82ac2SLorenzo Bianconi - description: firmware BOOT region 41ceb82ac2SLorenzo Bianconi 42ceb82ac2SLorenzo Bianconi memory-region-names: 43ceb82ac2SLorenzo Bianconi items: 44ceb82ac2SLorenzo Bianconi - const: wo-emi 45ceb82ac2SLorenzo Bianconi - const: wo-ilm 46ceb82ac2SLorenzo Bianconi - const: wo-dlm 47ceb82ac2SLorenzo Bianconi - const: wo-data 48ceb82ac2SLorenzo Bianconi - const: wo-boot 49ceb82ac2SLorenzo Bianconi 50ceb82ac2SLorenzo Bianconi mediatek,wo-ccif: 51ceb82ac2SLorenzo Bianconi $ref: /schemas/types.yaml#/definitions/phandle 52ceb82ac2SLorenzo Bianconi description: mediatek wed-wo controller interface. 53ceb82ac2SLorenzo Bianconi 54ceb82ac2SLorenzo BianconiallOf: 55ceb82ac2SLorenzo Bianconi - if: 56ceb82ac2SLorenzo Bianconi properties: 57ceb82ac2SLorenzo Bianconi compatible: 58ceb82ac2SLorenzo Bianconi contains: 59ceb82ac2SLorenzo Bianconi const: mediatek,mt7622-wed 60ceb82ac2SLorenzo Bianconi then: 61ceb82ac2SLorenzo Bianconi properties: 62ceb82ac2SLorenzo Bianconi memory-region-names: false 63ceb82ac2SLorenzo Bianconi memory-region: false 64ceb82ac2SLorenzo Bianconi mediatek,wo-ccif: false 65ceb82ac2SLorenzo Bianconi 6655c1c4e9SLorenzo Bianconirequired: 6755c1c4e9SLorenzo Bianconi - compatible 6855c1c4e9SLorenzo Bianconi - reg 6955c1c4e9SLorenzo Bianconi - interrupts 7055c1c4e9SLorenzo Bianconi 7155c1c4e9SLorenzo BianconiadditionalProperties: false 7255c1c4e9SLorenzo Bianconi 7355c1c4e9SLorenzo Bianconiexamples: 7455c1c4e9SLorenzo Bianconi - | 7555c1c4e9SLorenzo Bianconi #include <dt-bindings/interrupt-controller/arm-gic.h> 7655c1c4e9SLorenzo Bianconi #include <dt-bindings/interrupt-controller/irq.h> 7755c1c4e9SLorenzo Bianconi soc { 7855c1c4e9SLorenzo Bianconi #address-cells = <2>; 7955c1c4e9SLorenzo Bianconi #size-cells = <2>; 8055c1c4e9SLorenzo Bianconi wed0: wed@1020a000 { 8155c1c4e9SLorenzo Bianconi compatible = "mediatek,mt7622-wed","syscon"; 8255c1c4e9SLorenzo Bianconi reg = <0 0x1020a000 0 0x1000>; 8355c1c4e9SLorenzo Bianconi interrupts = <GIC_SPI 214 IRQ_TYPE_LEVEL_LOW>; 8455c1c4e9SLorenzo Bianconi }; 8555c1c4e9SLorenzo Bianconi }; 86ceb82ac2SLorenzo Bianconi 87ceb82ac2SLorenzo Bianconi - | 88ceb82ac2SLorenzo Bianconi #include <dt-bindings/interrupt-controller/arm-gic.h> 89ceb82ac2SLorenzo Bianconi #include <dt-bindings/interrupt-controller/irq.h> 90ceb82ac2SLorenzo Bianconi soc { 91ceb82ac2SLorenzo Bianconi #address-cells = <2>; 92ceb82ac2SLorenzo Bianconi #size-cells = <2>; 93ceb82ac2SLorenzo Bianconi 94ceb82ac2SLorenzo Bianconi wed@15010000 { 95ceb82ac2SLorenzo Bianconi compatible = "mediatek,mt7986-wed", "syscon"; 96ceb82ac2SLorenzo Bianconi reg = <0 0x15010000 0 0x1000>; 97ceb82ac2SLorenzo Bianconi interrupts = <GIC_SPI 205 IRQ_TYPE_LEVEL_HIGH>; 98ceb82ac2SLorenzo Bianconi 99ceb82ac2SLorenzo Bianconi memory-region = <&wo_emi>, <&wo_ilm>, <&wo_dlm>, 100ceb82ac2SLorenzo Bianconi <&wo_data>, <&wo_boot>; 101ceb82ac2SLorenzo Bianconi memory-region-names = "wo-emi", "wo-ilm", "wo-dlm", 102ceb82ac2SLorenzo Bianconi "wo-data", "wo-boot"; 103ceb82ac2SLorenzo Bianconi mediatek,wo-ccif = <&wo_ccif0>; 104ceb82ac2SLorenzo Bianconi }; 105ceb82ac2SLorenzo Bianconi }; 106