如何使用 itest 停止 U-Boot 宏

问题描述 投票:0回答:1

如何突然停止 U-Boot 命令序列?

我的例子是这样的:

我需要在 U-Boot 中创建一个 3 步宏:

  1. 使用 dhcp 将映像下载到内存。这设置文件大小
  2. 测试 $filesize > $SOMELIMIT,打印一条消息,然后停止
  3. 将下载的图像写入闪存。

我知道如何执行步骤 1 和 3,但不知道如何执行步骤 2。

我知道我可以使用U-Boot命令

itest
来测试整数值,但我不知道如何在if/else/endif子句中创建复合语句。 而且我不知道如何在这些条款之一中添加“中止宏”步骤。

建议?

u-boot
1个回答
2
投票

要测试 itest 的结果是否为真,您可以使用

if
命令。要离开宏,请使用
exit
命令:

setenv macro 'if itest $filesize > 2048; then exit; else echo bingo; fi; echo continuing'
setenv filesize 10000
run macro
© www.soinside.com 2019 - 2024. All rights reserved.