Fixing bootloader

Hello everyone!
I just buy a module wifi hlk7688a from Hi-Link company. After that, I flash a new bootloader on this module. It runs and boots up Openwrt completely. But, I can't flash another bootloader to hlk7688a again. It auto choose "3 System Boot to system code via Flash." It hasn't the delay (3s) for choosing the mode on Uboot environment. Can you help me solve this problem ???. I try fixing on openwrt os by using "fw_setenv" command. But, this commands not affects to uboot-environtment.
Thank you !
Lee Phu

In that case, you don't need to replace the bootloader.

If you really really want to, there is a package kmod-mtd-rw which will allow writing from OpenWrt to the bootloader partition.

Hi mk24!
Althought it go to /root partition and run normally, I can't flash a new firmware throught openwrt-web. On openwrt web, at "flash backup system", it have allowed the user select the firmware which will flash to deivece. When I press button flash, the hlk 7688 run serveral minutes and sleeping or poweroff. When I plug the power connector again, it will run with the old firmware. When I debug the boot process of hlk 7688 throught UART port, I get a big problem that the u-boot (bootloader) auto choose mode 3 "Load system firmware from flash". It hasn't a delay time (3-5s) for choosing mode boot. This problem occures when I flash my custom uboot (boot-loader). Now, I want unlock /dev/mtd0 and overwrite bootloader on this. But, I can't unlock /dev/mtd0 by using "mtd write" command. I know edit some parameter on file relative uboot in openwrt source code which delete the protection for /dev/mtd. But, I talked abow the hlk7688 fail when flash new firmware on this. I will try to your guide. I hope it will completed.
Thank for your support, mk24
Lee Phu


Usage:

# insmod mtd-rw.ko i_want_a_brick=1
# dmesg | grep mtd-rw
[52997.620000] mtd-rw: mtd0: setting writeable flag
[52997.630000] mtd-rw: mtd1: setting writeable flag
[52997.640000] mtd-rw: mtd3: setting writeable flag
[52997.650000] mtd-rw: mtd4: setting writeable flag
[52997.660000] mtd-rw: mtd6: setting writeable flag

To build the module outside the OpenWRT-build-system, use

$ make CONFIG_MTD_RW=m