Which bootloader/layout is recommend for the GL.iNet GL-MT6000

According to the wiki page:

Use an OpenWrt sysupgrade image for the initial install. It is compatible with the OEM webUI flashing routine and retains the OEM recovery which includes a webUI. (Installing the OpenWrt factory image would also flash the OpenWrt version of the u-boot bootloader which would make recovery more difficult.)

I thought that the OpenWrt version of u-boot would be more bullet proof than whatever the OEM fork provides. Is this not the case?

OpenWrt’s is ostensibly better, but Glinet has a nice gui option, so the recommendation is to keep it and just sysupgrade to official OpenWrt.

I’m running a recent snapshot with kernel 6.1 here on the MT6000 it’s great.

1 Like

I see so the advantage is a recovery GUI. OpenWrt’s u-boot to me would be more reliable no?

What “reliability” do you need out of uboot? If your device boots, that’s pretty reliable.

It’s a simple choice.
Do you want a GUI based recovery option for failed flashes
Do you want an up to date and open source uboot that means you need to access the serial header to trigger recovery

1 Like

I thought the OpenWrt u-boot allowed for more robust recovery options without accessing the serial headers. @hnyman ?

Neither openwrt factory or the sysupgrade image changes u-boot. It remain as the OEM u-boot.

as normal initial install is done with sysupgrade image, I remove my erroneous comment regarding factory.

If I understand you correctly, the wiki I quoted is wrong?

Factory image does not contain u-boot.

IMAGE/factory.bin := append-kernel | pad-to 32M | append-rootfs
IMAGE/sysupgrade.bin := sysupgrade-tar | append-gl-metadata

It is actually even more complicated. The wiki is incomplete.

I checked from the commit creating mt6000:

If you want to use u-boot from OpenWrt, you can upgrade it safely.

  • bl2: openwrt-mediatek-filogic-glinet_gl-mt6000-preloader.bin
  • fip: openwrt-mediatek-filogic-glinet_gl-mt6000-bl31-uboot.fip

openwrt-mediatek-filogic-glinet_gl-mt6000-squashfs-factory.bin is used in OpenWrt's u-boot.


  • As gl-inet flash routine is OpenWrt compatible, the initial install is done normally with the sysupgrade image.
  • If you want to use OpenWrt u-boot, you need to first flash the u-boot components and then the factory image which is compatible with that.
    (Flashing just the factory image might brick.)

Ps. Learning from the e8450 flash bootchain changes and current difficulties with that, I would be very hesitant to modify the u-boot unnecessarily.


Thanks for the research. I will just use the sysupgrade image.

Can you point me to steps to accomplish this safely?

Sorry, no first-hand information.

The commit that I quoted above, apparently lists the needed files to be flashed to the respective mtd/mmc(?) partitions (?).

You better ask @zhaojh329 who authored the original commit https://git.openwrt.org/?p=openwrt/openwrt.git;a=commit;h=fe10f9743935d6986e80e7cb082469e6bc5a03f0