mediatek: filogic: gl-mt2500 fix compatibles PHY variants

These devices share the same "compatible" in device tree causing some
incompatibilities (sysupgrades, ASU profile identification), assign a
unique "compatible" and "model" to each variant.

Context:
Commit [1] added each variant's dts compatible to the SUPPORTED_DEVICES
field of the other variant to make easy sysupgrades between these
physically indistinguishable devices variants possible.

But there were found three issues which does not allow this:
- the sysupgrade's stricter check still used in some sysupgrade
paths(this check is being replaced(and redundant) with the newer fwtool's
SUPPORTED_DEVICES check using the info in images METADATA), this check
will fail when sysupgrading from a different board_name(compatible dts)
that the image was created for (image profile name).[2]
- ASU needs unique "dts compatible" to identify the devices profile.
- and an ASU's profile identification limitation when several devices from
a common target share SUPPORTED_DEVICES entries.[3]

There is a proposal for these issues but not yet implemented [4][3].

Until these issues are fixed we won't allow "easy" sysupgrades between
these two device variants.

Commit [5] avoided the ASU profile identification limitation but
missed the required two unique dts compatibles in order to make the two
variants fully work, although not allowing easy sysupgrade between them.

[1]: 8d30e07180
[2]: sysupgrade stricter check https://github.com/openwrt/openwrt/issues/20566#issuecomment-3583555482
[3]: ASU proposal https://github.com/openwrt/asu/pull/1533
[4]: allow easy sysupgrade proposal https://github.com/openwrt/openwrt/pull/20947
[5]: b71f4665cd
Fixes: b71f466 ("mediatek: filogic: fix supported_devices list for gl-mt2500")
Fixes: 8d30e07 ("mediatek: filogic: fix for new GL.iNet GL-MT2500/GL-MT2500A hardware revision")
Fixes: https://github.com/openwrt/openwrt/issues/20566
Fixes: https://github.com/openwrt/asu/issues/1525

Signed-off-by: Mario Andrés Pérez <mapb_@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/21842
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 7aa1f7e814)
This commit is contained in:
Mario Andrés Pérez 2026-02-05 01:19:08 +01:00 committed by Hauke Mehrtens
parent 82fec218e1
commit 3ebb157b2d
7 changed files with 15 additions and 3 deletions

View file

@ -58,6 +58,7 @@ acer,predator-w6|\
acer,predator-w6d|\
acer,vero-w6m|\
glinet,gl-mt2500|\
glinet,gl-mt2500-airoha|\
glinet,gl-mt6000|\
glinet,gl-x3000|\
glinet,gl-xe3000|\

View file

@ -5,6 +5,7 @@ set_preinit_iface() {
cudy,tr3000-v1|\
cudy,tr3000-v1-ubootmod|\
glinet,gl-mt2500|\
glinet,gl-mt2500-airoha|\
glinet,gl-mt3000|\
openembed,som7981|\
wavlink,wl-wn573hx3)

View file

@ -3,6 +3,11 @@
/dts-v1/;
#include "mt7981b-glinet-gl-mt2500.dtsi"
/ {
model = "GL.iNet GL-MT2500 (MaxLinear PHY)";
compatible = "glinet,gl-mt2500", "mediatek,mt7981";
};
&gmac0 {
phy-handle = <&phy5>;
};

View file

@ -3,6 +3,11 @@
/dts-v1/;
#include "mt7981b-glinet-gl-mt2500.dtsi"
/ {
model = "GL.iNet GL-MT2500 (Airoha PHY)";
compatible = "glinet,gl-mt2500-airoha", "mediatek,mt7981";
};
&gmac0 {
phy-handle = <&phy13>;
};

View file

@ -5,9 +5,6 @@
#include <dt-bindings/pinctrl/mt65xx.h>
/ {
model = "GL.iNet GL-MT2500";
compatible = "glinet,gl-mt2500", "mediatek,mt7981";
aliases {
label-mac-device = &gmac0;
led-boot = &led_sys_white;

View file

@ -129,6 +129,7 @@ mediatek_setup_interfaces()
cudy,tr3000-v1|\
cudy,tr3000-v1-ubootmod|\
glinet,gl-mt2500|\
glinet,gl-mt2500-airoha|\
glinet,gl-mt3000|\
glinet,gl-x3000|\
glinet,gl-xe3000|\

View file

@ -127,6 +127,7 @@ platform_do_upgrade() {
airpi,ap3000m|\
arcadyan,mozart|\
glinet,gl-mt2500|\
glinet,gl-mt2500-airoha|\
glinet,gl-mt6000|\
glinet,gl-x3000|\
glinet,gl-xe3000|\
@ -350,6 +351,7 @@ platform_copy_config() {
airpi,ap3000m|\
arcadyan,mozart|\
glinet,gl-mt2500|\
glinet,gl-mt2500-airoha|\
glinet,gl-mt6000|\
glinet,gl-x3000|\
glinet,gl-xe3000|\