cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Highlighted
Participant
Participant
864 Views
Registered: ‎07-05-2011

Can't boot with petalinux 2018.3: XFSBL_ERROR_SD_F_OPEN

Hello!

I'm trying to boot UltraZed-EV board with carrier card from an SD card.

I've made the following steps:

  • Create a simple PL project with block design and PS core with disabled PL AXI ports, enabled SD1 interface, UARTs, correct voltages and DDR settings. Build bitstream, export hardware.
  • Create an empty petalinux project
  • Import hardware to it
  • Build, generate BOOT.BIN

Just that - a minimal linux-enabled hardware and default petalinux project.

When I make these steps with Vivado and petalinux of version 2018.2, system starts ok, I can login to linux.

When I try to reproduce the same steps via 2018.3 tools, the boot process hangs at FSBL stage.

I've enabled FSBL debug print and got the following:

 

Xilinx Zynq MP First Stage Boot Loader 
Release 2018.3   Feb 13 2019  -  03:26:36
Reset Mode	:	System Reset
Platform: Silicon (4.0), Cluster ID 0x80000000
Running on A53-0 (64-bit) Processor, Device Name: XCZU7EV
Processor Initialization Done 
================= In Stage 2 ============ 
SD1 Boot Mode 
SD: rc= 0
File name is BOOT.BIN
SD: Unable to open file BOOT.BIN: 13
XFSBL_ERROR_SD_F_OPEN
Boot Device Initialization failed 0x29
================= In Stage Err ============ 
Fsbl Error Status: 0x0

I'v added some additional debug prints via bbappending patches to fsbl recipe and tracked the problem to the XFsbl_GetDrvNumSD function in xfsbl_misc.c. It refuses to boot from the second SD-card interface (and falls back to the first) because of the undefined symbol XPAR_XSDPS_1_DEVICE_ID. That's where the track is cut off - I can't find any place where it should be defined neither in embeddedsw repo nor in the project directory. Leaving just correct ifdef branch does not help - boot process leads to some further errors, hence some global configuration seems missing.

Can anybody please help with this?

 

Further confusing fact is the following: the file xfsbl_misc.c is completely the same in 2018.2 version of the project, and XPAR_XSDPS_1_DEVICE_ID is not defined anywhere as well. But the project boots OK. But I didn't try to dig deeper to it.

 

2 Replies
Highlighted
Voyager
Voyager
808 Views
Registered: ‎05-30-2017

Hello @anatol,

I'm having similar problem to you with 2018.3 + EV carrier card. I haven't 2018.2. I think the problem is that Avnet didn't release until now BSP for petalinux 2018.3 but only 2018.2. Are you creating your petalinux projects 2018.2 and 2018.3 with or without Avnet BSP?

0 Kudos
Highlighted
Participant
Participant
793 Views
Registered: ‎07-05-2011

Yes, there is only 2018.2 BSP from Avnet and I'm not sure if 2018.3 BSP will exist at all.

My board boots OK at petalinux 2018.2 - either with Avnet BSP or without it.

And FSBL hangs at petalinux 2018.3 - either with out BSP or with an-attempt-to-port Avnet BSP.