openwrt/target/linux/ramips/image/rt3883.mk
Mason Clarke 6fba88de19 ramips: reduce lzma dictionary size for D-Link DIR-645
Currently this device fails to boot with the OpenWrt snapshot images
(release images are unaffected). The error message is:
"LZMA ERROR 1 - must RESET board to recover".

This happens because the kernel image is too big for the bootloader
to boot. This commit works around this by decreasing the lzma dictionary
size option from the default 23 to 10.

Before this change the current OpenWrt snapshot image (uncompressed
kernel size 4875139 bytes) failed to boot, while now an even bigger
image (kernel 4.19 with snapshot default config; uncompressed kernel
size 5162833 bytes) boots just fine.

The highest lzma dictionary size option this image booted with was 11.
10 was chosen to have a bit more room for growth.

An unavoidable side-effect of this change is that the compressed kernel
image will take up more space.

Total image size with different dictionary size options:
D23 - 3973903 bytes (base)
D16 - 4113167 bytes (+3.5%  - +139264 bytes)
D12 - 4317967 bytes (+8.7%  - +344064‬ bytes)
D11 - 4383503 bytes (+10.3% - +409600 bytes)
D10 - 4461327 bytes (+12.3% - +487424 bytes)

Fixes: FS#1484
Signed-off-by: Mason Clarke <mclarke2355@gmail.com>
2020-01-05 19:36:45 +01:00

138 lines
3.5 KiB
Makefile

#
# RT3662/RT3883 Profiles
#
define Build/mkrtn56uimg
$(STAGING_DIR_HOST)/bin/mkrtn56uimg $(1) $@
endef
define Device/asus_rt-n56u
SOC := rt3662
BLOCKSIZE := 64k
IMAGE_SIZE := 7872k
IMAGE/sysupgrade.bin += | mkrtn56uimg -s
DEVICE_VENDOR := Asus
DEVICE_MODEL := RT-N56U
DEVICE_PACKAGES := kmod-usb-ohci kmod-usb2 swconfig
SUPPORTED_DEVICES += rt-n56u
endef
TARGET_DEVICES += asus_rt-n56u
define Device/belkin_f9k1109v1
SOC := rt3883
BLOCKSIZE := 64k
DEVICE_VENDOR := Belkin
DEVICE_MODEL := F9K1109
DEVICE_VARIANT := Version 1.0
DEVICE_PACKAGES := kmod-usb-ohci kmod-usb2 swconfig
IMAGE_SIZE := 7808k
KERNEL := kernel-bin | append-dtb | lzma -d16 | uImage lzma
# Stock firmware checks for this uImage image name during upload.
UIMAGE_NAME := N750F9K1103VB
endef
TARGET_DEVICES += belkin_f9k1109v1
define Device/dlink_dir-645
$(Device/seama)
SOC := rt3662
BLOCKSIZE := 4k
IMAGE_SIZE := 7872k
KERNEL := kernel-bin | append-dtb | lzma -d10
SEAMA_SIGNATURE := wrgn39_dlob.hans_dir645
DEVICE_VENDOR := D-Link
DEVICE_MODEL := DIR-645
DEVICE_PACKAGES := kmod-usb-ohci kmod-usb2 swconfig
SUPPORTED_DEVICES += dir-645
endef
TARGET_DEVICES += dlink_dir-645
define Device/edimax_br-6475nd
SOC := rt3662
BLOCKSIZE := 64k
IMAGE_SIZE := 7744k
IMAGE/sysupgrade.bin := append-kernel | append-rootfs | \
edimax-header -s CSYS -m RN54 -f 0x70000 -S 0x01100000 | pad-rootfs | \
append-metadata | check-size $$$$(IMAGE_SIZE)
DEVICE_VENDOR := Edimax
DEVICE_MODEL := BR-6475nD
DEVICE_PACKAGES := swconfig
SUPPORTED_DEVICES += br-6475nd
endef
TARGET_DEVICES += edimax_br-6475nd
define Device/loewe_wmdr-143n
SOC := rt3662
BLOCKSIZE := 64k
IMAGE_SIZE := 7872k
DEVICE_VENDOR := Loewe
DEVICE_MODEL := WMDR-143N
SUPPORTED_DEVICES += wmdr-143n
endef
TARGET_DEVICES += loewe_wmdr-143n
define Device/omnima_hpm
SOC := rt3662
BLOCKSIZE := 64k
IMAGE_SIZE := 16064k
DEVICE_VENDOR := Omnima
DEVICE_MODEL := HPM
DEVICE_PACKAGES := kmod-usb-ohci kmod-usb2
SUPPORTED_DEVICES += hpm
endef
TARGET_DEVICES += omnima_hpm
define Device/samsung_cy-swr1100
$(Device/seama)
SOC := rt3662
BLOCKSIZE := 64k
IMAGE_SIZE := 7872k
KERNEL := $(KERNEL_DTB)
SEAMA_SIGNATURE := wrgnd10_samsung_ss815
DEVICE_VENDOR := Samsung
DEVICE_MODEL := CY-SWR1100
DEVICE_PACKAGES := kmod-usb-ohci kmod-usb2 kmod-usb-ledtrig-usbport swconfig
SUPPORTED_DEVICES += cy-swr1100
endef
TARGET_DEVICES += samsung_cy-swr1100
define Device/sitecom_wlr-6000
SOC := rt3883
BLOCKSIZE := 4k
IMAGE_SIZE := 7244k
IMAGES += factory.dlf
IMAGE/factory.dlf := $$(sysupgrade_bin) | check-size $$$$(IMAGE_SIZE) | \
senao-header -r 0x0202 -p 0x41 -t 2
DEVICE_VENDOR := Sitecom
DEVICE_MODEL := WLR-6000
DEVICE_PACKAGES := kmod-usb-ohci kmod-usb2 swconfig
SUPPORTED_DEVICES += wlr-6000
endef
TARGET_DEVICES += sitecom_wlr-6000
define Device/trendnet_tew-691gr
SOC := rt3883
BLOCKSIZE := 64k
IMAGE_SIZE := 7872k
IMAGES += factory.bin
IMAGE/factory.bin := $$(sysupgrade_bin) | check-size $$$$(IMAGE_SIZE) | \
umedia-header 0x026910
DEVICE_VENDOR := TRENDnet
DEVICE_MODEL := TEW-691GR
DEVICE_PACKAGES := swconfig
SUPPORTED_DEVICES += tew-691gr
endef
TARGET_DEVICES += trendnet_tew-691gr
define Device/trendnet_tew-692gr
SOC := rt3883
BLOCKSIZE := 64k
IMAGE_SIZE := 7872k
IMAGES += factory.bin
IMAGE/factory.bin := $$(sysupgrade_bin) | check-size $$$$(IMAGE_SIZE) | \
umedia-header 0x026920
DEVICE_VENDOR := TRENDnet
DEVICE_MODEL := TEW-692GR
DEVICE_PACKAGES := swconfig
SUPPORTED_DEVICES += tew-692gr
endef
TARGET_DEVICES += trendnet_tew-692gr