]> git.ipfire.org Git - thirdparty/openwrt.git/commitdiff
ramips: add support for Plasma Cloud PAX1800-Lite 20152/head
authorSven Eckelmann (Plasma Cloud) <se@simonwunderlich.de>
Thu, 12 Oct 2023 11:57:32 +0000 (13:57 +0200)
committerHauke Mehrtens <hauke@hauke-m.de>
Sat, 4 Oct 2025 18:30:36 +0000 (20:30 +0200)
Plasma Cloud PAX1800-Lite is a dual-band Wi-Fi 6 router, based on MediaTek
MT7621A + MT79x5D platform.

Specifications:

- SOC:      MT7621AT (880 MHz)
- DRAM:     DDR3 448 MiB (Nanya NT5CC256M16DP-DI)
- Flash:    2 MiB SPI NOR (S25FL016K) + 128 MB SPI NAND (W25N02KVZEIR)
- Ethernet: 1x 10/100/1000 Mbps (SOC's built-in switch, with PoE+)
- Wi-Fi:    2x2:2 2.4/5 GHz (MT7905DAN + MT7975DN)
            (MT7905DAN doesn't support background DFS scan/BT)
- LED:      tri-color LED for status (red, blue, green)
- Buttons:  1x (reset)
- Antenna:  4x internal, non-detachable omnidirectional
- UART:     1x 4-pin (2.54 mm pitch, marked as "3V3 G/RX GND W/TX")
- Power:    12 V DC/2 A (DC jack)

MAC addresses:

WAN:     54:9C:27:xx:xx:00 (factory 0x3fff4, device label)
2.4 GHz: 54:9C:27:xx:xx:02 (factory 0x4, device label +2)
5 GHz:   54:9C:27:xx:xx:08 (factory 0xa, device label +8)

Flashing instructions:
======================

Various methods can be used to install the actual image on the flash.
Two easy ones are:

ap51-flash
----------

The tool ap51-flash (https://github.com/ap51-flash/ap51-flash) should be
used to transfer the image to the u-boot when the device boots up.

initramfs from TFTP
-------------------

The serial console (115200 8N1) must be used to access the u-boot shell
during bootup. It can then be used to first boot up the initramfs image
from a TFTP server (here with the IP 192.168.1.21):

    setenv serverip 192.168.1.21
    setenv ipaddr 192.168.1.1
    tftpboot 0x83001000 <filename-of-initramfs-kernel>.bin && bootm $fileaddr

The actual sysupgrade image can then be transferred (on the LAN port) to the
device via

    scp <filename-of-squashfs-sysupgrade>.bin root@192.168.1.1:/tmp/

On the device, the sysupgrade must then be started using

    sysupgrade -n /tmp/<filename-of-squashfs-sysupgrade>.bin

Signed-off-by: Sven Eckelmann (Plasma Cloud) <se@simonwunderlich.de>
Link: https://github.com/openwrt/openwrt/pull/20152
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
include/image-commands.mk
package/boot/uboot-tools/uboot-envtools/files/ramips
scripts/nand-fwupgradecfg-gen.sh [new file with mode: 0755]
target/linux/ramips/dts/mt7621_plasmacloud_pax1800-lite.dts [new file with mode: 0644]
target/linux/ramips/image/mt7621.mk
target/linux/ramips/mt7621/base-files/etc/board.d/02_network
target/linux/ramips/mt7621/base-files/lib/upgrade/dualboot_datachk.sh [new file with mode: 0644]
target/linux/ramips/mt7621/base-files/lib/upgrade/platform.sh
target/linux/ramips/mt7621/config-6.12

index 27a85d770e99a17e9cc350a9fdd4b27f3c599500..7b2b346aa6c9afa47a8736a202f138a5996c5238 100644 (file)
@@ -640,6 +640,19 @@ define Build/openmesh-image
                "$(call param_get_default,rootfs,$(1),$@)" "rootfs"
 endef
 
+define Build/dualboot-datachk-nand-image
+       $(TOPDIR)/scripts/nand-fwupgradecfg-gen.sh \
+               "$(call param_get_default,ce_type,$(1),$(DEVICE_NAME))" \
+               "$@-fwupgrade.cfg" \
+               "$(call param_get_default,kernel,$(1),$(IMAGE_KERNEL))" \
+               "$(call param_get_default,rootfs,$(1),$@)"
+       $(TOPDIR)/scripts/combined-ext-image.sh \
+               "$(call param_get_default,ce_type,$(1),$(DEVICE_NAME))" "$@" \
+               "$@-fwupgrade.cfg" "fwupgrade.cfg" \
+               "$(call param_get_default,kernel,$(1),$(IMAGE_KERNEL))" "kernel" \
+               "$(call param_get_default,rootfs,$(1),$@)" "rootfs"
+endef
+
 define Build/pad-extra
        dd if=/dev/zero bs=$(1) count=1 >> $@
 endef
index 49a2b90f73d0a1502161d9751fe2dd44cbfd73b6..5d6cbe39369b175f6ad50544de37d3337b1e1318 100644 (file)
@@ -32,6 +32,7 @@ allnet,all0256n-4m|\
 allnet,all0256n-8m|\
 allnet,all5002|\
 asiarf,ap7621-004-v3|\
+plasmacloud,pax1800-lite|\
 yuncore,ax820)
        ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x10000" "0x10000"
        ;;
diff --git a/scripts/nand-fwupgradecfg-gen.sh b/scripts/nand-fwupgradecfg-gen.sh
new file mode 100755 (executable)
index 0000000..862cd94
--- /dev/null
@@ -0,0 +1,61 @@
+#!/bin/sh
+#
+# Copyright (C) 2011 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+usage() {
+       echo "Usage: $0 <TARGET> <out file path> <kernel path> <rootfs path>"
+       exit 1
+}
+
+[ "$#" -lt 4 ] && usage
+
+CE_TYPE=$1
+CFG_OUT=$2
+KERNEL_PATH=$3
+ROOTFS_PATH=$4
+
+case $CE_TYPE in
+PAX1800-Lite)
+       EXTRA_SETENV=""
+       ;;
+*)
+       echo "Error - unsupported ce type: $CE_TYPE"
+       exit 1
+       ;;
+esac
+
+# kernel calculation
+KERNEL_MD5=$(mkhash md5 $KERNEL_PATH)
+KERNEL_SHA256=$(mkhash sha256 $KERNEL_PATH)
+KERNEL_SIZE=$(stat -c%s "$KERNEL_PATH")
+KERNEL_CHECK_SIZE=$(printf '0x%x' $KERNEL_SIZE)
+
+# rootfs calculation
+ROOTFS_MD5=$(mkhash md5 $ROOTFS_PATH)
+ROOTFS_SHA256=$(mkhash sha256 $ROOTFS_PATH)
+ROOTFS_SIZE=$(stat -c%s "$ROOTFS_PATH")
+ROOTFS_CHECK_SIZE=$(printf '0x%x' $ROOTFS_SIZE)
+
+cat << EOF > $CFG_OUT
+[kernel]
+filename=kernel
+md5sum=$KERNEL_MD5
+filemd5sum=$KERNEL_MD5
+filesha256sum=$KERNEL_SHA256
+checksize=$KERNEL_CHECK_SIZE
+ubi=1
+cmd_success=setenv bootseq 1,2; $EXTRA_SETENV; saveenv
+
+[rootfs]
+filename=rootfs
+md5sum=$ROOTFS_MD5
+filemd5sum=$ROOTFS_MD5
+filesha256sum=$ROOTFS_SHA256
+checksize=$ROOTFS_CHECK_SIZE
+ubi=1
+cmd_success=setenv bootseq 1,2; $EXTRA_SETENV; saveenv
+EOF
diff --git a/target/linux/ramips/dts/mt7621_plasmacloud_pax1800-lite.dts b/target/linux/ramips/dts/mt7621_plasmacloud_pax1800-lite.dts
new file mode 100644 (file)
index 0000000..2236bdf
--- /dev/null
@@ -0,0 +1,2229 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+
+#include "mt7621.dtsi"
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/input/input.h>
+#include <dt-bindings/leds/common.h>
+
+/ {
+       compatible = "plasmacloud,pax1800-lite", "mediatek,mt7621-soc";
+       model = "Plasma Cloud PAX1800-Lite";
+
+       chosen {
+               bootargs = "console=ttyS0,115200";
+       };
+
+       aliases {
+               led-boot = &led_status_green;
+               led-failsafe = &led_status_green;
+               led-running = &led_status_green;
+               led-upgrade = &led_status_green;
+               label-mac-device = &gmac1;
+       };
+
+       gpio_export {
+               compatible = "gpio-export";
+               #size-cells = <0>;
+
+               dc_in {
+                       gpio-export,name = "dc_in";
+                       gpios = <&gpio 28 GPIO_ACTIVE_LOW>;
+               };
+
+               poe_in {
+                       gpio-export,name = "poe_in";
+                       gpios = <&gpio 29 GPIO_ACTIVE_LOW>;
+               };
+       };
+
+       keys {
+               compatible = "gpio-keys";
+
+               reset {
+                       label = "reset";
+                       gpios = <&gpio 18 GPIO_ACTIVE_LOW>;
+                       linux,code = <KEY_RESTART>;
+               };
+       };
+
+       leds {
+               compatible = "gpio-leds";
+
+               status_blue {
+                       color = <LED_COLOR_ID_BLUE>;
+                       function = LED_FUNCTION_STATUS;
+                       gpios = <&gpio 8 GPIO_ACTIVE_LOW>;
+               };
+
+               led_status_green: status_green {
+                       color = <LED_COLOR_ID_GREEN>;
+                       function = LED_FUNCTION_STATUS;
+                       gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
+               };
+
+               status_red {
+                       color = <LED_COLOR_ID_RED>;
+                       function = LED_FUNCTION_STATUS;
+                       gpios = <&gpio 16 GPIO_ACTIVE_LOW>;
+               };
+       };
+
+       watchdog {
+               compatible = "linux,wdt-gpio";
+               gpios = <&gpio 7 GPIO_ACTIVE_LOW>;
+               hw_algo = "toggle";
+               /* hw_margin_ms is actually 300s but driver limits it to 60s */
+               hw_margin_ms = <60000>;
+               always-running;
+       };
+};
+
+&i2c {
+       status = "okay";
+
+       g751: g751@48 {
+               compatible = "gmt,g751";
+               reg = <0x48>;
+               status = "okay";
+       };
+};
+
+&spi0 {
+       status = "okay";
+       num-cs = <2>;
+
+       flash@0 {
+               #address-cells = <1>;
+               #size-cells = <1>;
+               compatible = "jedec,spi-nor";
+               spi-max-frequency = <20000000>;
+               reg = <0>;
+
+               partitions {
+                       compatible = "fixed-partitions";
+                       #address-cells = <1>;
+                       #size-cells = <1>;
+
+                       partition@0 {
+                               label = "uboot";
+                               reg = <0x00000 0x80000>;
+                       };
+
+                       partition@80000 {
+                               label = "uboot_env";
+                               reg = <0x80000 0x10000>;
+                       };
+
+                       partition@90000 {
+                               label = "factory";
+                               reg = <0x90000 0x80000>;
+
+                               nvmem-layout {
+                                       compatible = "fixed-layout";
+                                       #address-cells = <1>;
+                                       #size-cells = <1>;
+
+                                       eeprom_factory_0: eeprom@0 {
+                                               reg = <0x0 0xe00>;
+                                       };
+
+                                       macaddr_factory_3fff4: macaddr@3fff4 {
+                                               reg = <0x3fff4 0x6>;
+                                       };
+                               };
+                       };
+
+                       partition@110000 {
+                               label = "keys";
+                               reg = <0x110000 0x10000>;
+                       };
+
+                       /* 0x120000 - 0x200000 unused */
+               };
+       };
+
+       flash@1 {
+               #address-cells = <1>;
+               #size-cells = <1>;
+               compatible = "spi-nand";
+               spi-max-frequency = <20000000>;
+               reg = <1>;
+
+               partitions {
+                       compatible = "fixed-partitions";
+                       #address-cells = <1>;
+                       #size-cells = <1>;
+
+                       partition@0 {
+                               label = "firmware1";
+                               reg = <0x0 0x4000000>;
+                               compatible = "linux,ubi";
+                       };
+
+                       partition@4000000 {
+                               label = "firmware2";
+                               reg = <0x4000000 0x4000000>;
+                               compatible = "linux,ubi";
+                       };
+               };
+       };
+};
+
+&pcie {
+       status = "okay";
+};
+
+&pcie1 {
+       wifi0: wifi@0,0 {
+               compatible = "mediatek,mt76";
+               reg = <0x0000 0 0 0 0>;
+
+               nvmem-cells = <&eeprom_factory_0>;
+               nvmem-cell-names = "eeprom";
+
+               mediatek,disable-radar-background;
+
+               power-limits {
+                       r0 {
+                               country = "CA";
+
+                               txpower-2g {
+                                       b0 {
+                                               channels = <1 1>;
+                                               rates-cck =
+                                                       /bits/ 8 <40 40 40 40>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <36 36 36 36 36 36 36 36>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 34 34 34 34 34 34 34 34 34 34>,
+                                                       /bits/ 8 <1 33 33 33 33 33 33 33 33 33 33>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 34 34 34 34 34 34 34 34 34 34 34 34>,
+                                                       /bits/ 8 <1 33 33 33 33 33 33 33 33 33 33 33 33>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <40 40 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <36 36 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <36 36 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 34 34 60 60 34 60 60 60 60 60>,
+                                                       /bits/ 8 <1 33 33 60 60 33 60 60 60 60 60>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 34 34 60 60 34 60 60 60 60 60>,
+                                                       /bits/ 8 <1 33 33 60 60 33 60 60 60 60 60>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b1 {
+                                               channels = <2 2>;
+                                               rates-cck =
+                                                       /bits/ 8 <40 40 40 40>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <37 37 37 37 37 37 37 37>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 34 34 34 34 34 34 34 34 34 34>,
+                                                       /bits/ 8 <1 33 33 33 33 33 33 33 33 33 33>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 34 34 34 34 34 34 34 34 34 34 34 34>,
+                                                       /bits/ 8 <1 33 33 33 33 33 33 33 33 33 33 33 33>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <40 40 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <37 37 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <37 37 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 34 34 60 60 34 60 60 60 60 60>,
+                                                       /bits/ 8 <1 33 33 60 60 33 60 60 60 60 60>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 34 34 60 60 34 60 60 60 60 60>,
+                                                       /bits/ 8 <1 33 33 60 60 33 60 60 60 60 60>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b2 {
+                                               channels = <3 6>;
+                                               rates-cck =
+                                                       /bits/ 8 <40 40 40 40>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <40 40 40 40 40 40 40 40>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 40 40 40 40 40 40 40 40 40 40>,
+                                                       /bits/ 8 <1 33 33 33 33 33 33 33 33 33 33>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 40 40 40 40 40 40 40 40 40 40 40 40>,
+                                                       /bits/ 8 <1 33 33 33 33 33 33 33 33 33 33 33 33>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <40 40 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <40 40 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <40 40 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 40 40 60 60 40 60 60 60 60 60>,
+                                                       /bits/ 8 <1 33 33 60 60 33 60 60 60 60 60>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 40 40 60 60 40 60 60 60 60 60>,
+                                                       /bits/ 8 <1 33 33 60 60 33 60 60 60 60 60>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b3 {
+                                               channels = <7 9>;
+                                               rates-cck =
+                                                       /bits/ 8 <40 40 40 40>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <40 40 40 40 40 40 40 40>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 40 40 40 40 40 40 40 40 40 40>,
+                                                       /bits/ 8 <1 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 40 40 40 40 40 40 40 40 40 40 40 40>,
+                                                       /bits/ 8 <1 32 32 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <40 40 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <40 40 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <40 40 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 40 40 60 60 40 60 60 60 60 60>,
+                                                       /bits/ 8 <1 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 40 40 60 60 40 60 60 60 60 60>,
+                                                       /bits/ 8 <1 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b4 {
+                                               channels = <10 10>;
+                                               rates-cck =
+                                                       /bits/ 8 <40 40 40 40>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <38 38 38 38 38 38 38 38>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 36 36 36 36 36 36 36 36 36 36>,
+                                                       /bits/ 8 <1 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 36 36 36 36 36 36 36 36 36 36 36 36>,
+                                                       /bits/ 8 <1 32 32 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <40 40 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <38 38 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <38 38 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 36 36 60 60 36 60 60 60 60 60>,
+                                                       /bits/ 8 <1 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 36 36 60 60 36 60 60 60 60 60>,
+                                                       /bits/ 8 <1 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b5 {
+                                               channels = <11 11>;
+                                               rates-cck =
+                                                       /bits/ 8 <40 40 40 40>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <35 35 35 35 35 35 35 35>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 33 33 33 33 33 33 33 33 33 33>,
+                                                       /bits/ 8 <1 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 33 33 33 33 33 33 33 33 33 33 33 33>,
+                                                       /bits/ 8 <1 32 32 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <40 40 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <35 35 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <35 35 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 33 33 60 60 33 60 60 60 60 60>,
+                                                       /bits/ 8 <1 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 33 33 60 60 33 60 60 60 60 60>,
+                                                       /bits/ 8 <1 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b6 {
+                                               channels = <12 14>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <60 60 60 60 60 60 60 60>;
+                                               rates-mcs =
+                                                       /bits/ 8 <4 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                               };
+                               txpower-5g {
+                                       b0 {
+                                               channels = <184 196>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <60 60 60 60 60 60 60 60>;
+                                               rates-mcs =
+                                                       /bits/ 8 <4 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b1 {
+                                               channels = <8 16>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <60 60 60 60 60 60 60 60>;
+                                               rates-mcs =
+                                                       /bits/ 8 <4 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b2 {
+                                               channels = <36 44>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <18 18 18 18 18 18 18 18>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 20 20 20 20 20 20 20 20 20 20>,
+                                                       /bits/ 8 <1 24 24 24 24 24 24 24 24 24 24>,
+                                                       /bits/ 8 <1 25 25 25 25 25 25 25 25 25 25>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 20 20 20 20 20 20 20 20 20 20 20 20>,
+                                                       /bits/ 8 <1 24 24 24 24 24 24 24 24 24 24 24 24>,
+                                                       /bits/ 8 <1 25 25 25 25 25 25 25 25 25 25 25 25>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <18 18 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <18 18 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 20 20 60 60 20 60 60 60 60 60>,
+                                                       /bits/ 8 <1 24 24 60 60 24 60 60 60 60 60>,
+                                                       /bits/ 8 <1 25 25 60 60 25 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 17 17 60 60 20 60 60 60 60 60>,
+                                                       /bits/ 8 <1 18 18 60 60 24 60 60 60 60 60>,
+                                                       /bits/ 8 <1 18 18 60 60 25 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b3 {
+                                               channels = <48 48>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <18 18 18 18 18 18 18 18>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 19 19 19 19 19 19 19 19 19 19>,
+                                                       /bits/ 8 <1 24 24 24 24 24 24 24 24 24 24>,
+                                                       /bits/ 8 <1 25 25 25 25 25 25 25 25 25 25>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 19 19 19 19 19 19 19 19 19 19 19 19>,
+                                                       /bits/ 8 <1 24 24 24 24 24 24 24 24 24 24 24 24>,
+                                                       /bits/ 8 <1 25 25 25 25 25 25 25 25 25 25 25 25>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <18 18 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <18 18 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 19 19 60 60 19 60 60 60 60 60>,
+                                                       /bits/ 8 <1 24 24 60 60 24 60 60 60 60 60>,
+                                                       /bits/ 8 <1 25 25 60 60 25 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 17 17 60 60 19 60 60 60 60 60>,
+                                                       /bits/ 8 <1 18 18 60 60 24 60 60 60 60 60>,
+                                                       /bits/ 8 <1 18 18 60 60 25 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b4 {
+                                               channels = <52 60>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <24 24 24 24 24 24 24 24>;
+                                               rates-mcs =
+                                                       /bits/ 8 <3 24 24 24 24 24 24 24 24 24 24>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <6 24 24 24 24 24 24 24 24 24 24 24 24>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <24 24 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <24 24 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <6 24 24 60 60 24 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 18 18 60 60 24 60 60 60 60 60>,
+                                                       /bits/ 8 <1 17 17 60 60 24 60 60 60 60 60>,
+                                                       /bits/ 8 <1 18 18 60 60 24 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b5 {
+                                               channels = <64 64>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <24 24 24 24 24 24 24 24>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 23 23 23 23 23 23 23 23 23 23>,
+                                                       /bits/ 8 <2 24 24 24 24 24 24 24 24 24 24>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 23 23 23 23 23 23 23 23 23 23 23 23>,
+                                                       /bits/ 8 <2 24 24 24 24 24 24 24 24 24 24 24 24>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <24 24 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <24 24 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 23 23 60 60 23 60 60 60 60 60>,
+                                                       /bits/ 8 <2 24 24 60 60 24 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 18 18 60 60 23 60 60 60 60 60>,
+                                                       /bits/ 8 <1 17 17 60 60 24 60 60 60 60 60>,
+                                                       /bits/ 8 <1 18 18 60 60 24 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b6 {
+                                               channels = <68 96>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <60 60 60 60 60 60 60 60>;
+                                               rates-mcs =
+                                                       /bits/ 8 <4 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b7 {
+                                               channels = <100 100>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <32 32 32 32 32 32 32 32>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 33 33 33 33 33 33 33 33 33 33>,
+                                                       /bits/ 8 <2 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 33 33 33 33 33 33 33 33 33 33 33 33>,
+                                                       /bits/ 8 <2 32 32 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <32 32 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <32 32 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 33 33 60 60 33 60 60 60 60 60>,
+                                                       /bits/ 8 <2 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 32 32 60 60 33 60 60 60 60 60>,
+                                                       /bits/ 8 <2 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b8 {
+                                               channels = <104 104>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <31 31 31 31 31 31 31 31>;
+                                               rates-mcs =
+                                                       /bits/ 8 <3 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <6 32 32 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <31 31 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <31 31 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <6 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <6 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b9 {
+                                               channels = <108 112>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <31 31 31 31 31 31 31 31>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <1 37 37 37 37 37 37 37 37 37 37>,
+                                                       /bits/ 8 <1 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 32 32 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <1 37 37 37 37 37 37 37 37 37 37 37 37>,
+                                                       /bits/ 8 <1 32 32 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <31 31 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <31 31 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <1 37 37 60 60 37 60 60 60 60 60>,
+                                                       /bits/ 8 <1 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <1 32 32 60 60 37 60 60 60 60 60>,
+                                                       /bits/ 8 <1 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b10 {
+                                               channels = <116 128>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <31 31 31 31 31 31 31 31>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <2 37 37 37 37 37 37 37 37 37 37>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 32 32 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <2 37 37 37 37 37 37 37 37 37 37 37 37>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <31 31 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <31 31 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <2 37 37 60 60 37 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <2 32 32 60 60 37 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b11 {
+                                               channels = <132 136>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <31 31 31 31 31 31 31 31>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <1 30 30 30 30 30 30 30 30 30 30>,
+                                                       /bits/ 8 <1 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 32 32 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <1 30 30 30 30 30 30 30 30 30 30 30 30>,
+                                                       /bits/ 8 <1 38 38 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <31 31 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <31 31 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <1 30 30 60 60 30 60 60 60 60 60>,
+                                                       /bits/ 8 <1 38 38 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <1 30 30 60 60 30 60 60 60 60 60>,
+                                                       /bits/ 8 <1 37 37 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b12 {
+                                               channels = <140 140>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <29 29 29 29 29 29 29 29>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <1 37 37 37 37 37 37 37 37 37 37>,
+                                                       /bits/ 8 <1 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 32 32 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <1 37 37 37 37 37 37 37 37 37 37 37 37>,
+                                                       /bits/ 8 <1 38 38 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <29 29 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <29 29 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <1 37 37 60 60 36 60 60 60 60 60>,
+                                                       /bits/ 8 <1 38 38 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <1 32 32 60 60 37 60 60 60 60 60>,
+                                                       /bits/ 8 <1 37 37 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b13 {
+                                               channels = <144 144>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <30 30 30 30 30 30 30 30>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <1 37 37 37 37 37 37 37 37 37 37>,
+                                                       /bits/ 8 <1 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 32 32 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <1 37 37 37 37 37 37 37 37 37 37 37 37>,
+                                                       /bits/ 8 <1 38 38 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <30 30 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <30 30 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <1 37 37 60 60 36 60 60 60 60 60>,
+                                                       /bits/ 8 <1 38 38 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 31 31 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <1 32 32 60 60 37 60 60 60 60 60>,
+                                                       /bits/ 8 <1 37 37 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b14 {
+                                               channels = <149 149>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <39 39 39 39 39 39 39 39>;
+                                               rates-mcs =
+                                                       /bits/ 8 <2 40 40 40 40 40 40 40 40 40 40>,
+                                                       /bits/ 8 <1 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <5 40 40 40 40 40 40 40 40 40 40 40 40>,
+                                                       /bits/ 8 <1 38 38 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <39 39 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <39 39 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <5 40 40 60 60 40 60 60 60 60 60>,
+                                                       /bits/ 8 <1 38 38 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <5 40 40 60 60 40 60 60 60 60 60>,
+                                                       /bits/ 8 <1 38 38 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b15 {
+                                               channels = <153 161>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <40 40 40 40 40 40 40 40>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <1 40 40 40 40 40 40 40 40 40 40>,
+                                                       /bits/ 8 <1 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 38 38 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <1 40 40 40 40 40 40 40 40 40 40 40 40>,
+                                                       /bits/ 8 <1 38 38 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <40 40 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <40 40 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 38 38 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <1 40 40 60 60 40 60 60 60 60 60>,
+                                                       /bits/ 8 <1 38 38 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 38 38 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <1 40 40 60 60 40 60 60 60 60 60>,
+                                                       /bits/ 8 <1 38 38 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b16 {
+                                               channels = <165 165>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <39 39 39 39 39 39 39 39>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <3 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 38 38 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <3 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <39 39 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <39 39 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 38 38 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <3 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 38 38 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <3 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b17 {
+                                               channels = <169 181>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <60 60 60 60 60 60 60 60>;
+                                               rates-mcs =
+                                                       /bits/ 8 <4 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                               };
+                       };
+
+                       r1 {
+                               regdomain = "FCC";
+
+                               txpower-2g {
+                                       b0 {
+                                               channels = <1 1>;
+                                               rates-cck =
+                                                       /bits/ 8 <40 40 40 40>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <36 36 36 36 36 36 36 36>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 34 34 34 34 34 34 34 34 34 34>,
+                                                       /bits/ 8 <1 33 33 33 33 33 33 33 33 33 33>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 34 34 34 34 34 34 34 34 34 34 34 34>,
+                                                       /bits/ 8 <1 33 33 33 33 33 33 33 33 33 33 33 33>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <40 40 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <36 36 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <36 36 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 34 34 60 60 34 60 60 60 60 60>,
+                                                       /bits/ 8 <1 33 33 60 60 33 60 60 60 60 60>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 34 34 60 60 34 60 60 60 60 60>,
+                                                       /bits/ 8 <1 33 33 60 60 33 60 60 60 60 60>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b1 {
+                                               channels = <2 2>;
+                                               rates-cck =
+                                                       /bits/ 8 <40 40 40 40>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <37 37 37 37 37 37 37 37>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 34 34 34 34 34 34 34 34 34 34>,
+                                                       /bits/ 8 <1 33 33 33 33 33 33 33 33 33 33>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 34 34 34 34 34 34 34 34 34 34 34 34>,
+                                                       /bits/ 8 <1 33 33 33 33 33 33 33 33 33 33 33 33>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <40 40 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <37 37 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <37 37 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 34 34 60 60 34 60 60 60 60 60>,
+                                                       /bits/ 8 <1 33 33 60 60 33 60 60 60 60 60>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 34 34 60 60 34 60 60 60 60 60>,
+                                                       /bits/ 8 <1 33 33 60 60 33 60 60 60 60 60>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b2 {
+                                               channels = <3 6>;
+                                               rates-cck =
+                                                       /bits/ 8 <40 40 40 40>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <40 40 40 40 40 40 40 40>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 40 40 40 40 40 40 40 40 40 40>,
+                                                       /bits/ 8 <1 33 33 33 33 33 33 33 33 33 33>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 40 40 40 40 40 40 40 40 40 40 40 40>,
+                                                       /bits/ 8 <1 33 33 33 33 33 33 33 33 33 33 33 33>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <40 40 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <40 40 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <40 40 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 40 40 60 60 40 60 60 60 60 60>,
+                                                       /bits/ 8 <1 33 33 60 60 33 60 60 60 60 60>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 40 40 60 60 40 60 60 60 60 60>,
+                                                       /bits/ 8 <1 33 33 60 60 33 60 60 60 60 60>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b3 {
+                                               channels = <7 9>;
+                                               rates-cck =
+                                                       /bits/ 8 <40 40 40 40>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <40 40 40 40 40 40 40 40>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 40 40 40 40 40 40 40 40 40 40>,
+                                                       /bits/ 8 <1 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 40 40 40 40 40 40 40 40 40 40 40 40>,
+                                                       /bits/ 8 <1 32 32 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <40 40 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <40 40 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <40 40 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 40 40 60 60 40 60 60 60 60 60>,
+                                                       /bits/ 8 <1 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 40 40 60 60 40 60 60 60 60 60>,
+                                                       /bits/ 8 <1 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b4 {
+                                               channels = <10 10>;
+                                               rates-cck =
+                                                       /bits/ 8 <40 40 40 40>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <38 38 38 38 38 38 38 38>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 36 36 36 36 36 36 36 36 36 36>,
+                                                       /bits/ 8 <1 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 36 36 36 36 36 36 36 36 36 36 36 36>,
+                                                       /bits/ 8 <1 32 32 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <40 40 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <38 38 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <38 38 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 36 36 60 60 36 60 60 60 60 60>,
+                                                       /bits/ 8 <1 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 36 36 60 60 36 60 60 60 60 60>,
+                                                       /bits/ 8 <1 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b5 {
+                                               channels = <11 11>;
+                                               rates-cck =
+                                                       /bits/ 8 <40 40 40 40>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <35 35 35 35 35 35 35 35>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 33 33 33 33 33 33 33 33 33 33>,
+                                                       /bits/ 8 <1 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 33 33 33 33 33 33 33 33 33 33 33 33>,
+                                                       /bits/ 8 <1 32 32 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <40 40 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <35 35 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <35 35 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 33 33 60 60 33 60 60 60 60 60>,
+                                                       /bits/ 8 <1 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 33 33 60 60 33 60 60 60 60 60>,
+                                                       /bits/ 8 <1 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b6 {
+                                               channels = <12 14>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <60 60 60 60 60 60 60 60>;
+                                               rates-mcs =
+                                                       /bits/ 8 <4 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                               };
+                               txpower-5g {
+                                       b0 {
+                                               channels = <184 196>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <60 60 60 60 60 60 60 60>;
+                                               rates-mcs =
+                                                       /bits/ 8 <4 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b1 {
+                                               channels = <8 16>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <60 60 60 60 60 60 60 60>;
+                                               rates-mcs =
+                                                       /bits/ 8 <4 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b2 {
+                                               channels = <36 36>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <38 38 38 38 38 38 38 38>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 37 37 37 37 37 37 37 37 37 37>,
+                                                       /bits/ 8 <1 34 34 34 34 34 34 34 34 34 34>,
+                                                       /bits/ 8 <1 28 28 28 28 28 28 28 28 28 28>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 37 37 37 37 37 37 37 37 37 37 37 37>,
+                                                       /bits/ 8 <1 34 34 34 34 34 34 34 34 34 34 34 34>,
+                                                       /bits/ 8 <1 28 28 28 28 28 28 28 28 28 28 28 28>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <38 38 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <38 38 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 37 37 60 60 37 60 60 60 60 60>,
+                                                       /bits/ 8 <1 34 34 60 60 34 60 60 60 60 60>,
+                                                       /bits/ 8 <1 28 28 60 60 28 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 37 37 60 60 37 60 60 60 60 60>,
+                                                       /bits/ 8 <1 34 34 60 60 34 60 60 60 60 60>,
+                                                       /bits/ 8 <1 28 28 60 60 28 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b3 {
+                                               channels = <40 40>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <40 40 40 40 40 40 40 40>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 39 39 39 39 39 39 39 39 39 39>,
+                                                       /bits/ 8 <1 34 34 34 34 34 34 34 34 34 34>,
+                                                       /bits/ 8 <1 28 28 28 28 28 28 28 28 28 28>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 39 39 39 39 39 39 39 39 39 39 39 39>,
+                                                       /bits/ 8 <1 34 34 34 34 34 34 34 34 34 34 34 34>,
+                                                       /bits/ 8 <1 28 28 28 28 28 28 28 28 28 28 28 28>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <40 40 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <40 40 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 39 39 60 60 39 60 60 60 60 60>,
+                                                       /bits/ 8 <1 34 34 60 60 34 60 60 60 60 60>,
+                                                       /bits/ 8 <1 28 28 60 60 28 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 39 39 60 60 39 60 60 60 60 60>,
+                                                       /bits/ 8 <1 34 34 60 60 34 60 60 60 60 60>,
+                                                       /bits/ 8 <1 28 28 60 60 28 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b4 {
+                                               channels = <44 44>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <40 40 40 40 40 40 40 40>;
+                                               rates-mcs =
+                                                       /bits/ 8 <2 39 39 39 39 39 39 39 39 39 39>,
+                                                       /bits/ 8 <1 28 28 28 28 28 28 28 28 28 28>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <5 39 39 39 39 39 39 39 39 39 39 39 39>,
+                                                       /bits/ 8 <1 28 28 28 28 28 28 28 28 28 28 28 28>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <40 40 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <40 40 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <5 39 39 60 60 39 60 60 60 60 60>,
+                                                       /bits/ 8 <1 28 28 60 60 28 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <5 39 39 60 60 39 60 60 60 60 60>,
+                                                       /bits/ 8 <1 28 28 60 60 28 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b5 {
+                                               channels = <48 48>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <40 40 40 40 40 40 40 40>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 40 40 40 40 40 40 40 40 40 40>,
+                                                       /bits/ 8 <1 39 39 39 39 39 39 39 39 39 39>,
+                                                       /bits/ 8 <1 28 28 28 28 28 28 28 28 28 28>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 40 40 40 40 40 40 40 40 40 40 40 40>,
+                                                       /bits/ 8 <1 39 39 39 39 39 39 39 39 39 39 39 39>,
+                                                       /bits/ 8 <1 28 28 28 28 28 28 28 28 28 28 28 28>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <40 40 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <40 40 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 40 40 60 60 40 60 60 60 60 60>,
+                                                       /bits/ 8 <1 39 39 60 60 39 60 60 60 60 60>,
+                                                       /bits/ 8 <1 28 28 60 60 28 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 40 40 60 60 40 60 60 60 60 60>,
+                                                       /bits/ 8 <1 39 39 60 60 39 60 60 60 60 60>,
+                                                       /bits/ 8 <1 28 28 60 60 28 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b6 {
+                                               channels = <52 52>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <31 31 31 31 31 31 31 31>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 33 33 33 33 33 33 33 33 33 33>,
+                                                       /bits/ 8 <1 37 37 37 37 37 37 37 37 37 37>,
+                                                       /bits/ 8 <1 28 28 28 28 28 28 28 28 28 28>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 33 33 33 33 33 33 33 33 33 33 33 33>,
+                                                       /bits/ 8 <1 37 37 37 37 37 37 37 37 37 37 37 37>,
+                                                       /bits/ 8 <1 28 28 28 28 28 28 28 28 28 28 28 28>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <31 31 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <31 31 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 33 33 60 60 33 60 60 60 60 60>,
+                                                       /bits/ 8 <1 37 37 60 60 37 60 60 60 60 60>,
+                                                       /bits/ 8 <1 28 28 60 60 28 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 32 32 60 60 33 60 60 60 60 60>,
+                                                       /bits/ 8 <1 31 31 60 60 37 60 60 60 60 60>,
+                                                       /bits/ 8 <1 28 28 60 60 28 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b7 {
+                                               channels = <56 56>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <31 31 31 31 31 31 31 31>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 33 33 33 33 33 33 33 33 33 33>,
+                                                       /bits/ 8 <1 37 37 37 37 37 37 37 37 37 37>,
+                                                       /bits/ 8 <1 28 28 28 28 28 28 28 28 28 28>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 33 33 33 33 33 33 33 33 33 33 33 33>,
+                                                       /bits/ 8 <1 37 37 37 37 37 37 37 37 37 37 37 37>,
+                                                       /bits/ 8 <1 28 28 28 28 28 28 28 28 28 28 28 28>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <31 31 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <31 31 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 33 33 60 60 33 60 60 60 60 60>,
+                                                       /bits/ 8 <1 37 37 60 60 37 60 60 60 60 60>,
+                                                       /bits/ 8 <1 28 28 60 60 28 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 31 31 60 60 33 60 60 60 60 60>,
+                                                       /bits/ 8 <1 31 31 60 60 37 60 60 60 60 60>,
+                                                       /bits/ 8 <1 28 28 60 60 28 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b8 {
+                                               channels = <60 64>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <31 31 31 31 31 31 31 31>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 33 33 33 33 33 33 33 33 33 33>,
+                                                       /bits/ 8 <1 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <1 28 28 28 28 28 28 28 28 28 28>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 33 33 33 33 33 33 33 33 33 33 33 33>,
+                                                       /bits/ 8 <1 32 32 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <1 28 28 28 28 28 28 28 28 28 28 28 28>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <31 31 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <31 31 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 33 33 60 60 33 60 60 60 60 60>,
+                                                       /bits/ 8 <1 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <1 28 28 60 60 28 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 31 31 60 60 33 60 60 60 60 60>,
+                                                       /bits/ 8 <1 31 31 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <1 28 28 60 60 28 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b9 {
+                                               channels = <68 96>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <60 60 60 60 60 60 60 60>;
+                                               rates-mcs =
+                                                       /bits/ 8 <4 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b10 {
+                                               channels = <100 100>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <32 32 32 32 32 32 32 32>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 33 33 33 33 33 33 33 33 33 33>,
+                                                       /bits/ 8 <2 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 33 33 33 33 33 33 33 33 33 33 33 33>,
+                                                       /bits/ 8 <2 32 32 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <32 32 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <32 32 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 33 33 60 60 33 60 60 60 60 60>,
+                                                       /bits/ 8 <2 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 32 32 60 60 33 60 60 60 60 60>,
+                                                       /bits/ 8 <2 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b11 {
+                                               channels = <104 104>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <31 31 31 31 31 31 31 31>;
+                                               rates-mcs =
+                                                       /bits/ 8 <3 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <6 32 32 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <31 31 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <31 31 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <6 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <6 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b12 {
+                                               channels = <108 112>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <31 31 31 31 31 31 31 31>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <1 37 37 37 37 37 37 37 37 37 37>,
+                                                       /bits/ 8 <1 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 32 32 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <1 37 37 37 37 37 37 37 37 37 37 37 37>,
+                                                       /bits/ 8 <1 32 32 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <31 31 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <31 31 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <1 37 37 60 60 37 60 60 60 60 60>,
+                                                       /bits/ 8 <1 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <1 32 32 60 60 37 60 60 60 60 60>,
+                                                       /bits/ 8 <1 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b13 {
+                                               channels = <116 128>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <31 31 31 31 31 31 31 31>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <2 37 37 37 37 37 37 37 37 37 37>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 32 32 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <2 37 37 37 37 37 37 37 37 37 37 37 37>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <31 31 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <31 31 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <2 37 37 60 60 37 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <2 32 32 60 60 37 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b14 {
+                                               channels = <132 136>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <31 31 31 31 31 31 31 31>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <1 30 30 30 30 30 30 30 30 30 30>,
+                                                       /bits/ 8 <1 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 32 32 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <1 30 30 30 30 30 30 30 30 30 30 30 30>,
+                                                       /bits/ 8 <1 38 38 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <31 31 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <31 31 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <1 30 30 60 60 30 60 60 60 60 60>,
+                                                       /bits/ 8 <1 38 38 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <1 30 30 60 60 30 60 60 60 60 60>,
+                                                       /bits/ 8 <1 37 37 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b15 {
+                                               channels = <140 140>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <29 29 29 29 29 29 29 29>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 30 30 30 30 30 30 30 30 30 30>,
+                                                       /bits/ 8 <1 36 36 36 36 36 36 36 36 36 36>,
+                                                       /bits/ 8 <1 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 30 30 30 30 30 30 30 30 30 30 30 30>,
+                                                       /bits/ 8 <1 36 36 36 36 36 36 36 36 36 36 36 36>,
+                                                       /bits/ 8 <1 38 38 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <29 29 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <29 29 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 30 30 60 60 30 60 60 60 60 60>,
+                                                       /bits/ 8 <1 36 36 60 60 36 60 60 60 60 60>,
+                                                       /bits/ 8 <1 38 38 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 32 32 60 60 30 60 60 60 60 60>,
+                                                       /bits/ 8 <1 32 32 60 60 36 60 60 60 60 60>,
+                                                       /bits/ 8 <1 37 37 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b16 {
+                                               channels = <144 144>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <30 30 30 30 30 30 30 30>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <1 36 36 36 36 36 36 36 36 36 36>,
+                                                       /bits/ 8 <1 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 32 32 32 32 32 32 32 32 32 32 32 32>,
+                                                       /bits/ 8 <1 36 36 36 36 36 36 36 36 36 36 36 36>,
+                                                       /bits/ 8 <1 38 38 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <30 30 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <30 30 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <1 36 36 60 60 36 60 60 60 60 60>,
+                                                       /bits/ 8 <1 38 38 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 32 32 60 60 32 60 60 60 60 60>,
+                                                       /bits/ 8 <1 32 32 60 60 36 60 60 60 60 60>,
+                                                       /bits/ 8 <1 37 37 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b17 {
+                                               channels = <149 149>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <39 39 39 39 39 39 39 39>;
+                                               rates-mcs =
+                                                       /bits/ 8 <2 40 40 40 40 40 40 40 40 40 40>,
+                                                       /bits/ 8 <1 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <5 40 40 40 40 40 40 40 40 40 40 40 40>,
+                                                       /bits/ 8 <1 38 38 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <39 39 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <39 39 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <5 40 40 60 60 40 60 60 60 60 60>,
+                                                       /bits/ 8 <1 38 38 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <5 40 40 60 60 40 60 60 60 60 60>,
+                                                       /bits/ 8 <1 38 38 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b18 {
+                                               channels = <153 161>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <40 40 38 38 38 38 37 36>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <1 40 40 40 40 40 40 40 40 40 40>,
+                                                       /bits/ 8 <1 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 38 38 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <1 40 40 40 40 40 40 40 40 40 40 40 40>,
+                                                       /bits/ 8 <1 38 38 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <40 40 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <40 40 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 38 38 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <1 40 40 60 60 40 60 60 60 60 60>,
+                                                       /bits/ 8 <1 38 38 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 38 38 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <1 40 40 60 60 40 60 60 60 60 60>,
+                                                       /bits/ 8 <1 38 38 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b19 {
+                                               channels = <165 165>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <39 39 39 39 39 39 39 39>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <3 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 38 38 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <3 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <39 39 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <39 39 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 38 38 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <3 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 38 38 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <3 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b20 {
+                                               channels = <169 181>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <60 60 60 60 60 60 60 60>;
+                                               rates-mcs =
+                                                       /bits/ 8 <4 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                               };
+                       };
+
+                       r2 {
+                               regdomain = "ETSI";
+
+                               txpower-2g {
+                                       b0 {
+                                               channels = <1 1>;
+                                               rates-cck =
+                                                       /bits/ 8 <24 24 24 24>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <26 26 26 26 26 26 26 26>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 26 26 26 26 26 26 26 26 26 26>,
+                                                       /bits/ 8 <1 25 25 25 25 25 25 25 25 25 25>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 26 26 26 26 26 26 26 26 26 26 26 26>,
+                                                       /bits/ 8 <1 25 25 25 25 25 25 25 25 25 25 25 25>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <24 24 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <26 26 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <20 20 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <1 26 26 60 60 26 60 60 60 60 60>,
+                                                       /bits/ 8 <1 26 26 60 60 25 60 60 60 60 60>,
+                                                       /bits/ 8 <2 26 26 60 60 26 60 60 60 60 60>,
+                                                       /bits/ 8 <1 25 25 60 60 25 60 60 60 60 60>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <5 19 19 60 60 25 60 60 60 60 60>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b1 {
+                                               channels = <2 12>;
+                                               rates-cck =
+                                                       /bits/ 8 <24 24 24 24>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <25 25 25 25 25 25 25 25>;
+                                               rates-mcs =
+                                                       /bits/ 8 <2 25 25 25 25 25 25 25 25 25 25>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <5 25 25 25 25 25 25 25 25 25 25 25 25>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <24 24 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <25 25 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <19 19 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <5 25 25 60 60 25 60 60 60 60 60>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 20 20 60 60 26 60 60 60 60 60>,
+                                                       /bits/ 8 <1 19 19 60 60 25 60 60 60 60 60>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b2 {
+                                               channels = <13 13>;
+                                               rates-cck =
+                                                       /bits/ 8 <24 24 24 24>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <25 25 25 25 25 25 25 25>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 26 26 26 26 26 26 26 26 26 26>,
+                                                       /bits/ 8 <1 25 25 25 25 25 25 25 25 25 25>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 26 26 26 26 26 26 26 26 26 26 26 26>,
+                                                       /bits/ 8 <1 25 25 25 25 25 25 25 25 25 25 25 25>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <24 24 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <25 25 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <19 19 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <1 26 26 60 60 26 60 60 60 60 60>,
+                                                       /bits/ 8 <1 26 26 60 60 25 60 60 60 60 60>,
+                                                       /bits/ 8 <2 26 26 60 60 26 60 60 60 60 60>,
+                                                       /bits/ 8 <1 25 25 60 60 25 60 60 60 60 60>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 20 20 60 60 26 60 60 60 60 60>,
+                                                       /bits/ 8 <1 19 19 60 60 25 60 60 60 60 60>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b3 {
+                                               channels = <14 14>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <60 60 60 60 60 60 60 60>;
+                                               rates-mcs =
+                                                       /bits/ 8 <4 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                               };
+                               txpower-5g {
+                                       b0 {
+                                               channels = <184 196>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <60 60 60 60 60 60 60 60>;
+                                               rates-mcs =
+                                                       /bits/ 8 <4 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b1 {
+                                               channels = <8 16>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <60 60 60 60 60 60 60 60>;
+                                               rates-mcs =
+                                                       /bits/ 8 <4 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b2 {
+                                               channels = <36 48>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <24 24 24 24 24 24 24 24>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 24 24 24 24 24 24 24 24 24 24>,
+                                                       /bits/ 8 <2 25 25 25 25 25 25 25 25 25 25>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 24 24 24 24 24 24 24 24 24 24 24 24>,
+                                                       /bits/ 8 <2 25 25 25 25 25 25 25 25 25 25 25 25>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <24 24 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <18 18 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 24 24 60 60 24 60 60 60 60 60>,
+                                                       /bits/ 8 <2 25 25 60 60 25 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <6 19 19 60 60 25 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b3 {
+                                               channels = <52 64>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <23 23 25 25 25 25 25 25>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 24 24 24 24 24 24 24 24 24 24>,
+                                                       /bits/ 8 <1 25 25 25 25 25 25 25 25 25 25>,
+                                                       /bits/ 8 <1 24 24 24 24 24 24 24 24 24 24>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 24 24 24 24 24 24 24 24 24 24 24 24>,
+                                                       /bits/ 8 <1 25 25 25 25 25 25 25 25 25 25 25 25>,
+                                                       /bits/ 8 <1 24 24 24 24 24 24 24 24 24 24 24 24>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <23 23 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <17 17 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 24 24 60 60 24 60 60 60 60 60>,
+                                                       /bits/ 8 <1 25 25 60 60 25 60 60 60 60 60>,
+                                                       /bits/ 8 <1 24 24 60 60 24 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 18 18 60 60 24 60 60 60 60 60>,
+                                                       /bits/ 8 <1 19 19 60 60 25 60 60 60 60 60>,
+                                                       /bits/ 8 <1 18 18 60 60 24 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b4 {
+                                               channels = <68 96>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <60 60 60 60 60 60 60 60>;
+                                               rates-mcs =
+                                                       /bits/ 8 <4 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b5 {
+                                               channels = <100 128>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <38 38 38 38 38 38 38 38>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <1 39 39 39 39 39 39 39 39 39 39>,
+                                                       /bits/ 8 <1 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 38 38 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <1 39 39 39 39 39 39 39 39 39 39 39 39>,
+                                                       /bits/ 8 <1 38 38 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <38 38 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <32 32 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 38 38 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <1 39 39 60 60 39 60 60 60 60 60>,
+                                                       /bits/ 8 <1 38 38 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 33 33 60 60 39 60 60 60 60 60>,
+                                                       /bits/ 8 <2 32 32 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b6 {
+                                               channels = <132 136>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <38 38 38 38 38 38 38 38>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <1 39 39 39 39 39 39 39 39 39 39>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 38 38 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <1 39 39 39 39 39 39 39 39 39 39 39 39>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <38 38 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <32 32 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 38 38 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <1 39 39 60 60 39 60 60 60 60 60>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 33 33 60 60 39 60 60 60 60 60>,
+                                                       /bits/ 8 <1 32 32 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <2 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b7 {
+                                               channels = <140 140>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <37 37 37 37 37 37 37 37>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <3 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 38 38 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <3 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <37 37 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <31 31 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 38 38 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <3 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 33 33 60 60 39 60 60 60 60 60>,
+                                                       /bits/ 8 <3 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b8 {
+                                               channels = <144 144>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <60 60 60 60 60 60 60 60>;
+                                               rates-mcs =
+                                                       /bits/ 8 <4 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b9 {
+                                               channels = <149 149>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <39 39 39 39 39 39 39 39>;
+                                               rates-mcs =
+                                                       /bits/ 8 <2 40 40 40 40 40 40 40 40 40 40>,
+                                                       /bits/ 8 <1 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <5 40 40 40 40 40 40 40 40 40 40 40 40>,
+                                                       /bits/ 8 <1 38 38 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <39 39 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <39 39 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <5 40 40 60 60 40 60 60 60 60 60>,
+                                                       /bits/ 8 <1 38 38 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <5 40 40 60 60 40 60 60 60 60 60>,
+                                                       /bits/ 8 <1 38 38 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b10 {
+                                               channels = <153 161>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <40 40 38 38 38 38 37 36>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <1 40 40 40 40 40 40 40 40 40 40>,
+                                                       /bits/ 8 <1 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 38 38 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <1 40 40 40 40 40 40 40 40 40 40 40 40>,
+                                                       /bits/ 8 <1 38 38 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <40 40 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <40 40 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 38 38 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <1 40 40 60 60 40 60 60 60 60 60>,
+                                                       /bits/ 8 <1 38 38 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 38 38 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <1 40 40 60 60 40 60 60 60 60 60>,
+                                                       /bits/ 8 <1 38 38 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <1 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b11 {
+                                               channels = <165 165>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <39 39 39 39 39 39 39 39>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <3 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 38 38 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <3 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <39 39 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <39 39 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <4 38 38 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <3 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <4 38 38 60 60 38 60 60 60 60 60>,
+                                                       /bits/ 8 <3 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b12 {
+                                               channels = <169 169>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <39 39 39 39 39 39 39 39>;
+                                               rates-mcs =
+                                                       /bits/ 8 <1 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <3 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <4 38 38 38 38 38 38 38 38 38 38 38 38>,
+                                                       /bits/ 8 <3 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                                       b13 {
+                                               channels = <173 181>;
+                                               rates-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               rates-ofdm =
+                                                       /bits/ 8 <60 60 60 60 60 60 60 60>;
+                                               rates-mcs =
+                                                       /bits/ 8 <4 60 60 60 60 60 60 60 60 60 60>;
+                                               rates-ru =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-cck =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ofdm-bf =
+                                                       /bits/ 8 <60 60 60 60>;
+                                               paths-ru =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60>;
+                                               paths-ru-bf =
+                                                       /bits/ 8 <7 60 60 60 60 60 60 60 60 60 60>;
+                                       };
+                               };
+                       };
+               };
+       };
+};
+
+&xhci {
+       status = "okay";
+};
+
+&ethernet {
+       pinctrl-0 = <&mdio_pins>;
+};
+
+&gmac0 {
+       nvmem-cells = <&macaddr_factory_3fff4 0>;
+       nvmem-cell-names = "mac-address";
+       label = "dsa";
+};
+
+&switch0 {
+       ports {
+               port@4 {
+                       status = "okay";
+                       label = "lan";
+               };
+       };
+};
+
+&state_default {
+       gpio {
+               /* for LEDs + Button + watchdog */
+               groups = "uart3", "jtag", "wdt", "rgmii2";
+               function = "gpio";
+       };
+};
index 744d8c6279559e8e912e4e7facc61fd22eae9d30..b8a7d2d220875639819b57f756c351f0757376ba 100644 (file)
@@ -2528,6 +2528,21 @@ define Device/planex_vr500
 endef
 TARGET_DEVICES += planex_vr500
 
+define Device/plasmacloud_pax1800-lite
+  $(Device/nand)
+  IMAGE_SIZE := 60512k
+  DEVICE_VENDOR := Plasma Cloud
+  DEVICE_MODEL := PAX1800-Lite
+  DEVICE_DTS_CONFIG := config@plasmacloud.pax1800-lite
+  DEVICE_PACKAGES := kmod-mt7915-firmware kmod-usb3 kmod-hwmon-lm75
+  KERNEL_IN_UBI := 1
+  IMAGES += factory.bin
+  KERNEL := kernel-bin | lzma | fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb | pad-to $$(BLOCKSIZE)
+  IMAGE/factory.bin := append-rootfs | pad-to 1k | dualboot-datachk-nand-image ce_type=PAX1800-Lite
+  IMAGE/sysupgrade.bin := append-rootfs | pad-to 1k | sysupgrade-tar rootfs=$$$$@ | append-metadata
+endef
+TARGET_DEVICES += plasmacloud_pax1800-lite
+
 define Device/raisecom_msg1500-x-00
   $(Device/nand)
   $(Device/uimage-lzma-loader)
index b55eb892e8c20862909f7e39dfb70c849a45d752..81fea421c79b589a8616e945b0e953b7f82e00fc 100644 (file)
@@ -51,6 +51,7 @@ ramips_setup_interfaces()
        netgear,eax12|\
        netgear,ex6150|\
        netgear,wax214v2|\
+       plasmacloud,pax1800-lite|\
        sercomm,na502|\
        sercomm,na502s|\
        thunder,timecloud|\
diff --git a/target/linux/ramips/mt7621/base-files/lib/upgrade/dualboot_datachk.sh b/target/linux/ramips/mt7621/base-files/lib/upgrade/dualboot_datachk.sh
new file mode 100644 (file)
index 0000000..d57c118
--- /dev/null
@@ -0,0 +1,67 @@
+# The U-Boot loader with the datachk patchset for dualbooting requires image
+# sizes and checksums to be provided in the U-Boot environment.
+# The devices come with 2 main partitions - while one is active
+# sysupgrade will flash the other. The boot order is changed to boot the
+# newly flashed partition. If the new partition can't be booted due to
+# upgrade failures the previously used partition is loaded.
+
+platform_do_upgrade_dualboot_datachk() {
+       local next_boot_part=1
+       local tar_file="$1"
+       local bootseq
+
+       local setenv_script="/tmp/fw_env_upgrade"
+
+       if [ "$(grep 'ubi.mtd=firmware1' /proc/cmdline)" ];  then
+               next_boot_part=2
+               bootseq="2,1"
+       else
+               next_boot_part=1
+               bootseq="1,2"
+       fi
+
+       local board_dir="$(tar tf "${tar_file}" | grep -m 1 '^sysupgrade-.*/$')"
+       board_dir="${board_dir%/}"
+
+       local kernel_length="$(tar xf "${tar_file}" "${board_dir}/kernel" -O | wc -c)"
+       local rootfs_length="$(tar xf "${tar_file}" "${board_dir}/root" -O | wc -c)"
+
+       local kernel_md5="$(tar xf "${tar_file}" "${board_dir}/kernel" -O | md5sum)"
+       kernel_md5="${kernel_md5%% *}"
+
+       local rootfs_md5="$(tar xf "${tar_file}" "${board_dir}/root" -O | md5sum)"
+       rootfs_md5="${rootfs_md5%% *}"
+
+       CI_UBIPART="firmware${next_boot_part}"
+       CI_KERNPART="kernel"
+       CI_ROOTPART="rootfs"
+
+       nand_upgrade_prepare_ubi "${rootfs_length}" "squashfs" "$kernel_length" "0"
+
+       local ubidev="$(nand_find_ubi "${CI_UBIPART}")"
+
+       local kern_ubivol="$(nand_find_volume "${ubidev}" "${CI_KERNPART}")"
+       tar xf "${tar_file}" "${board_dir}/kernel" -O | \
+               ubiupdatevol "/dev/${kern_ubivol}" -s "${kernel_length}" -
+
+       local root_ubivol="$(nand_find_volume "${ubidev}" "${CI_ROOTPART}")"
+       tar xf "${tar_file}" "${board_dir}/root" -O | \
+               ubiupdatevol "/dev/${root_ubivol}" -s "${rootfs_length}" -
+
+       [ -f "${UPGRADE_BACKUP}" ] && nand_restore_config "${UPGRADE_BACKUP}"
+
+       # write new new uboot-env
+       printf "bootseq ${bootseq}\n" > "${setenv_script}"
+
+       printf "kernel_%i_size 0x%08x\n" "${next_boot_part}" "${kernel_length}" >> "${setenv_script}"
+       printf "kernel_%i_checksum %s\n" "${next_boot_part}" "${kernel_md5}" >> "${setenv_script}"
+
+       printf "rootfs_%i_size 0x%08x\n" "${next_boot_part}" "${rootfs_length}" >> "${setenv_script}"
+       printf "rootfs_%i_checksum %s\n" "${next_boot_part}" "${rootfs_md5}" >> "${setenv_script}"
+
+       mkdir -p /var/lock
+       fw_setenv -s "${setenv_script}" || {
+               echo "failed to update U-Boot environment"
+               return 1
+       }
+}
index a1f14f9d78374fa455f1222dc86331617debdd1a..679b2c0f01a860a0c5b73c3920b8cc4d01722a86 100755 (executable)
@@ -185,6 +185,9 @@ platform_do_upgrade() {
                iodata_mstc_set_flag "bootnum" "persist" "0x4" "1,2" "1"
                nand_do_upgrade "$1"
                ;;
+       plasmacloud,pax1800-lite)
+               platform_do_upgrade_dualboot_datachk "$1"
+               ;;
        tplink,er605-v2)
                echo "Upgrading tplink,er605-v2"
                CI_UBIPART="firmware"
index fd6f93afca7a5543efaf6cc5b7014360159909fe..d5ed778593afcad2ee80fc4be1c7504ef7d5386a 100644 (file)
@@ -164,6 +164,7 @@ CONFIG_MTD_PHYSMAP=y
 CONFIG_MTD_RAW_NAND=y
 CONFIG_MTD_ROUTERBOOT_PARTS=y
 CONFIG_MTD_SERCOMM_PARTS=y
+CONFIG_MTD_SPI_NAND=y
 CONFIG_MTD_SPI_NOR=y
 CONFIG_MTD_SPI_NOR_USE_VARIABLE_ERASE=y
 CONFIG_MTD_SPLIT_FIT_FW=y