Hi,

> 
> I've tested it, but doesn't work.

Okay, it was worth a try. Maybe it's a similar driver issue on ramips like that 
one we had about one year ago, where a similar case was not "picked up" from 
10_fix_wifi_mac for a single radio ...

Best

Adrian

> 
> I made the following change,
> 
> ```
> 
> diff --git
> a/target/linux/ramips/mt7621/base-
> files/etc/hotplug.d/ieee80211/10_fix_wifi_mac
> b/target/linux/ramips/mt7621/base-
> files/etc/hotplug.d/ieee80211/10_fix_wifi_mac
> index b7a41f038c..f0093d4337 100644
> ---
> a/target/linux/ramips/mt7621/base-
> files/etc/hotplug.d/ieee80211/10_fix_wifi_mac
> +++
> b/target/linux/ramips/mt7621/base-
> files/etc/hotplug.d/ieee80211/10_fix_wifi_mac
> @@ -10,6 +10,14 @@ PHYNBR=${DEVPATH##*/phy}
>   board=$(board_name)
> 
>   case "$board" in
> +       elecom,wrc-1167gs2-b)
> +               [ "$PHYNBR" = "1" ] && \
> +                       $(mtd_get_mac_binary factory 0x4) >
> /sys${DEVPATH}/macaddress
> +               ;;
> +       elecom,wrc-1167gst2)
> +               [ "$PHYNBR" = "1" ] && \
> +                       macaddr_add $(mtd_get_mac_binary factory
> 0xe006) 2 > /sys${DEVPATH}/macaddress
> +               ;;
>          linksys,ea7300-v1|\
>          linksys,ea7300-v2|\
>          linksys,ea7500-v2)
> 
> ```
> 
> but iwinfo still reports the MAC address generated from phy0 by mt76
> 
> driver.
> 
> ```
> 
> (WRC-1167GS2-B)
> 
> root@OpenWrt:/# iwinfo
> wlan0     ESSID: unknown
>            Access Point: 04:AB:18:58:2F:15
>            Mode: Client  Channel: unknown (unknown)
>            Tx-Power: 3 dBm  Link Quality: unknown/70
>            Signal: unknown  Noise: unknown
>            Bit Rate: unknown
>            Encryption: unknown
>            Type: nl80211  HW Mode(s): 802.11bgnac
>            Hardware: 14C3:7615 7615:14C3 [MediaTek MT7615E]
>            TX power offset: none
>            Frequency offset: none
>            Supports VAPs: yes  PHY name: phy0
> 
> wlan1     ESSID: unknown
>            Access Point: 86:AB:18:58:2F:15
>            Mode: Client  Channel: unknown (unknown)
>            Tx-Power: 3 dBm  Link Quality: unknown/70
>            Signal: unknown  Noise: unknown
>            Bit Rate: unknown
>            Encryption: unknown
>            Type: nl80211  HW Mode(s): 802.11nac
>            Hardware: 14C3:7615 7615:14C3 [MediaTek MT7615E]
>            TX power offset: none
>            Frequency offset: none
>            Supports VAPs: yes  PHY name: phy1
> 
> root@OpenWrt:/# cat /sys/class/ieee80211/phy1/macaddress
> 86:ab:18:58:2f:15
> 
> ```
> 
> >> - Wi-Fi band on primary phy (2.4GHz) cannot be limitted by specifying
> >>    ieee80211-freq-limit
> >>    (fail to register secondary phy due to error)
> >> - mtd-mac-address in the wifi node is required for using
> >>    mtd-mac-address-increment
> >>
> >> Signed-off-by: INAGAKI Hiroshi <musashino.o...@gmail.com>
> >> ---
> >>   .../dts/mt7621_elecom_wrc-1167gs2-b.dts       |  57 ++++++
> >>   .../dts/mt7621_elecom_wrc-1167gsxx.dtsi       | 179
> ++++++++++++++++++
> >>   target/linux/ramips/image/mt7621.mk           |   8 +
> >>   3 files changed, 244 insertions(+)
> >>   create mode 100644
> >> target/linux/ramips/dts/mt7621_elecom_wrc-1167gs2-
> >> b.dts
> >>   create mode 100644 target/linux/ramips/dts/mt7621_elecom_wrc-
> >> 1167gsxx.dtsi
> >>
> >> diff --git a/target/linux/ramips/dts/mt7621_elecom_wrc-1167gs2-b.dts
> >> b/target/linux/ramips/dts/mt7621_elecom_wrc-1167gs2-b.dts
> >> new file mode 100644
> >> index 0000000000..af0c580c64
> >> --- /dev/null
> >> +++ b/target/linux/ramips/dts/mt7621_elecom_wrc-1167gs2-b.dts
> >> @@ -0,0 +1,57 @@
> >> +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
> >> +
> >> +#include "mt7621_elecom_wrc-1167gsxx.dtsi"
> >> +
> >> +/ {
> >> +  compatible = "elecom,wrc-1167gs2-b", "mediatek,mt7621-soc";
> >> +  model = "ELECOM WRC-1167GS2-B";
> >> +
> >> +  aliases {
> >> +          label-mac-device = &wan;
> >> +  };
> >> +};
> >> +
> >> +&gmac0 {
> >> +  mtd-mac-address = <&factory 0xfff4>; };
> >> +
> >> +&wan {
> >> +  mtd-mac-address = <&factory 0xfffa>; };
> >> +
> >> +&partitions {
> >> +  partition@50000 {
> >> +          compatible = "denx,uimage";
> >> +          label = "firmware";
> >> +          reg = <0x50000 0xb00000>;
> >> +  };
> >> +
> >> +  partition@b50000 {
> >> +          label = "tm_pattern";
> >> +          reg = <0xb50000 0x380000>;
> >> +          read-only;
> >> +  };
> >> +
> >> +  partition@ed0000 {
> >> +          label = "tm_key";
> >> +          reg = <0xed0000 0x80000>;
> >> +          read-only;
> >> +  };
> >> +
> >> +  partition@f50000 {
> >> +          label = "nvram";
> >> +          reg = <0xf50000 0x30000>;
> >> +          read-only;
> >> +  };
> >> +
> >> +  partition@f80000 {
> >> +          label = "user_data";
> >> +          reg = <0xf80000 0x80000>;
> >> +          read-only;
> >> +  };
> >> +};
> >> +
> >> +&wifi {
> >> +  mtd-mac-address = <&factory 0x4>;
> >> +  mtd-mac-address-increment = <(-1)>; };
> >> diff --git a/target/linux/ramips/dts/mt7621_elecom_wrc-1167gsxx.dtsi
> >> b/target/linux/ramips/dts/mt7621_elecom_wrc-1167gsxx.dtsi
> >> new file mode 100644
> >> index 0000000000..a13ddc963f
> >> --- /dev/null
> >> +++ b/target/linux/ramips/dts/mt7621_elecom_wrc-1167gsxx.dtsi
> >> @@ -0,0 +1,179 @@
> >> +// 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>
> >> +
> >> +/ {
> >> +  aliases {
> >> +          led-boot = &led_power_green;
> >> +          led-failsafe = &led_power_green;
> >> +          led-running = &led_power_green;
> >> +          led-upgrade = &led_power_green;
> >> +  };
> >> +
> >> +  leds {
> >> +          compatible = "gpio-leds";
> >> +
> >> +          wlan2g {
> >> +                  label = "white:wlan2g";
> >> +                  gpios = <&gpio 3 GPIO_ACTIVE_LOW>;
> >> +          };
> >> +
> >> +          wlan5g {
> >> +                  label = "white:wlan5g";
> >> +                  gpios = <&gpio 4 GPIO_ACTIVE_LOW>;
> >> +          };
> >> +
> >> +          led_power_green: power_green {
> >> +                  label = "green:power";
> >> +                  gpios = <&gpio 7 GPIO_ACTIVE_HIGH>;
> >> +          };
> >> +
> >> +          power_blue {
> >> +                  label = "blue:power";
> >> +                  gpios = <&gpio 8 GPIO_ACTIVE_HIGH>;
> >> +          };
> >> +
> >> +          wps {
> >> +                  label = "red:wps";
> >> +                  gpios = <&gpio 15 GPIO_ACTIVE_HIGH>;
> >> +          };
> >> +
> >> +          power_red {
> >> +                  label = "red:power";
> >> +                  gpios = <&gpio 16 GPIO_ACTIVE_HIGH>;
> >> +          };
> >> +  };
> >> +
> >> +  keys {
> >> +          compatible = "gpio-keys";
> >> +
> >> +          reset {
> >> +                  label = "reset";
> >> +                  gpios = <&gpio 13 GPIO_ACTIVE_LOW>;
> >> +                  linux,code = <KEY_RESTART>;
> >> +          };
> >> +
> >> +          wps {
> >> +                  label = "wps";
> >> +                  gpios = <&gpio 18 GPIO_ACTIVE_LOW>;
> >> +                  linux,code = <KEY_WPS_BUTTON>;
> >> +          };
> >> +
> >> +          client {
> >> +                  label = "client";
> >> +                  gpios = <&gpio 41 GPIO_ACTIVE_LOW>;
> >> +                  linux,code = <BTN_0>;
> >> +                  linux,input-type = <EV_SW>;
> >> +          };
> >> +
> >> +          ap {
> >> +                  label = "ap";
> >> +                  gpios = <&gpio 42 GPIO_ACTIVE_LOW>;
> >> +                  linux,code = <BTN_0>;
> >> +                  linux,input-type = <EV_SW>;
> >> +          };
> >> +
> >> +          extender {
> >> +                  label = "extender";
> >> +                  gpios = <&gpio 43 GPIO_ACTIVE_LOW>;
> >> +                  linux,code = <BTN_0>;
> >> +                  linux,input-type = <EV_SW>;
> >> +          };
> >> +
> >> +          router {
> >> +                  label = "router";
> >> +                  gpios = <&gpio 44 GPIO_ACTIVE_LOW>;
> >> +                  linux,code = <BTN_0>;
> >> +                  linux,input-type = <EV_SW>;
> >> +          };
> >> +  };
> >> +};
> >> +
> >> +&switch0 {
> >> +  ports {
> >> +          wan: port@0 {
> >> +                  status = "okay";
> >> +                  label = "wan";
> >> +          };
> >> +
> >> +          port@1 {
> >> +                  status = "okay";
> >> +                  label = "lan4";
> >> +          };
> >> +
> >> +          port@2 {
> >> +                  status = "okay";
> >> +                  label = "lan3";
> >> +          };
> >> +
> >> +          port@3 {
> >> +                  status = "okay";
> >> +                  label = "lan2";
> >> +          };
> >> +
> >> +          port@4 {
> >> +                  status = "okay";
> >> +                  label = "lan1";
> >> +          };
> >> +  };
> >> +};
> >> +
> >> +&spi0 {
> >> +  status = "okay";
> >> +
> >> +  flash@0 {
> >> +          compatible = "jedec,spi-nor";
> >> +          reg = <0>;
> >> +          spi-max-frequency = <40000000>;
> >> +
> >> +          partitions: partitions {
> >> +                  compatible = "fixed-partitions";
> >> +                  #address-cells = <1>;
> >> +                  #size-cells = <1>;
> >> +
> >> +                  partition@0 {
> >> +                          label = "u-boot";
> >> +                          reg = <0x0 0x30000>;
> >> +                          read-only;
> >> +                  };
> >> +
> >> +                  partition@30000 {
> >> +                          label = "u-boot-env";
> >> +                          reg = <0x30000 0x10000>;
> >> +                          read-only;
> >> +                  };
> >> +
> >> +                  factory: partition@40000 {
> >> +                          label = "factory";
> >> +                          reg = <0x40000 0x10000>;
> >> +                          read-only;
> >> +                  };
> >> +          };
> >> +  };
> >> +};
> >> +
> >> +&pcie {
> >> +  status = "okay";
> >> +};
> >> +
> >> +&pcie0 {
> >> +  wifi: wifi@0,0 {
> >> +          compatible = "mediatek,mt76";
> >> +          reg = <0x0000 0 0 0 0>;
> >> +          mediatek,mtd-eeprom = <&factory 0x0>;
> >> +  };
> >> +};
> >> +
> >> +&state_default {
> >> +  gpio {
> >> +          groups = "i2c", "uart3", "jtag", "wdt", "sdhci";
> >> +          function = "gpio";
> >> +  };
> >> +};
> >> +
> >> +&xhci {
> >> +  status = "disabled";
> >> +};
> >> diff --git a/target/linux/ramips/image/mt7621.mk
> >> b/target/linux/ramips/image/mt7621.mk
> >> index ce9a3ae3d2..468c6ad4da 100644
> >> --- a/target/linux/ramips/image/mt7621.mk
> >> +++ b/target/linux/ramips/image/mt7621.mk
> >> @@ -404,6 +404,14 @@ define Device/elecom_wrc-gs
> >>     DEVICE_PACKAGES := kmod-mt7615e kmod-mt7615-firmware  endef
> >>
> >> +define Device/elecom_wrc-1167gs2-b
> >> +  $(Device/elecom_wrc-gs)
> >> +  IMAGE_SIZE := 11264k
> >> +  DEVICE_MODEL := WRC-1167GS2-B
> >> +  ELECOM_HWNAME := WRC-1167GS2
> >> +endef
> >> +TARGET_DEVICES += elecom_wrc-1167gs2-b
> >> +
> >>   define Device/elecom_wrc-1750gs
> >>     $(Device/elecom_wrc-gs)
> >>     IMAGE_SIZE := 11264k
> >> --
> >> 2.28.0.windows.1
> >>
> >>
> >> _______________________________________________
> >> openwrt-devel mailing list
> >> openwrt-devel@lists.openwrt.org
> >> https://lists.openwrt.org/mailman/listinfo/openwrt-devel
> 
> _______________________________________________
> openwrt-devel mailing list
> openwrt-devel@lists.openwrt.org
> https://lists.openwrt.org/mailman/listinfo/openwrt-devel

Attachment: openpgp-digital-signature.asc
Description: PGP signature

_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel

Reply via email to