MTK平台 如何增加lk size

文摘 MediaTek 2020-02-1 阅读:7007

[DESCRIPTION]
正常情况下lk size为4M,如果有功能加入lk(比如eMMC,UFS固件),可能导致lk运行时heap size不够,出现如下异常:
[SECLIB_IMG_VERIFY] malloc memory for heap failed!!!
[1328] panic (caller 0x4c4205d9): ASSERT at (app/mt_boot/sec/img_utils.c:58): 0
这个异常是因lk size为4M,塞入eMMC、UFS等固件会增加lk RO data,导致heap size减少引起。

[SOLUTION]
解决方案是增加lk size,具体修改方案为:
target/$proj/rules.mk

ifeq ($(MTK_MLC_NAND_SUPPORT), yes)
DEFINES += MTK_MLC_NAND_SUPPORT
MEMSIZE := 0x00900000 # 9MB
else ifeq ($(MTK_TLC_NAND_SUPPORT), yes)
DEFINES += MTK_TLC_NAND_SUPPORT
MEMSIZE := 0x00900000 # 9MB
else
MEMSIZE := 0x00400000 # 4MB
endif

修改为

ifeq ($(MTK_MLC_NAND_SUPPORT), yes)
DEFINES += MTK_MLC_NAND_SUPPORT
MEMSIZE := 0x00900000 # 9MB
else ifeq ($(MTK_TLC_NAND_SUPPORT), yes)
DEFINES += MTK_TLC_NAND_SUPPORT
MEMSIZE := 0x00900000 # 9MB
else
MEMSIZE := 0x00900000 # 9MB
endif

MEMSIZE最大尺寸为9M,请不要超过这个值!!!

0条评论

© 2024 芯缘异码. Powered by Typecho