cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Adventurer
Adventurer
845 Views
Registered: ‎04-16-2019

Generating FSBL in Petalinux vs SDK Flow

Jump to solution

Hello Xilinx Community,

What is the difference between generating a FSBL.elf using Petalinux vs SDK? Using the same hdf file, I beyond compared both fsbl files and there seemed to be a whole lot of differences. The petalinux fsbl.elf is working, and the SDK FSBL is not. 

Thanks,

Jonathan

0 Kudos
Reply
1 Solution

Accepted Solutions
Moderator
Moderator
797 Views
Registered: ‎09-12-2007

There should be no differences to the sources used to build. The difference might be the compiler options. For example, if you are using a ZCU102 board, the petalinux will set the extra compiler flags with this info (XPS_BOARD_ZCU102), this is needed to init the clocks, and reset the PHY on the board.

 

Are you using a custom board?

 

Also, by default the petalinux (yocto) is setup to delete the sources to save space. This can be disabled by adding INHERIT += "rm_work" in the file build/conf/local.conf.

 

You can then view the MAKE file used by Petalinux to build your FSBL in the ${TMPDIR}/work/aarch64-xilinx-linux/zynqmp_fsbl/1.0-r0/

Note: you can get the TMP dir in petalinux-config --> Yocto-settings --> TMPDIR.

View solution in original post

0 Kudos
Reply
4 Replies
Moderator
Moderator
798 Views
Registered: ‎09-12-2007

There should be no differences to the sources used to build. The difference might be the compiler options. For example, if you are using a ZCU102 board, the petalinux will set the extra compiler flags with this info (XPS_BOARD_ZCU102), this is needed to init the clocks, and reset the PHY on the board.

 

Are you using a custom board?

 

Also, by default the petalinux (yocto) is setup to delete the sources to save space. This can be disabled by adding INHERIT += "rm_work" in the file build/conf/local.conf.

 

You can then view the MAKE file used by Petalinux to build your FSBL in the ${TMPDIR}/work/aarch64-xilinx-linux/zynqmp_fsbl/1.0-r0/

Note: you can get the TMP dir in petalinux-config --> Yocto-settings --> TMPDIR.

View solution in original post

0 Kudos
Reply
Adventurer
Adventurer
792 Views
Registered: ‎04-16-2019

Yes I am using a custom board. Could you to point me to where these extra compiler flags are located? Currently, I am having trouble with bringing up GEM3 (correct) when booting up U-boot, I am currently configured to connect to GEM2 (incorrect).

0 Kudos
Reply
Moderator
Moderator
782 Views
Registered: ‎09-12-2007

i dont think the reason i described previously is related here. so you are saying in uboot this works, but in sdk it doesnt? how are you testing the ethernet here. are you using lwip? the difference over u-boot v baremetal would be the devicetree. if yiu are using a custom board, im assuming you have updated the gem node in the system-user.dtsi. also, the lwip doesnt support all phy types.

 

how are you testing in baremetal?

0 Kudos
Reply
Adventurer
Adventurer
770 Views
Registered: ‎04-16-2019
Yes, we are steering away from the original question. I will make another post on here about bringing up the correct GEM node for u-boot.

Thank you for the help!
0 Kudos
Reply