From 4d9c38d654fdfb72ef641573bbf5b0f73f638f2e Mon Sep 17 00:00:00 2001
From: Maik Goette <github@beeit.de>
Date: Sun, 8 Jan 2023 18:35:10 +0100
Subject: [PATCH] lantiq: fix lzma-loader for Netgear DGN 3500(B)

Fixes Uncompressing Kernel Image ... ERROR: LzmaDecode.c, 561

Fixes: #11701 for both 3500(B)
Signed-off-by: Maik Goette <github@beeit.de>
---
 target/linux/lantiq/image/Makefile | 19 ++++++++++++++-----
 target/linux/lantiq/image/ar9.mk   |  4 ++++
 2 files changed, 18 insertions(+), 5 deletions(-)

diff --git a/target/linux/lantiq/image/Makefile b/target/linux/lantiq/image/Makefile
index facc3fbe09..9fdb949392 100644
--- a/target/linux/lantiq/image/Makefile
+++ b/target/linux/lantiq/image/Makefile
@@ -49,22 +49,31 @@ define Build/fullimage
 	rm $@.tmp
 endef
 
-define Build/loader-okli-compile
+define Build/loader-common
 	rm -rf $@.src
 	$(MAKE) -C lzma-loader \
 		PKG_BUILD_DIR="$@.src" \
 		TARGET_DIR="$(dir $@)" LOADER_NAME="$(notdir $@)" \
-		PLATFORM="lantiq" \
+		BOARD="$(BOARDNAME)" PLATFORM="lantiq" \
 		LZMA_TEXT_START=0x82000000 \
 		LOADADDR=0x80002000 \
-		FLASH_START=0x10000000 \
-		FLASH_OFFS=$(LOADER_FLASH_OFFS) \
-		FLASH_MAX=0x0 \
 		$(1) compile loader.bin
 	mv "$@.bin" "$@"
 	rm -rf $@.src
 endef
 
+define Build/loader-kernel
+	$(call Build/loader-common,LOADER_DATA="$@")
+endef
+
+define Build/loader-okli-compile
+	$(call Build/loader-common, \
+		FLASH_START=0x10000000 \
+		FLASH_OFFS=$(LOADER_FLASH_OFFS) \
+		FLASH_MAX=0x0 \
+	)
+endef
+
 define Build/prepend-loader-okli
 	cat "$(KDIR)/loader-$(word 1,$(1)).bin" "$@" >> "$@.new"
 	mv "$@.new" "$@"
diff --git a/target/linux/lantiq/image/ar9.mk b/target/linux/lantiq/image/ar9.mk
index 43f91d0ee4..5732a3432c 100644
--- a/target/linux/lantiq/image/ar9.mk
+++ b/target/linux/lantiq/image/ar9.mk
@@ -90,6 +90,8 @@ define Device/netgear_dgn3500
   DEVICE_MODEL := DGN3500
   SOC := ar9
   IMAGE_SIZE := 16000k
+  KERNEL := kernel-bin | append-dtb | lzma | loader-kernel | uImage none
+  KERNEL_INITRAMFS := $$(KERNEL)
   IMAGES := \
 	sysupgrade-na.bin sysupgrade.bin \
 	factory-na.img factory.img
@@ -121,6 +123,8 @@ define Device/netgear_dgn3500b
   DEVICE_MODEL := DGN3500B
   SOC := ar9
   IMAGE_SIZE := 16000k
+  KERNEL := kernel-bin | append-dtb | lzma | loader-kernel | uImage none
+  KERNEL_INITRAMFS := $$(KERNEL)
   IMAGES += factory.img
   IMAGE/sysupgrade.bin := \
 	append-kernel | append-rootfs | dgn3500-sercom-footer 0x0 "DE" | \
-- 
2.30.2