Can't compile U-boot layout for TP-Link BE450 cuz of mbedtls, I could compile that just fine with 2 months old OpenWrt config

Finally fixed it by cleaning all the toolchains today.

check your paths in the staging_dir

cat: /media/emre/Linuxdepobuyuk/openwrt/staging_dir/target-aarch64_cortex-a53_musl/image/mt7988_tplink_be450-u-boot.fip: No such file or directory

do the fip exists ?? if not your problem happened much earlier in the build. to reveal the actual error, build with a single core (no -j) to avoid your logs from stomping on one another .

make .... V=s 
  Data Size:    11563008 Bytes = 11292.00 KiB = 11.03 MiB
  Hash algo:    crc32
  Hash value:   9ada4e6a
  Hash algo:    sha1
  Hash value:   a77852c1e0031750fc851e8215dba1e6c66ba76c
 Default Configuration: 'config-1'
 Configuration 0 (config-1)
  Description:  OpenWrt tplink_be450-ubi
  Kernel:       kernel-1
  FDT:          fdt-1
  Loadables:    rootfs-1
/media/emre/Linuxdepobuyuk/openwrt/staging_dir/host/bin/padjffs2 /media/emre/Linuxdepobuyuk/openwrt/build_dir/target-aarch64_cortex-a53_musl/linux-mediatek_filogic/tmp/openwrt-mediatek-filogic-tplink_be450-ubi-squashfs-sysupgrade.itb  128
padding image to 01100000
echo '{  "metadata_version": "1.1", "compat_version": "1.0",   "supported_devices":["tplink,be450-ubi"], "version": { "dist": "OpenWrt", "version": "SNAPSHOT", "revision": "r33098+2-55120e363ef", "target": "mediatek/filogic", "board": "tplink_be450-ubi" } }' | fwtool -I - /media/emre/Linuxdepobuyuk/openwrt/build_dir/target-aarch64_cortex-a53_musl/linux-mediatek_filogic/tmp/openwrt-mediatek-filogic-tplink_be450-ubi-squashfs-sysupgrade.itb
sha256sum "/media/emre/Linuxdepobuyuk/openwrt/build_dir/target-aarch64_cortex-a53_musl/linux-mediatek_filogic/tmp/openwrt-mediatek-filogic-tplink_be450-ubi-squashfs-sysupgrade.itb" | cut -d" " -f1 > "/media/emre/Linuxdepobuyuk/openwrt/build_dir/target-aarch64_cortex-a53_musl/linux-mediatek_filogic/tmp/openwrt-mediatek-filogic-tplink_be450-ubi-squashfs-sysupgrade.itb.sha256sum"
[ ! -s "/media/emre/Linuxdepobuyuk/openwrt/key-build" -o ! -s "/media/emre/Linuxdepobuyuk/openwrt/key-build.ucert" -o ! -s "/media/emre/Linuxdepobuyuk/openwrt/build_dir/target-aarch64_cortex-a53_musl/linux-mediatek_filogic/tmp/openwrt-mediatek-filogic-tplink_be450-ubi-squashfs-sysupgrade.itb" ] || { cp "/media/emre/Linuxdepobuyuk/openwrt/key-build.ucert" "/media/emre/Linuxdepobuyuk/openwrt/build_dir/target-aarch64_cortex-a53_musl/linux-mediatek_filogic/tmp/openwrt-mediatek-filogic-tplink_be450-ubi-squashfs-sysupgrade.itb.ucert" ; usign -S -m "/media/emre/Linuxdepobuyuk/openwrt/build_dir/target-aarch64_cortex-a53_musl/linux-mediatek_filogic/tmp/openwrt-mediatek-filogic-tplink_be450-ubi-squashfs-sysupgrade.itb" -s "/media/emre/Linuxdepobuyuk/openwrt/key-build" -x "/media/emre/Linuxdepobuyuk/openwrt/build_dir/target-aarch64_cortex-a53_musl/linux-mediatek_filogic/tmp/openwrt-mediatek-filogic-tplink_be450-ubi-squashfs-sysupgrade.itb.sig" ; ucert -A -c "/media/emre/Linuxdepobuyuk/openwrt/build_dir/target-aarch64_cortex-a53_musl/linux-mediatek_filogic/tmp/openwrt-mediatek-filogic-tplink_be450-ubi-squashfs-sysupgrade.itb.ucert" -x "/media/emre/Linuxdepobuyuk/openwrt/build_dir/target-aarch64_cortex-a53_musl/linux-mediatek_filogic/tmp/openwrt-mediatek-filogic-tplink_be450-ubi-squashfs-sysupgrade.itb.sig" ; fwtool -S "/media/emre/Linuxdepobuyuk/openwrt/build_dir/target-aarch64_cortex-a53_musl/linux-mediatek_filogic/tmp/openwrt-mediatek-filogic-tplink_be450-ubi-squashfs-sysupgrade.itb.ucert" "/media/emre/Linuxdepobuyuk/openwrt/build_dir/target-aarch64_cortex-a53_musl/linux-mediatek_filogic/tmp/openwrt-mediatek-filogic-tplink_be450-ubi-squashfs-sysupgrade.itb" ; }
cp /media/emre/Linuxdepobuyuk/openwrt/build_dir/target-aarch64_cortex-a53_musl/linux-mediatek_filogic/tmp/openwrt-mediatek-filogic-tplink_be450-ubi-squashfs-sysupgrade.itb /media/emre/Linuxdepobuyuk/openwrt/bin/targets/mediatek/filogic/openwrt-mediatek-filogic-tplink_be450-ubi-squashfs-sysupgrade.itb
DEVICE_ID="tplink_be450-ubi" SOURCE_DATE_EPOCH=1771273278 FILE_NAME="openwrt-mediatek-filogic-tplink_be450-ubi-squashfs-sysupgrade.itb" FILE_DIR="/media/emre/Linuxdepobuyuk/openwrt/build_dir/target-aarch64_cortex-a53_musl/linux-mediatek_filogic/tmp" FILE_TYPE=sysupgrade FILE_FILESYSTEM="squashfs" DEVICE_IMG_PREFIX="openwrt-mediatek-filogic-tplink_be450-ubi" DEVICE_VENDOR="TP-Link" DEVICE_MODEL="BE450 (UBI)" DEVICE_VARIANT="" DEVICE_ALT0_VENDOR="" DEVICE_ALT0_MODEL="" DEVICE_ALT0_VARIANT="" DEVICE_ALT1_VENDOR="" DEVICE_ALT1_MODEL="" DEVICE_ALT1_VARIANT="" DEVICE_ALT2_VENDOR="" DEVICE_ALT2_MODEL="" DEVICE_ALT2_VARIANT="" DEVICE_ALT3_VENDOR="" DEVICE_ALT3_MODEL="" DEVICE_ALT3_VARIANT="" DEVICE_ALT4_VENDOR="" DEVICE_ALT4_MODEL="" DEVICE_ALT4_VARIANT="" DEVICE_ALT5_VENDOR="" DEVICE_ALT5_MODEL="" DEVICE_ALT5_VARIANT="" DEVICE_TITLE="TP-Link BE450 (UBI)" DEVICE_PACKAGES="kmod-mt7996e kmod-mt7996-firmware mt7988-wo-firmware mt7988-2p5g-phy-firmware" TARGET="mediatek" SUBTARGET="filogic" VERSION_NUMBER="SNAPSHOT" VERSION_CODE="r33098+2-55120e363ef" SUPPORTED_DEVICES="tplink,be450-ubi" KERNEL_SIZE="" IMAGE_SIZE="" /media/emre/Linuxdepobuyuk/openwrt/scripts/json_add_image_info.py /media/emre/Linuxdepobuyuk/openwrt/build_dir/target-aarch64_cortex-a53_musl/json_info_files/openwrt-mediatek-filogic-tplink_be450-ubi-squashfs-sysupgrade.itb.json
cat /media/emre/Linuxdepobuyuk/openwrt/staging_dir/target-aarch64_cortex-a53_musl/image/mt7988_tplink_be450-u-boot.fip >> /media/emre/Linuxdepobuyuk/openwrt/build_dir/target-aarch64_cortex-a53_musl/linux-mediatek_filogic/tmp/openwrt-mediatek-filogic-tplink_be450-ubi-bl31-uboot.fip
cat: /media/emre/Linuxdepobuyuk/openwrt/staging_dir/target-aarch64_cortex-a53_musl/image/mt7988_tplink_be450-u-boot.fip: No such file or directory
make[5]: *** [Makefile:48: /media/emre/Linuxdepobuyuk/openwrt/build_dir/target-aarch64_cortex-a53_musl/linux-mediatek_filogic/tmp/openwrt-mediatek-filogic-tplink_be450-ubi-bl31-uboot.fip] Error 1
make[5]: Leaving directory '/media/emre/Linuxdepobuyuk/openwrt/target/linux/mediatek/image'
make[4]: *** [Makefile:17: install] Error 2
make[4]: Leaving directory '/media/emre/Linuxdepobuyuk/openwrt/target/linux/mediatek'
make[3]: *** [Makefile:12: install] Error 2
make[3]: Leaving directory '/media/emre/Linuxdepobuyuk/openwrt/target/linux'
time: target/linux/install#54.20#8.76#55.89
    ERROR: target/linux failed to build.
make[2]: *** [target/Makefile:32: target/linux/install] Error 1
make[2]: Leaving directory '/media/emre/Linuxdepobuyuk/openwrt'
make[1]: *** [target/Makefile:26: /media/emre/Linuxdepobuyuk/openwrt/staging_dir/target-aarch64_cortex-a53_musl/stamp/.target_install] Error 2
make[1]: Leaving directory '/media/emre/Linuxdepobuyuk/openwrt'
make: *** [/media/emre/Linuxdepobuyuk/openwrt/include/toplevel.mk:233: world] Error 2

the reason its failing is obvious .. there should be evidence of why the mt7988_tplink_be450-u-boot.fip fails to build.

Need more info ...

I asked AI for this, it said that you should extract the FIP file first from a GPL code. But, how did I do that on AX80 EU without GPL?

ask AI ... it beats the heck outta me??

it may be suggesting you can extract the parts with uboot-tools, like mkimage -l firmware.img or dumpimge -l firmware.img. But fip will not be listed or dumpable with these tools.

And just so you're aware, AI is notoriously wrong .. or half right most of the time. I prove it wrong daily. ask it any complex code example that you are 100% sure of the expected result, 3/10 times totally wrong ..6/10 half right ...and 1/10 absolutely correct. Then throw openwrt related questions in the mix and it often just hallucinates.

IMO best way to find your answers is to ask the right questions here. Be as detailed as you can bare to be, while describing what it is you are trying to do. And probably most helpful thing, offer what you have so far, ie a link to a git repo to look at .. or post makefiles and code examples, point to where you suspect problems may be ..etc. Works for me anyway :slight_smile:

1 more tip, don't start multiple threads for the same adventure. This will not help get answers, it quite often has the opposite effect.

with that said, lets look at what you got, i love me a good old fight with uboot

Hey so I got a lot further than that, but I made a small mistake. I didn't test it with mtk_uartboot on ram first, just proceeded to delete u-boot. My compiled U-boot doesn't respond to my keystrokes here:

Press CTRL-A Z for help on special keys

�NOTICE: BL31: v2.13.0(release):OpenWrt v2025.07.11~78a0dfd9-1 (mt7988-spim-)
NOTICE: BL31: Built : 20:21:18, Feb 16 2026

rut roo!! i hope you've got a backup, that one is foobar'd.

Uboot is not something to half assk, thankfully you've got the mtk_uartboot to attempt a recovery. On most units, thats a game over .. new paper weight. However, I have 0 experience with mtk_uartboot recovery so I am merely a spectator now.

Hopefully you can resuscitate it

mtk_uartboot is pretty easy, unless they've locked down the pre loader.

@bosukes you can follow the T-56 wiki, just use the corresponding BE450 files.

1 Like

I may just need to get me one to play with. Not this particular unit but one the supports mtk_uartboot I just like the idea of being able to test uboot mods without going all in on each attempt. shoot me a msg if you have any suggestions for a unit .. that won't break the bank.

Sorry for hyjack.

three I know it can be used on, are Zyxel EX5601 and WX5600, Xiaomi AX3000T.

there are some additional units if you look at https://git.openwrt.org/openwrt/openwrt/log/?qt=grep&q=mtk_uartboot.

2 Likes

So u-boot layout and ubootmod is the same. So should I name it as ubootmod? It sounds way cooler am I right :slight_smile: Why not do it with some style :smiley:

Chill out man I've totally destroyed my AX80 once, then somehow revived it again. Don't ask me how it would take 6 hours to tell you :laughing:

Yep, seems around ready. Wifi, macs all done

Don’t forget the OO.

1 Like

What does that mean?

OpenWRT One.

When should I apply for PR? I think I need to test this for a few weeks to see if things go wrong or not.

Can't compile because of mbedtls :frowning:

Can you afford trying OpenSSL?