1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2 # Copyright (c) 2018-2019 The Linux Foundation. All rights reserved.
6 $id: http://devicetree.org/schemas/net/wireless/mediatek,mt76.yaml#
7 $schema: http://devicetree.org/meta-schemas/core.yaml#
9 title: MediaTek mt76 wireless devices Generic Binding
12 - Felix Fietkau <nbd@nbd.name>
13 - Lorenzo Bianconi <lorenzo@kernel.org>
14 - Ryder Lee <ryder.lee@mediatek.com>
17 This node provides properties for configuring the MediaTek mt76xx
18 wireless device. The node is expected to be specified as a child
19 node of the PCI controller to which the wireless chip is connected.
20 Alternatively, it can specify the wireless part of the MT7628/MT7688
24 - $ref: ieee80211.yaml#
30 - mediatek,mt7628-wmac
31 - mediatek,mt7622-wmac
43 $ref: /schemas/types.yaml#/definitions/phandle
45 Phandle to the infrastructure bus fabric syscon node.
46 This property is MT7622 specific
48 ieee80211-freq-limit: true
51 $ref: /schemas/types.yaml#/definitions/uint32-array
53 EEPROM data embedded as array.
56 $ref: /schemas/types.yaml#/definitions/phandle-array
58 Phandle to a MTD partition + offset containing EEPROM data
61 $ref: /schemas/types.yaml#/definitions/flag
63 Specify if the radio eeprom partition is written in big-endian
65 mediatek,eeprom-merge-otp:
68 Merge EEPROM data with OTP data. Can be used on boards where the flash
69 calibration data is generic and specific calibration data should be
70 pulled from the OTP ROM
74 $ref: /schemas/leds/common.yaml#
75 additionalProperties: false
82 additionalProperties: false
86 additionalProperties: false
89 $ref: /schemas/types.yaml#/definitions/string
91 Regdomain refers to a legal regulatory region. Different
92 countries define different levels of allowable transmitter
93 power, time that a channel can be occupied, and different
103 additionalProperties: false
107 additionalProperties: false
110 $ref: /schemas/types.yaml#/definitions/uint32-array
114 Pairs of first and last channel number of the selected
118 $ref: /schemas/types.yaml#/definitions/uint8-array
122 4 half-dBm per-rate power limit values
125 $ref: /schemas/types.yaml#/definitions/uint8-array
129 8 half-dBm per-rate power limit values
132 $ref: /schemas/types.yaml#/definitions/uint8-matrix
134 Sets of per-rate power limit values for 802.11n/802.11ac
135 rates for multiple channel bandwidth settings.
136 Each set starts with the number of channel bandwidth
137 settings for which the rate set applies, followed by
138 either 8 or 10 power limit values. The order of the
139 channel bandwidth settings is 20, 40, 80 and 160 MHz.
146 $ref: /schemas/types.yaml#/definitions/uint8-matrix
148 Sets of per-rate power limit values for 802.11ax rates
149 for multiple channel bandwidth or resource unit settings.
150 Each set starts with the number of channel bandwidth or
151 resource unit settings for which the rate set applies,
152 followed by 12 power limit values. The order of the
153 channel resource unit settings is RU26, RU52, RU106,
154 RU242/SU20, RU484/SU40, RU996/SU80 and RU2x996/SU160.
160 $ref: /schemas/types.yaml#/definitions/uint32-array
162 Half-dBm power delta for different numbers of antennas
168 additionalProperties: false
173 #address-cells = <3>;
176 compatible = "mediatek,mt76";
177 reg = <0x0000 0 0 0 0>;
178 ieee80211-freq-limit = <5000000 6000000>;
179 mediatek,mtd-eeprom = <&factory 0x8000>;
192 rates-ofdm = /bits/ 8 <23 23 23 23 23 23 23 23>;
193 rates-mcs = /bits/ 8 <1 23 23 23 23 23 23 23 23 23 23>,
194 /bits/ 8 <3 22 22 22 22 22 22 22 22 22 22>;
195 rates-ru = /bits/ 8 <3 22 22 22 22 22 22 22 22 22 22 22 22>,
196 /bits/ 8 <4 20 20 20 20 20 20 20 20 20 20 20 20>;
199 channels = <100 181>;
200 rates-ofdm = /bits/ 8 <14 14 14 14 14 14 14 14>;
201 rates-mcs = /bits/ 8 <4 14 14 14 14 14 14 14 14 14 14>;
202 txs-delta = <12 9 6>;
203 rates-ru = /bits/ 8 <7 14 14 14 14 14 14 14 14 14 14 14 14>;
213 compatible = "mediatek,mt7628-wmac";
214 reg = <0x10300000 0x100000>;
216 interrupt-parent = <&cpuintc>;
219 mediatek,mtd-eeprom = <&factory 0x0>;
223 #include <dt-bindings/interrupt-controller/arm-gic.h>
224 #include <dt-bindings/interrupt-controller/irq.h>
226 compatible = "mediatek,mt7622-wmac";
227 reg = <0x10300000 0x100000>;
228 interrupts = <GIC_SPI 211 IRQ_TYPE_LEVEL_LOW>;
230 mediatek,infracfg = <&infracfg>;
232 power-domains = <&scpsys 3>;