取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
Highlighted
Adventurer
Adventurer
458 次查看
注册日期: ‎11-08-2019

BOOT.BIN不包含bl31.elf时启动报错

跳至解决方案

自己生成的BOOT.BIN可以正常启动,但当去掉ARM Trusted Firmware(bl31.elf)时,启动报错

Xilinx Zynq MPFirst Stage Boot Loader

Release 2018.3 Jun 11 2020 - 09:43:49

"Synchronous Abort" Hander ,esr 0x5e000000

ELR:8001db8

LR:f7ba0

x0:00000000c2000001 x1:0000000000000000

x2:0000000000000000 x3:00000000000f7bd0

...

x28:0000000000000100 x29:00000000000f7b70

Resetting CPU ...

reseting ...

"Synchronous Abort" Hander ,esr 0x5e000000

ELR:8001db8

LR:f7ba0

.............

 

 

/*-------------------------------------感谢您的回复,谢谢-------------------------------------*/
0 项奖励
1 解答

已接受的解答
Highlighted
Xilinx Employee
Xilinx Employee
422 次查看
注册日期: ‎06-19-2019

如果你的BOOT.bin中包含有U-boot或者Kernel,那么你必须要包含ATF。

因为U-boot或者Kernel要访问EL-3级别的寄存器的时候,必须要通过ATF来实现。

------------------------------------------------------------------
Don't forget to reply, kudo, and accept as solution.
如果提供的信息能解决您的问题,请标记为“接受为解决方案”。
如果您认为帖子有帮助,请点击“奖励”。谢谢!
-------------------------------------------------------------------

在原帖中查看解决方案

8 回复数
Highlighted
Xilinx Employee
Xilinx Employee
423 次查看
注册日期: ‎06-19-2019

如果你的BOOT.bin中包含有U-boot或者Kernel,那么你必须要包含ATF。

因为U-boot或者Kernel要访问EL-3级别的寄存器的时候,必须要通过ATF来实现。

------------------------------------------------------------------
Don't forget to reply, kudo, and accept as solution.
如果提供的信息能解决您的问题,请标记为“接受为解决方案”。
如果您认为帖子有帮助,请点击“奖励”。谢谢!
-------------------------------------------------------------------

在原帖中查看解决方案

Highlighted
Xilinx Employee
Xilinx Employee
420 次查看
注册日期: ‎09-14-2018

@gplyea1 

如果是裸机程序的BOOT.bin的话,正常可以不用bl31.elf.

你的bif文件是怎样的?

----------------------------------------------------------------------------------------------
如果帖子有帮助,别忘“接受为解决方案”或“奖励”。谢谢!
Don't forget to "Accept as solution" or "Kudo" if it helps. Thanks!
----------------------------------------------------------------------------------------------

 

0 项奖励
Highlighted
Adventurer
Adventurer
407 次查看
注册日期: ‎11-08-2019
//arch = zynqmp;split = false; format = BIN

the_ROM_image:

{

  [fsbl_config]a53_x64

  [bootloader]./zynqmp_fsbl.elf

  [pmufw_image]./pmufw.elf

  [destination_device = pl]./system.bit

  [destination_cpu = a53-0, exception_level = el-3, trustzone] ./bl31.elf

  [destination_cpu = a53-0, exception_level = el-2]./u-boot.elf

}

不是裸机程序,有包含uboot和kernel。

1.pmufw.elf(电源管理和功耗控制?)呢,这个可以不包含吗?

2.启动log

Xilinx Zynq MP First Stage Boot Loader
Release 2018.3 Jun 11 2020 - 09:43:49
NOTICE: ATF running on ZCZU2EG/silicon v4/RTL5.1 at 0xfffea000
NOTICE: BL31 : Secure code at 0x0
NOTICE: BL31: Non Secure code at 0x8000000
NOTICE: BL31: v1.5(release):
NOTICE: BL31: Built : 14:30:37, Dec 19 2019
PMUFW:v1.1

uboot(U-Boot 2.18.01(Jun 11 2020 - 09:55:58 +0800) Xilinx ZynqMp ZCU102 rev1.0)

有发现,fsbl启动打印完PMUFW:v1.1后会卡个几百ms才执行到uboot(U-Boot 2.18.01(Jun 11 2020 - 09:55:58 +0800) Xilinx ZynqMp ZCU102 rev1.0)

3.上电到执行到uboot,耗时大概2秒多,请问这个有优化的空间吗

 

/*-------------------------------------感谢您的回复,谢谢-------------------------------------*/
0 项奖励
Highlighted
Xilinx Employee
Xilinx Employee
396 次查看
注册日期: ‎06-19-2019

你要使用u-boot或者kernel的话,pmufw也是不能少的,你可以参考ug1209,Boot and Configuration章节。

要优化或者估算启动时间的话,你可以看一下这个AR。

https://www.xilinx.com/support/answers/67475.html

------------------------------------------------------------------
Don't forget to reply, kudo, and accept as solution.
如果提供的信息能解决您的问题,请标记为“接受为解决方案”。
如果您认为帖子有帮助,请点击“奖励”。谢谢!
-------------------------------------------------------------------
0 项奖励
Highlighted
Adventurer
Adventurer
370 次查看
注册日期: ‎11-08-2019

请问AR提到的optimization level怎么改为standard / optimized

/*-------------------------------------感谢您的回复,谢谢-------------------------------------*/
0 项奖励
Highlighted
Xilinx Employee
Xilinx Employee
362 次查看
注册日期: ‎06-19-2019

AR中下载的表格的Main页中,optimization level有下拉框可以选择的。

 

------------------------------------------------------------------
Don't forget to reply, kudo, and accept as solution.
如果提供的信息能解决您的问题,请标记为“接受为解决方案”。
如果您认为帖子有帮助,请点击“奖励”。谢谢!
-------------------------------------------------------------------
0 项奖励
Highlighted
Adventurer
Adventurer
358 次查看
注册日期: ‎11-08-2019

main页是计算出启动时间供参考,但实际在板子上跑的程序怎么实现optimized mode呢

/*-------------------------------------感谢您的回复,谢谢-------------------------------------*/
0 项奖励
Highlighted
Xilinx Employee
Xilinx Employee
325 次查看
注册日期: ‎06-19-2019

其实就是FLASH的时钟变快了,你可以在BootRom Times页看到standard和optimized的时钟。

------------------------------------------------------------------
Don't forget to reply, kudo, and accept as solution.
如果提供的信息能解决您的问题,请标记为“接受为解决方案”。
如果您认为帖子有帮助,请点击“奖励”。谢谢!
-------------------------------------------------------------------
0 项奖励