MT6000 custom build with LuCi and some optimization - kernel 6.12.x

I'm unable to download linux-firmware, I have tried several times on 4.6.12 and 4.6.14 (make distclean and the usual steps). The hash never matches.

Here is the verbose log when downloading linux-firmware on 4.6.14 (on sync with remote branch): https://pastebin.com/raw/BYU8Y704

Is there something I can do on my end to fix this, other than to wait?

edit: Also tried 4.7.0.rss.mtk with same error

4.7.0 was a testing version, now removed from github
4.6.14 is now sync with latest master and it should work ( in my pc compile)
so

git pull
make dirclean
./scripts/feeds update -a
./scripts/feeds install -a
make menuconfig
make defconfig download clean world

the problem on compile should be solved or, please start from a new folder
For who get issue on linux-firmware, please check if the makefile it is the same like here:
https://raw.githubusercontent.com/pesa1234/openwrt/refs/heads/next-r4.6.14.rss.mtk/package/firmware/linux-firmware/Makefile

4.6.15.rss.mtk is a testing version...

3 Likes

Hi, I'm getting this error:

make[4]: Entering directory '/home/runner/work/GL-MT6000/GL-MT6000/build_dir/target-aarch64_cortex-a53_musl/busybox-default/busybox-1.37.0'
  CC      networking/tc.o
networking/tc.c: In function 'cbq_print_opt':
networking/tc.c:236:27: error: 'TCA_CBQ_MAX' undeclared (first use in this function); did you mean 'TCA_CBS_MAX'?
  236 |         struct rtattr *tb[TCA_CBQ_MAX+1];
      |                           ^~~~~~~~~~~
      |                           TCA_CBS_MAX
networking/tc.c:236:27: note: each undeclared identifier is reported only once for each function it appears in
networking/tc.c:249:16: error: 'TCA_CBQ_RATE' undeclared (first use in this function); did you mean 'TCA_TBF_RATE64'?
  249 |         if (tb[TCA_CBQ_RATE]) {
      |                ^~~~~~~~~~~~
      |                TCA_TBF_RATE64
networking/tc.c:255:16: error: 'TCA_CBQ_LSSOPT' undeclared (first use in this function)
  255 |         if (tb[TCA_CBQ_LSSOPT]) {
      |                ^~~~~~~~~~~~~~
networking/tc.c:256:61: error: invalid application of 'sizeof' to incomplete type 'struct tc_cbq_lssopt'
  256 |                 if (RTA_PAYLOAD(tb[TCA_CBQ_LSSOPT]) < sizeof(*lss))
      |                                                             ^
networking/tc.c:261:16: error: 'TCA_CBQ_WRROPT' undeclared (first use in this function)
  261 |         if (tb[TCA_CBQ_WRROPT]) {
      |                ^~~~~~~~~~~~~~
networking/tc.c:262:61: error: invalid application of 'sizeof' to incomplete type 'struct tc_cbq_wrropt'
  262 |                 if (RTA_PAYLOAD(tb[TCA_CBQ_WRROPT]) < sizeof(*wrr))
      |                                                             ^
networking/tc.c:267:16: error: 'TCA_CBQ_FOPT' undeclared (first use in this function)
  267 |         if (tb[TCA_CBQ_FOPT]) {
      |                ^~~~~~~~~~~~
networking/tc.c:268:59: error: invalid application of 'sizeof' to incomplete type 'struct tc_cbq_fopt'
  268 |                 if (RTA_PAYLOAD(tb[TCA_CBQ_FOPT]) < sizeof(*fopt))
      |                                                           ^
networking/tc.c:273:16: error: 'TCA_CBQ_OVL_STRATEGY' undeclared (first use in this function)
  273 |         if (tb[TCA_CBQ_OVL_STRATEGY]) {
      |                ^~~~~~~~~~~~~~~~~~~~
networking/tc.c:274:67: error: invalid application of 'sizeof' to incomplete type 'struct tc_cbq_ovl'
  274 |                 if (RTA_PAYLOAD(tb[TCA_CBQ_OVL_STRATEGY]) < sizeof(*ovl))
      |                                                                   ^
networking/tc.c:277:50: error: invalid application of 'sizeof' to incomplete type 'struct tc_cbq_ovl'
  277 |                                 (unsigned) sizeof(*ovl));
      |                                                  ^
networking/tc.c:293:23: error: invalid use of undefined type 'struct tc_cbq_lssopt'
  293 |         if (lss && lss->flags) {
      |                       ^~
networking/tc.c:296:24: error: invalid use of undefined type 'struct tc_cbq_lssopt'
  296 |                 if (lss->flags&TCF_CBQ_LSS_BOUNDED) {
      |                        ^~
networking/tc.c:296:32: error: 'TCF_CBQ_LSS_BOUNDED' undeclared (first use in this function)
  296 |                 if (lss->flags&TCF_CBQ_LSS_BOUNDED) {
      |                                ^~~~~~~~~~~~~~~~~~~
networking/tc.c:300:24: error: invalid use of undefined type 'struct tc_cbq_lssopt'
  300 |                 if (lss->flags&TCF_CBQ_LSS_ISOLATED) {
      |                        ^~
networking/tc.c:300:32: error: 'TCF_CBQ_LSS_ISOLATED' undeclared (first use in this function)
  300 |                 if (lss->flags&TCF_CBQ_LSS_ISOLATED) {
      |                                ^~~~~~~~~~~~~~~~~~~~
networking/tc.c:308:24: error: invalid use of undefined type 'struct tc_cbq_wrropt'
  308 |                 if (wrr->priority != TC_CBQ_MAXPRIO)
      |                        ^~
networking/tc.c:308:38: error: 'TC_CBQ_MAXPRIO' undeclared (first use in this function)
  308 |                 if (wrr->priority != TC_CBQ_MAXPRIO)
      |                                      ^~~~~~~~~~~~~~
networking/tc.c:309:46: error: invalid use of undefined type 'struct tc_cbq_wrropt'
  309 |                         printf("prio %u", wrr->priority);
      |                                              ^~
networking/tc.c:313:43: error: invalid use of undefined type 'struct tc_cbq_wrropt'
  313 |                         printf("/%u ", wrr->cpriority);
      |                                           ^~
networking/tc.c:314:32: error: invalid use of undefined type 'struct tc_cbq_wrropt'
  314 |                         if (wrr->weight != 1) {
      |                                ^~
networking/tc.c:315:65: error: invalid use of undefined type 'struct tc_cbq_wrropt'
  315 |                                 print_rate(buf, sizeof(buf), wrr->weight);
      |                                                                 ^~
networking/tc.c:318:32: error: invalid use of undefined type 'struct tc_cbq_wrropt'
  318 |                         if (wrr->allot)
      |                                ^~
networking/tc.c:319:57: error: invalid use of undefined type 'struct tc_cbq_wrropt'
  319 |                                 printf("allot %ub ", wrr->allot);
      |                                                         ^~
networking/tc.c:236:24: warning: unused variable 'tb' [-Wunused-variable]
  236 |         struct rtattr *tb[TCA_CBQ_MAX+1];
      |                        ^~
make[5]: *** [scripts/Makefile.build:198: networking/tc.o] Error 1
make[4]: *** [Makefile:744: networking] Error 2
make[4]: Leaving directory '/home/runner/work/GL-MT6000/GL-MT6000/build_dir/target-aarch64_cortex-a53_musl/busybox-default/busybox-1.37.0'
make[3]: *** [Makefile:177: /home/runner/work/GL-MT6000/GL-MT6000/build_dir/target-aarch64_cortex-a53_musl/busybox-default/busybox-1.37.0/.built] Error 2
make[3]: Leaving directory '/home/runner/work/GL-MT6000/GL-MT6000/package/utils/busybox'
time: package/utils/busybox/default/compile#0.81#0.60#1.31
    ERROR: package/utils/busybox failed to build (build variant: default).
make[2]: *** [package/Makefile:187: package/utils/busybox/compile] Error 1
make[2]: Leaving directory '/home/runner/work/GL-MT6000/GL-MT6000'
make[1]: *** [package/Makefile:181: /home/runner/work/GL-MT6000/GL-MT6000/staging_dir/target-aarch64_cortex-a53_musl/stamp/.package_compile] Error 2
make[1]: Leaving directory '/home/runner/work/GL-MT6000/GL-MT6000'
make: *** [/home/runner/work/GL-MT6000/GL-MT6000/include/toplevel.mk:233: world] Error 2
Error: Process completed with exit code 2.

On branch next-r4.6.14.rss.mtk using github action(always start with empty folders)

Thanks

Maybe something is strange there it fails on busybox...
I compile on local pc and no issue at all

Hi. I solved it—it was my mistake.

Thanks.

1 Like

It compiles for me, thank you for your work!

1 Like

Is there a general concensus on the optimal packet steering setting for the MT6000 to use on the latest pesa build when using SQM with all offloading off? Is is better to use one of the advanced packet steering settings [standard (only wifi) or advanced (wan-bridge-wifi)]? Or is it better to use the older packet steering settings under global interface [enabled + RPS 128 or enabled (all CPUs) +_RPS 128]?

1 Like

can anyone advise on this, please? i have no lan connection to ssh in to turn on the wifi, that's why asking. thanks much.

From what I recall, this build uses same default network config as main branch, where wifi is disabled by default.

you can enter a wifi enable command at the end of the installation and enable wifi

1 Like

thanks, sir. can you advise which command to use so that i can have wifi activitated without lan connection, please?

# Attiva il wifi
uci set wireless.radio0.disabled=0

# (Se hai anche 5 GHz)
uci set wireless.radio1.disabled=0

# Applica le modifiche
uci commit wireless
wifi reload

Some small fixes, running version r31571

cat /etc/rc.local
# Put your custom commands here that should be executed once
# the system init finished. By default this file does nothing.
# Uneven distribution is by design in DSA setups, where queues are assigned per switch port and not load-balanced via hashing as used with tc-mq
tc qdisc replace dev eth0 root fq_codel
# Resolve rx errors via ethtool -S <iface>
for ETH in eth0 eth1; do ethtool -K $ETH rx off; done
exit 0

2 Likes

Dang, I just installed r4.6.12 but I can’t install Argon theme:



ERROR: unable to select packages:
  libubus20251004-2025.10.04~ad2768bb-r1:
    conflicts: libubus20251017-2025.10.17~60e04048-r1[libubus=2025.10.04~ad2768bb-r1]
    satisfies: world[libubus20251004] bridger-2025.09.01~f6afcb04[libubus20251004] cgi-io-2025.10.04~d4b9fb11-r1[libubus20251004]
               dnsmasq-full-2.91-r2[libubus20251004] libiwinfo20230701-2025.02.06~9cec6b4d-r1[libubus20251004]
               libudebug-2025.09.28~5327524e[libubus20251004] logd-2025.10.03~c75525a5-r1[libubus20251004]
               netifd-2025.10.06~64902801-r1[libubus20251004] odhcpd-ipv6only-2025.10.07~5eac9c56-r1[libubus20251004]
               procd-2025.10.04~3b3501ab-r1[libubus20251004] procd-ujail-2025.10.04~3b3501ab-r1[libubus20251004]
               rpcd-2025.10.03~cfb93f10-r1[libubus20251004] rpcd-mod-file-2025.10.03~cfb93f10-r1[libubus20251004]
               rpcd-mod-iwinfo-2025.10.03~cfb93f10-r1[libubus20251004] rpcd-mod-luci-20240305-r1[libubus20251004]
               rpcd-mod-rpcsys-2025.10.03~cfb93f10-r1[libubus20251004] rpcd-mod-rrdns-20170710[libubus20251004]
               rpcd-mod-ucode-2025.10.03~cfb93f10-r1[libubus20251004] ubox-2025.10.03~c75525a5-r1[libubus20251004]
               ubus-2025.10.04~ad2768bb-r1[libubus20251004] ucode-mod-ubus-2025.09.29~1090abb1-r1[libubus20251004]
               uhttpd-mod-ubus-2025.10.03~ebb92e6b-r1[libubus20251004] wpad-openssl-2025.08.26~ca266cc2-r1[libubus20251004]
  libubus20251017-2025.10.17~60e04048-r1:
    conflicts: libubus20251004-2025.10.04~ad2768bb-r1[libubus=2025.10.17~60e04048-r1]
    satisfies: libubus-lua-2025.10.17~60e04048-r1[libubus20251017]

Can we do anything about it?

Install build dependencies, clone the repository, checkout the exact commit your version is built on(tip: use --depth 1), import Argon Theme, then menuconfigand build the package with make package/luci-theme-argon/compile -j$(($(nproc) + 1)).


@pesa1234 Perhaps packaging SDK would be a good idea? So people won’t have to build toolchain.

There is just a minor bug with the latest commit of Argon theme if you have or using MWAN3.. i'm still waiting for them to merge the fix although it's simple enough just to update the cascade.css.

1 Like

Found a serious bug compiling after 2025-10-24 (last good build for my config is c56b9dfbba4041fd916820cd780d8389eed2c948).
in menus Network → DNS almost all tabs are missing, and related to that, DNS Forwards do not work (at least for me, that’s how I noticed something was wrong).

Edit: More about this issue, seems to be related to Lucy changing menus, because it was “Network → DHCP and DNS” and now, in the compiled version from 2025-10-24, I have “Network → DNS” and found that “Static Leases” tab is missing :frowning:

Latest LuCI splitted DNS and DHCP into two separate pages. It seems like upstream wants to switch to odhcpd for better v4 v6 stack separation(?).

You can checkout an older LuCI feed if you want the old one back. Beware of compatibility issues that might occur.

But where is supposed to find dnsmasq settings? Or won't Lucy have any?

The two new pages are supposed to contain all existing settings.