From: Avinash Bhatt <avinash.bhatt@intel.com>
To: devicetree@vger.kernel.org, linux-wireless@vger.kernel.org
Cc: robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org,
johannes@sipsolutions.net, miriam.rachel.korenblit@intel.com,
linux-kernel@vger.kernel.org, kobi.guetta@intel.com,
emmanuel.grumbach@intel.com
Subject: [PATCH v3 1/3] dt-bindings: net: wireless: Add Intel Wi-Fi 7 BE200 PCIe adapter
Date: Wed, 13 May 2026 09:05:29 +0300 [thread overview]
Message-ID: <20260513060531.8130-2-avinash.bhatt@intel.com> (raw)
In-Reply-To: <20260513060531.8130-1-avinash.bhatt@intel.com>
The Intel Wi-Fi 7 BE200 is a discrete PCIe Wi-Fi adapter supporting
802.11be with tri-band operation including the 6 GHz band.
Signed-off-by: Avinash Bhatt <avinash.bhatt@intel.com>
---
.../bindings/net/wireless/intel,iwlwifi.yaml | 248 ++++++++++++++++++
MAINTAINERS | 1 +
2 files changed, 249 insertions(+)
create mode 100644 Documentation/devicetree/bindings/net/wireless/intel,iwlwifi.yaml
diff --git a/Documentation/devicetree/bindings/net/wireless/intel,iwlwifi.yaml b/Documentation/devicetree/bindings/net/wireless/intel,iwlwifi.yaml
new file mode 100644
index 000000000000..e5ba5e7608e2
--- /dev/null
+++ b/Documentation/devicetree/bindings/net/wireless/intel,iwlwifi.yaml
@@ -0,0 +1,248 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+# Copyright (c) 2026 Intel Corporation
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/net/wireless/intel,iwlwifi.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Intel Wi-Fi 7 BE200 PCIe adapter
+
+maintainers:
+ - Avinash Bhatt <avinash.bhatt@intel.com>
+ - Miri Korenblit <miriam.rachel.korenblit@intel.com>
+
+description:
+ Intel Wi-Fi 7 BE200 (BE200NGW) IEEE 802.11be discrete PCIe adapter.
+
+allOf:
+ - $ref: /schemas/net/wireless/ieee80211.yaml#
+
+properties:
+ compatible:
+ enum:
+ - pci8086,272b
+
+ reg:
+ maxItems: 1
+
+ intel,wrds:
+ description: |
+ SAR (Specific Absorption Rate) transmit power limits per antenna chain
+ and frequency subband, in units of 0.125 dBm.
+
+ First cell is the mode word: bit 0 set enables SAR limiting, bit 0
+ clear disables it (device uses its certified maximum).
+
+ Followed by 48 limit values for four antenna chains in order:
+ chain A, chain B, CDB chain A, CDB chain B. Each chain has 12
+ subband values covering the following frequency ranges:
+
+ [0] 2.4 GHz ch 1-13 (2412-2472 MHz)
+ [1] 5 GHz ch 36-64 (5180-5320 MHz)
+ [2] 5 GHz ch 68-96 (5340-5480 MHz)
+ [3] 5 GHz ch 100-144 (5500-5720 MHz)
+ [4] 5 GHz ch 149-177 (5745-5885 MHz)
+ [5] 6 GHz ch 1-45 (5955-6175 MHz)
+ [6] 6 GHz ch 49-93 (6195-6415 MHz)
+ [7] 6 GHz ch 97-115 (6435-6525 MHz)
+ [8] 6 GHz ch 117-151 (6535-6705 MHz)
+ [9] 6 GHz ch 153-183 (6715-6865 MHz)
+ [10] 6 GHz ch 185-233 (6875-7115 MHz)
+ [11] 6 GHz ch 237-253 (7135-7215 MHz)
+ $ref: /schemas/types.yaml#/definitions/uint32-array
+ minItems: 49
+ maxItems: 49
+
+ intel,uats:
+ description: |
+ Per-country enablement matrix for 6 GHz AP types. 338-byte array
+ encoding which AP types (AFC, VLP, LPI) are permitted per country.
+
+ Countries are identified by ISO 3166-1 alpha-2 code. The matrix
+ covers all 26x26 = 676 two-letter combinations (AA..ZZ), stored
+ column-major (all second-letter variants for first letter A first,
+ then B, and so on). 26 columns x 13 bytes = 338 bytes total.
+
+ Each country occupies 4 bits (a nibble); two countries are packed
+ per byte, low nibble first:
+ bit 0: AFC (Standard Power AP) permitted
+ bit 1: VLP (Very Low Power AP) permitted
+ bit 2: LPI (Low Power Indoor AP) permitted
+
+ A bit is only effective when the corresponding control bit in
+ intel,6e-uhb is also set (bit 30 for AFC, bit 29 for VLP,
+ bit 31 for LPI per-country mode).
+ $ref: /schemas/types.yaml#/definitions/uint8-array
+ minItems: 338
+ maxItems: 338
+
+ intel,srd:
+ description: |
+ ETSI 5.8 GHz SRD (Short Range Device) channel behaviour in the
+ 5725-5875 MHz band for ETSI regulatory domains.
+
+ active-scan - active scanning permitted (default)
+ passive-scan - device may associate and transfer data but must
+ not transmit probe requests on SRD channels
+ disabled - device must not scan, associate, or operate on
+ any SRD channel
+ enum:
+ - active-scan
+ - passive-scan
+ - disabled
+
+ intel,6e-uhb:
+ description: |
+ 6-7 GHz Ultra-High Band (UHB) per-country enable bitmask.
+
+ bit 0: override control; 0 = use device defaults,
+ 1 = force-disable all countries not explicitly
+ enabled in bits 1-25
+ bit 1: USA
+ bit 2: Rest of World (ROW)
+ bit 3: EU
+ bit 4: South Korea
+ bit 5: Brazil
+ bit 6: Chile
+ bit 7: Japan
+ bit 8: Canada
+ bit 9: Morocco
+ bit 10: Mongolia
+ bit 11: Malaysia
+ bit 12: Saudi Arabia
+ bit 13: Mexico
+ bit 14: Nigeria
+ bit 15: Thailand
+ bit 16: Singapore
+ bit 17: Taiwan
+ bit 18: South Africa
+ bit 19: Philippines
+ bit 20: Serbia
+ bit 21: Indonesia
+ bit 22: Azerbaijan
+ bit 23: Paraguay
+ bit 24: Vietnam
+ bit 25: India
+ bit 27: enable VLP active scan, SoftAP, and P2P-GO in Japan
+ bit 29: enable VLP mode per intel,uats country table
+ bit 30: enable AFC mode per intel,uats country table
+ bit 31: use intel,uats country table for LPI (0 = group mode)
+ $ref: /schemas/types.yaml#/definitions/uint32
+
+ intel,regulatory-special:
+ description: |
+ Special regulatory configuration flags.
+
+ bit 4: enable Australia UHB band extension
+ bit 5: Bangladesh 6 GHz UHB enablement
+ $ref: /schemas/types.yaml#/definitions/uint32
+
+ intel,activate-channel:
+ description: |
+ Indoor channel activation bitmask. Enables specific frequency bands
+ for active use when the platform is operating indoors.
+
+ bit 0: EU U-NII-1 (5150-5250 MHz)
+ bit 1: Japan U-NII-1 (5150-5250 MHz)
+ bit 2: China Mainland U-NII-1 (5150-5250 MHz)
+ bit 3: USA U-NII-4 (5850-5925 MHz)
+ bit 4: Worldwide U-NII-1 (5150-5250 MHz) for any country
+ where the band is permitted indoors
+ bit 5: Canada U-NII-4 (5850-5925 MHz)
+ $ref: /schemas/types.yaml#/definitions/uint32
+
+ intel,force-disable-channels:
+ description: |
+ Per-band force-disable bitmask. Permanently disables specific
+ frequency bands regardless of regulatory domain.
+
+ bit 0: 2.4 GHz (ch 1-13, 2412-2472 MHz)
+ bit 1: 5.2 GHz (ch 36-48, 5180-5240 MHz)
+ bit 2: 5.3 GHz (ch 52-64, 5260-5320 MHz)
+ bit 3: 5.5 GHz (ch 100-144, 5500-5720 MHz)
+ bit 4: 5.8 GHz (ch 149-165, 5745-5825 MHz)
+ bit 5: 5.9 GHz (ch 169-177, 5845-5885 MHz)
+ bit 6: 6.2 GHz (ch 1-93, 5955-6415 MHz)
+ bit 7: 6.5 GHz (ch 97-113, 6435-6525 MHz)
+ bit 8: 6.6 GHz (ch 117-153, 6535-6705 MHz)
+ bit 9: 6.8 GHz (ch 157-185, 6715-6885 MHz)
+ bit 10: 7.0 GHz (ch 185-233, 6875-7115 MHz)
+ $ref: /schemas/types.yaml#/definitions/uint32
+
+ intel,11be:
+ description: |
+ 802.11be (Wi-Fi 7) per-country enable bitmask.
+
+ bit 0: China (CN)
+ bit 1: South Korea
+ $ref: /schemas/types.yaml#/definitions/uint32
+
+ intel,splc:
+ description:
+ Platform thermal power limit for the Wi-Fi core in mW. The device
+ will not exceed this limit regardless of regulatory maximums.
+ $ref: /schemas/types.yaml#/definitions/uint32
+ minimum: 1
+
+ intel,wcpe:
+ description: |
+ 802.11be channel puncturing enable bitmask. When set, allows the
+ device to puncture (skip) sub-channels within a wide channel for
+ coexistence with incumbents, subject to country certification.
+
+ bit 0: USA
+ bit 1: Canada
+ $ref: /schemas/types.yaml#/definitions/uint32
+
+ intel,wbem:
+ description: |
+ 320 MHz channel bandwidth enable bitmask per country. Each bit
+ takes effect only if the installed module is certified for 320 MHz
+ in that country.
+
+ bit 0: Japan
+ bit 1: South Korea
+ $ref: /schemas/types.yaml#/definitions/uint32
+
+required:
+ - compatible
+ - reg
+
+additionalProperties: false
+
+examples:
+ - |
+ pcie {
+ #address-cells = <3>;
+ #size-cells = <2>;
+
+ pcie@0 {
+ device_type = "pci";
+ reg = <0x0 0x0 0x0 0x0 0x0>;
+ #address-cells = <3>;
+ #size-cells = <2>;
+ ranges;
+ bus-range = <0x01 0xff>;
+
+ wifi@0 {
+ compatible = "pci8086,272b";
+ reg = <0x10000 0x0 0x0 0x0 0x0>;
+
+ /* SAR power limits: mode + 4 chains x 12 subbands */
+ intel,wrds = <
+ 0x01
+ 0x38 0x38 0x38 0x38 0x38 0x38 0x38 0x38 0x38 0x38 0x38 0x38
+ 0x38 0x38 0x38 0x38 0x38 0x38 0x38 0x38 0x38 0x38 0x38 0x38
+ 0x3c 0x3c 0x3c 0x3c 0x3c 0x3c 0x3c 0x3c 0x3c 0x3c 0x3c 0x3c
+ 0x3c 0x3c 0x3c 0x3c 0x3c 0x3c 0x3c 0x3c 0x3c 0x3c 0x3c 0x3c
+ >;
+
+ intel,splc = <4500>;
+ intel,wcpe = <0x03>;
+ intel,wbem = <0x03>;
+ intel,srd = "passive-scan";
+ intel,activate-channel = <0x01>;
+ intel,6e-uhb = <0x06>;
+ };
+ };
+ };
diff --git a/MAINTAINERS b/MAINTAINERS
index 77fdfcb55f06..674320ef137e 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -13256,6 +13256,7 @@ L: linux-wireless@vger.kernel.org
S: Supported
W: https://wireless.wiki.kernel.org/en/users/drivers/iwlwifi
T: git https://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/iwlwifi-next.git/
+F: Documentation/devicetree/bindings/net/wireless/intel,iwlwifi.yaml
F: drivers/net/wireless/intel/iwlwifi/
INTEL VISION SENSING CONTROLLER DRIVER
--
2.34.1
next prev parent reply other threads:[~2026-05-13 6:05 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-05-13 6:05 [PATCH v3 0/3] wifi: iwlwifi: add Device Tree hardware integration information Avinash Bhatt
2026-05-13 6:05 ` Avinash Bhatt [this message]
2026-05-13 6:05 ` [PATCH v3 2/3] wifi: iwlwifi: dt: add Device Tree BIOS configuration infrastructure Avinash Bhatt
2026-05-13 6:05 ` [PATCH v3 3/3] wifi: iwlwifi: dt: use Device Tree as fallback BIOS configuration source Avinash Bhatt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260513060531.8130-2-avinash.bhatt@intel.com \
--to=avinash.bhatt@intel.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=emmanuel.grumbach@intel.com \
--cc=johannes@sipsolutions.net \
--cc=kobi.guetta@intel.com \
--cc=krzk+dt@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-wireless@vger.kernel.org \
--cc=miriam.rachel.korenblit@intel.com \
--cc=robh@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox