[openwrt/openwrt] ramips: lzma-loader: make FLASH_START configurable

LEDE Commits lede-commits at lists.infradead.org
Thu Sep 3 08:15:45 EDT 2020


adrian pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/cac9e3e2cb2327442406645b261f2861c2263cd5

commit cac9e3e2cb2327442406645b261f2861c2263cd5
Author: Chuanhong Guo <gch981213 at gmail.com>
AuthorDate: Wed Sep 2 14:22:29 2020 +0800

    ramips: lzma-loader: make FLASH_START configurable
    
    FLASH_START is supposed to point at the memory area where NOR flash are
    mapped. We currently have an incorrect FLASH_START copied from ar71xx
    back then and the loader doesn't work under OKLI mode.
    On ramips, mt7621 has it's flash mapped to 0x1fc00000 and other SoCs
    uses 0x1c000000. This commit makes FLASH_START a configurable value to
    handle both cases.
    
    Signed-off-by: Chuanhong Guo <gch981213 at gmail.com>
---
 target/linux/ramips/image/lzma-loader/Makefile     | 2 ++
 target/linux/ramips/image/lzma-loader/src/Makefile | 5 +++++
 target/linux/ramips/image/lzma-loader/src/loader.c | 5 +----
 3 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/target/linux/ramips/image/lzma-loader/Makefile b/target/linux/ramips/image/lzma-loader/Makefile
index f22151c9d7..4cf700d8c6 100644
--- a/target/linux/ramips/image/lzma-loader/Makefile
+++ b/target/linux/ramips/image/lzma-loader/Makefile
@@ -13,6 +13,7 @@ LOADER		:= loader.bin
 LOADER_NAME	:= $(basename $(notdir $(LOADER)))
 LOADER_DATA 	:=
 TARGET_DIR	:=
+FLASH_START	:=
 FLASH_OFFS	:=
 FLASH_MAX	:=
 BOARD		:=
@@ -40,6 +41,7 @@ loader-compile: $(PKG_BUILD_DIR)/.prepared
 	$(MAKE) -C $(PKG_BUILD_DIR) CROSS_COMPILE="$(TARGET_CROSS)" \
 		LZMA_TEXT_START=$(LZMA_TEXT_START) \
 		LOADER_DATA=$(LOADER_DATA) \
+		FLASH_START=$(FLASH_START) \
 		FLASH_OFFS=$(FLASH_OFFS) \
 		FLASH_MAX=$(FLASH_MAX) \
 		BOARD="$(BOARD)" \
diff --git a/target/linux/ramips/image/lzma-loader/src/Makefile b/target/linux/ramips/image/lzma-loader/src/Makefile
index d20cd77346..97fd6dad47 100644
--- a/target/linux/ramips/image/lzma-loader/src/Makefile
+++ b/target/linux/ramips/image/lzma-loader/src/Makefile
@@ -19,6 +19,7 @@ LOADADDR	:=
 LZMA_TEXT_START	:= 0x80a00000
 LOADER_DATA	:=
 BOARD		:=
+FLASH_START	:=
 FLASH_OFFS	:=
 FLASH_MAX	:=
 PLATFORM	:=
@@ -64,6 +65,10 @@ ifneq ($(strip $(KERNEL_CMDLINE)),)
 CFLAGS		+= -DCONFIG_KERNEL_CMDLINE='"$(KERNEL_CMDLINE)"'
 endif
 
+ifneq ($(strip $(FLASH_START)),)
+CFLAGS		+= -DCONFIG_FLASH_START=$(FLASH_START)
+endif
+
 ifneq ($(strip $(FLASH_OFFS)),)
 CFLAGS		+= -DCONFIG_FLASH_OFFS=$(FLASH_OFFS)
 endif
diff --git a/target/linux/ramips/image/lzma-loader/src/loader.c b/target/linux/ramips/image/lzma-loader/src/loader.c
index c73b60b351..a3513eccf1 100644
--- a/target/linux/ramips/image/lzma-loader/src/loader.c
+++ b/target/linux/ramips/image/lzma-loader/src/loader.c
@@ -28,9 +28,6 @@
 #include "printf.h"
 #include "LzmaDecode.h"
 
-#define AR71XX_FLASH_START	0x1f000000
-#define AR71XX_FLASH_END	0x1fe00000
-
 #define KSEG0			0x80000000
 #define KSEG1			0xa0000000
 
@@ -178,7 +175,7 @@ static void lzma_init_data(void)
 	unsigned long kernel_ofs;
 	unsigned long kernel_size;
 
-	flash_base = (unsigned char *) KSEG1ADDR(AR71XX_FLASH_START);
+	flash_base = (unsigned char *) KSEG1ADDR(CONFIG_FLASH_START);
 
 	printf("Looking for OpenWrt image... ");
 



More information about the lede-commits mailing list