Hi,

> -----Original Message-----
> From: INAGAKI Hiroshi [mailto:musashino.o...@gmail.com]
> Sent: Samstag, 19. Dezember 2020 14:54
> To: Adrian Schmutzler <m...@adrianschmutzler.de>; openwrt-
> de...@lists.openwrt.org
> Subject: Re: [PATCH 1/2] ramips: add support for ELECOM WRC-1167GS2-B

okay, looks like we can't fix it for now.

I'm considering to merge it in the current state, as the only unfixed issues 
appear to be the MAC address and the frequency limiting, so the device is 
generally working?

I've tried to mess with the DTSI files so we can reuse the existing 
mt7621_elecom_wrc-gs.dtsi. The result has been pushed to my staging:

https://git.openwrt.org/?p=openwrt/staging/adrian.git;a=shortlog;h=refs/heads/staging

Please tell me whether you like it or not. Not liking it is also okay ;-)

Best

Adrian

> 
> Hello,
> 
> On 2020/12/19 9:22, Adrian Schmutzler wrote:
> > Hi,
> >
> >>>> Notes:
> >>>>
> >>>> - there is no way to configure the correct MAC address for secondary
> phy
> >>>>     (5GHz) on MT7615D
> >>> This one seems to address a similar case (just scroll to the very bottom):
> >>>
> >>> https://patchwork.ozlabs.org/project/openwrt/patch/1607939702-
> 85475-
> >> 1-
> >>> git-send-email-xinfa.d...@gl-inet.com/
> >>>
> >>> Would this work for you as well (at least for the MAC address)?
> >>>
> >>> Best
> >>>
> >>> Adrian
> >> I've tested it, but doesn't work.
> >>
> >> I made the following change,
> > sorry, but would you test again please with the 10_fix_wifi_mac changes
> and recent master?
> >
> > There have been several changes to mt76 in
> b837534f029da10abbd1069392867e0700134ace that might be
> relevant/helping.
> >
> > Best
> >
> > Adrian
> 
> Thank you for letting me know.
> 
> I tried the same modification I did, but it still doesn't works. After that
> 
> bumping of mt76, secondary phy (ext_phy) uses the same MAC address with
> primary
> 
> phy (for 2.4GHz) and the address for secondary phy cannot be configured by
> 
> 10_fix_wifi_mac...
> 
> 
> ```
> 
> (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: -92 dBm
>            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: 04:AB:18:58:2F:15
>            Mode: Client  Channel: unknown (unknown)
>            Tx-Power: 20 dBm  Link Quality: unknown/70
>            Signal: unknown  Noise: -92 dBm
>            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
> 04:ab:18:58:2f:15
> root@OpenWrt:/# . /lib/functions.sh; . /lib/functions/system.sh
> root@OpenWrt:/# mtd_get_mac_binary factory 0x4
> 04:ab:18:58:2f:16root@OpenWrt:/#
> 
> ```
> 
> regards,
> 
> Hiroshi
> 
> >> ```
> >>
> >> 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