I'm struggling with adding support for a device that has a NAND flash for storage and as (somewhat) expected, squashfs prevents the booting process by throwing a squashfs error: xz decompression failed, data probably corrupt error.
I believe it is caused by some bad blocks on the NAND so i decided to use UBI by adding this line to the profile definition inside the mt7621.mk file.
IMAGE/sysupgrade.bin := append-kernel | append-ubi | append-metadata | check-size $$$$(IMAGE_SIZE)
Isn't this supposed to use UBI as a translation layer and solve the bad blocks troubles? I'm asking because i'm getting the same errors whenever OpenWrt tries to boot; it obviously hangs immediately after these errors.
The entire profile definition of the board i'm currently trying to add support for.
define Device/na502 DTS := NA502 DEVICE_TITLE := Sercomm NA502 DEVICE_PACKAGES := \ kmod-ata-core kmod-ata-ahci kmod-sdhci-mt7620 kmod-mt7603 kmod-mt76x2 \ kmod-usb3 kmod-usb-ledtrig-usbport wpad-mini BLOCKSIZE := 128k PAGESIZE := 2048 IMAGE_SIZE := $(ralink_default_fw_size_128M) KERNEL := $(KERNEL_DTB) | pad-offset $$(BLOCKSIZE) 64 | uImage lzma UBINIZE_OPTS := -E 5 IMAGE/sysupgrade.bin := append-kernel | append-ubi | append-metadata | check-size $$$$(IMAGE_SIZE) endef TARGET_DEVICES += na502