openwrt-pf/package/boot
Andrii Kuiukoff e414ca4fa6
mediatek: creatlentem clt-r30b1: add all-in-UBI layout
This commit introduces OpenWrt U-Boot all-in-ubi layout support
for the CreatLentem CLT-R30B1, enabling:
- Fully-featured U-Boot
- Effective recovery mechanisms
- Prolonged device lifetime by allocating most of the flash
  to UBI (which takes care of wear-leveling)
- Maximum available storage space for OpenWrt
- Unified firmware across different device variants

OpenWrt U-Boot UBI flash instructions
-------------------------------------

Using the installer image
-------------------------
To simplify the installation process, this method uses a fork
of Daniel Golle's (@dangowrt) UBI Installer
https://github.com/dangowrt/owrt-ubi-installer

1. Ensure your router is running the latest generic OpenWrt firmware.
   Upgrade it if necessary.
2. Obtain the installer image:
   Build the installer from source
   https://github.com/andros-ua/owrt-ubi-installer/tree/clt-r30b1
   or download a prebuilt image from the
   https://github.com/andros-ua/owrt-ubi-installer/releases
3. Flash the openwrt*creatlentem_clt-r30b1-ubi-initramfs-recovery-installer.itb
   image using sysupgrade.
4. Wait for installation: the green status LED will blink rapidly,
   indicating that the all-in-UBI installer is running.
5. Once the installation finishes,
   the status LED will turn solid white (lime) for 5 seconds.
6. After the device reboots, perform a final sysupgrade using the
   openwrt*creatlentem_clt-r30b1-ubi-squashfs-sysupgrade.itb image.

Return to stock layout
----------------------
1. Flash openwrt*creatlentem_clt-r30b1(-112m)-initramfs-kernel.bin
   via sysupgrade
2. Copy files to /tmp on the device via SCP:
   BL2.bin
   u-boot-env.bin
   Factory.bin
   FIP.bin
   openwrt*creatlentem_clt-r30b1(-112m)-squashfs-sysupgrade.bin
3. Restore stock MTD partitions:
   apk add kmod-mtd-rw
   insmod mtd-rw i_want_a_brick=1
   mtd write /tmp/BL2.bin BL2
   mtd write /tmp/u-boot-env.bin u-boot-env
   mtd write /tmp/Factory.bin Factory
   mtd write /tmp/FIP.bin FIP
4. Install the system:
   sysupgrade /tmp/*sysupgrade.bin

Recovery
--------
Use mtk_uartboot to recover corrupted BL2 or FIP via UART:
https://github.com/981213/mtk_uartboot

Stock layout
----------------------------------------
| dev:    size   erasesize  name       |
| mtd0: 00100000 00020000 "BL2"        |
| mtd1: 00080000 00020000 "u-boot-env" |
| mtd2: 00200000 00020000 "Factory"    |
| mtd3: 00200000 00020000 "FIP"        |
| mtd4: 07000000 00020000 "ubi"        |
----------------------------------------

OpenWrt U-Boot UBI layout
----------------------------------
| dev:    size   erasesize  name |
| mtd0: 00100000 00020000 "BL2"  |
| mtd1: 07f00000 00020000 "ubi"  |
----------------------------------

Signed-off-by: Andrii Kuiukoff <andros.ua@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/20666
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2026-06-17 09:09:25 +02:00
..
apboot-aruba-ipq806x ipq806x: add apboot package for AP-32x 2026-06-16 16:08:11 +02:00
apex
arm-trusted-firmware-bcm63xx treewide: remove references for obsolete binutils versions 2026-04-18 19:34:21 +02:00
arm-trusted-firmware-imx arm-trusted-firmware-imx: add new package 2026-06-01 17:49:36 +02:00
arm-trusted-firmware-mediatek atf-mediatek: add mt7981 UBI DDR3-1866 build 2026-05-09 15:42:26 +02:00
arm-trusted-firmware-microchipsw
arm-trusted-firmware-mvebu arm-trusted-firmware-mvebu: bump to 2.14 2026-04-11 12:23:36 +02:00
arm-trusted-firmware-rockchip
arm-trusted-firmware-stm32 arm-trusted-firmware-stm32: bump to v2.14 2026-02-26 23:34:10 +01:00
arm-trusted-firmware-sunxi
arm-trusted-firmware-tools
at91bootstrap
fconfig
grub2
imx-bootlets treewide: use HTTPS for PKG_SOURCE_URL where possible 2026-04-20 11:58:37 +08:00
kexec-tools
kobs-ng treewide: use HTTPS for PKG_SOURCE_URL where possible 2026-04-20 11:58:37 +08:00
mt7623n-preloader
opensbi
optee-os-stm32 optee-os-stm32: bump to 4.9.0 2026-02-26 23:34:10 +01:00
rkbin
tfa-layerscape treewide: remove references for obsolete binutils versions 2026-04-18 19:34:21 +02:00
uboot-airoha airoha: increase the size of reserved_bmt partition 2026-05-11 14:43:01 +02:00
uboot-armsr
uboot-at91 uboot-at91: fix wrong BUILD_DEVICES for sama5d4_xplained_nandflash 2026-04-20 18:07:56 +02:00
uboot-ath79 uboot-ath79: update to v2026.04 2026-05-25 22:06:34 +02:00
uboot-bcm53xx
uboot-bcm4908
uboot-bmips
uboot-d1
uboot-fritz4040 uboot-fritz4040: update to Git HEAD (2026-03-08) 2026-03-14 21:46:31 +01:00
uboot-imx uboot-imx: do not build efimkcapsule tool 2026-06-04 00:47:20 +02:00
uboot-kirkwood
uboot-lantiq uboot-lantiq: fix C-style comments in AWK scripts 2026-03-23 01:23:33 +01:00
uboot-layerscape
uboot-mediatek mediatek: creatlentem clt-r30b1: add all-in-UBI layout 2026-06-17 09:09:25 +02:00
uboot-microchipsw
uboot-mvebu uboot-mvebu: update to version 2026.04 2026-05-15 20:59:47 +02:00
uboot-mxs
uboot-omap uboot-omap: update to 2024.07 2026-06-07 11:45:36 +02:00
uboot-qoriq
uboot-rockchip rockchip: add support for FriendlyELEC NanoPi M5 2026-05-14 17:52:56 +02:00
uboot-sifiveu
uboot-stm32 uboot-stm32: bump to 2026.01 2026-02-26 23:34:10 +01:00
uboot-sunxi uboot-sunxi: bump to 2026.04 2026-05-29 08:23:24 +02:00
uboot-tegra
uboot-tools mediatek: creatlentem clt-r30b1: add all-in-UBI layout 2026-06-17 09:09:25 +02:00
uboot-zynq zynq: add Bitmain Antminer S9 control board support 2026-06-16 20:19:24 +02:00