linux - u-boot 在软重启时挂起
问题描述
我遇到了这个微妙的问题,如果我将我的 ARM 设备(U-boot + Linux)置于软重启周期(压力测试)下,它会在 100 多个周期后失败。我在失败的情况下捕获的串行输出是:
...
g_txrx_mode=1
g_profileid=1
id=0x1F11 board_type=0x0004 HAS_POE_SUPPORT=1
Not POE
read_rbf_header_from_ext4 - filename = e30.core.rbf filesize = 7317252
cff_from_mmc_ext4:writing e30.core.rbf length 13 num_files 0
Full Configuration Succeeded.
crestron_load_rbf: use core e30.core.rbf length 13 rval 1
Booting from primary
Writing to MMC(0)... done
dram_init: id 1f11 (id & 0x0001) 1 has_dsp/has_dante0
DDRCAL: Success
INFO : Skip relocation as SDRAM is non secure memory
Reserving 2048 Bytes for IRQ stack at: ffe2f708
DRAM : 512 MiB
成功重新启动后,接下来的打印行是:
WARNING: Caches not enabled
MMC: In: serial
Out: serial
Err: serial
似乎在“skip_relocation()”和“enable_caches()”之间失败了。但为什么要经过 100 多次尝试?会不会是内存问题?内存时序问题?我该如何调试它?
解决方案
推荐阅读
- r - 如何计算跨列字数的加权总和?
- php - 如何使用 htaccess 保护文件夹或目录
- java - 如何使用 Eclipse JDT AST 向 MethodInvocation 添加类型转换?
- python - Django 模型 - 当用户选择选项时如何添加子类型选项?
- perl - Perl Blowfish/CBC 加密和解密函数
- r - 在一个组内检查最后一行的值是否大于它之前的值
- javascript - Angular 2 路由器 ngIf 动态路由
- typescript - Angular material 6 flex table 使用调整大小符号单独调整列大小
- javascript - 如何使用 Axios 捕获 PHP 响应错误
- angular - 如何摆脱 Angular 6 服务中的冗余请求?