linux - 如何在 u-boot 和 linux 用户空间之间使用 crc 验证环境变量?

标签 linux u-boot

我正在为 beaglebone 开发板设置更新系统。为了在启动时实现验证,我需要能够在 linux 上修改 u-boot 环境变量。

为此,我使用了 yocto 项目提供的 fw_printenv 和 set_env。

当我尝试在 Linux 上读取或写入 u-boot env 时,出现以下错误:警告:CRC 错误,使用默认环境。

如果我在 linux 上保存 env 并重新启动,我会在 u-boot 提示符下得到同样的错误。

我可以在 u-boot 上禁用 CRC 验证,但这不是目标。

如何同步这两个CRC? 我是否需要始终一起编译 u-boot 和 fw-utils?

谢谢

最佳答案

你还没有配置用户空间端的东西来知道在哪里可以找到环境,所以在 Linux 中它给你默认值,当你写的时候你正在破坏真实的值。当您进入 U-Boot 时,它会检测到您现在的环境已损坏并使用默认设置。

关于linux - 如何在 u-boot 和 linux 用户空间之间使用 crc 验证环境变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56126538/

相关文章:

linux - WiringPi 非 root 访问 GPIO

Linux Shell脚本,以另一个用户身份杀死

linux - 关于/etc/fstab和chown

gdb - 如何从 uImage (arm) 中提取内核符号?

u-boot - Ubuntu 14.04有可用的 'uboot-mkimage'吗?

linux - 加载到板中的引导加载程序。每次重新启动时在不同位置启动时板卡住

Python:从 python 可执行文件读取/写入文件时出错

c - uboot编译错误

c - 将数字分配给指向 char 的指针

android - 写入cpu0/cpufreq/cpuinfo_min_freq : open failed: EACCES (Permission denied)