Hi,

> -----Original Message-----
> From: openwrt-devel [mailto:[email protected]]
> On Behalf Of Chuanhong Guo
> Sent: Mittwoch, 2. September 2020 08:22
> To: [email protected]
> Cc: Chuanhong Guo <[email protected]>
> Subject: [PATCH 1/3] 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 <[email protected]>
> ---
>  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
> -

Am I understanding this right, that if FLASH_START is not defined and set in 
ramips/image/Makefile, then compilation will fail here as the 
CONFIG_FLASH_START symbol is not defined?

Best

Adrian

>  #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... ");
> 
> --
> 2.26.2
> 
> 
> _______________________________________________
> openwrt-devel mailing list
> [email protected]
> https://lists.openwrt.org/mailman/listinfo/openwrt-devel

Attachment: openpgp-digital-signature.asc
Description: PGP signature

_______________________________________________
openwrt-devel mailing list
[email protected]
https://lists.openwrt.org/mailman/listinfo/openwrt-devel

Reply via email to