TI中文支持网
TI专业的中文技术问题搜集分享网站

想把环境变量存储在Nand中,但是编译提示错误:CONFIG_ENV_OFFSET_REDUND must have CONFIG_CMD_SAVEENV & CONFIG_CMD_NAND

我用的是processor SDK Linux 05.02.00.10,am3358 + mt29F8G08ABABA

u-boot中默认是由TF卡启动,我改成了使用nand启动,使用saveenv保存环境变量时发现默认保存到TF卡上。

在menuconfig里的Environment->select the location of the environment->Environment in a NAND device选上,重新编译,错误提示:

CONFIG_ENV_OFFSET_REDUND must have CONFIG_CMD_SAVEENV & CONFIG_CMD_NAND

该错误产生在env/nand.c中:

#if defined(CONFIG_CMD_SAVEENV) && defined(CONFIG_CMD_NAND) && \
!defined(CONFIG_SPL_BUILD)
#define CMD_SAVEENV
#elif defined(CONFIG_ENV_OFFSET_REDUND)
#error CONFIG_ENV_OFFSET_REDUND must have CONFIG_CMD_SAVEENV & CONFIG_CMD_NAND
#endif

实际上CONFIG_CMD_SAVEENV和CONFIG_CMD_NAND都已经定义了。注意到正常流程中还有一个条件:!defined(CONFIG_SPL_BUILD)

不能定义CONFIG_SPL_BUILD,为什么呢?可在nand分区中有4个spl的位置,同时也有环境变量的位置啊?

谢谢各位!请指教。

Lihua Zhu:

去掉CONFIG_ENV_OFFSET_REDUND的定义可以编译,但是参数的备份区就无法使用了。

赞(0)
未经允许不得转载:TI中文支持网 » 想把环境变量存储在Nand中,但是编译提示错误:CONFIG_ENV_OFFSET_REDUND must have CONFIG_CMD_SAVEENV & CONFIG_CMD_NAND
分享到: 更多 (0)