cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
kayas257
Contributor
Contributor
1,145 Views
Registered: ‎06-03-2018

u-boot preboot command is not in affect after upgrading to petalinux 2020.1

After upgrading to petalinux 2020.1 u boot doesn't behave as same in 2019.2,

1) platform-top.h file configs are not apllied

2) QSPI is not working

sf probe
DMA Timeout:0x0
SF: Detected n25q512a with page size 512 Bytes, erase size 128 KiB, total 128 MiB

3) MTD partitons are not populated in uboot

4) MAC address is not fetched from EEPROM(which was working 2019.2)

 

No changes done from 2019.2 config except this

do_configure_append () {
install ${WORKDIR}/platform-auto.h ${S}/include/configs/
install ${WORKDIR}/platform-top.h ${S}/include/configs/
}

 

Please let me know where I am going wrong

Tags (1)
0 Kudos
7 Replies
jrhtech
Voyager
Voyager
1,096 Views
Registered: ‎10-04-2017

  I also had the same do_configure_append command when I was using SD card; however, I was just working on getting QSPI work this week and had the same issue 'sf probe 0 0 0' was hanging.

  I ended up disabling u-boot autoconfigure and the 'sf probe' stopped hanging.   I have no idea why this fixed it since my platform-top had nothing obvious.  Try that and it might give you a hint to get past that issue.

 Also as a side note in case you are trying to load the image.ub from SD or eMMC.  The u-boot boot script will break because after loading the BOOT.BIN from QSPI it will try to get boot.scr to load the image.ub from QSPI also.  And when this fails it cause the boot process to fail.  I had to make a boot.scr that only supported mmc0 and mmc1 for this setup to work.

 

jeff

 

0 Kudos
kayas257
Contributor
Contributor
1,052 Views
Registered: ‎06-03-2018

Thanks for the reply @jrhtech  after your suggestion I disabled auto-conf so now sf probe is working and also mac address is being fetched from EEPROM.

I have another problem now, I had defined mtdparts in config, which is not working now,

ZynqMP> mtdparts
Device nor0 not found!

I get this error, any suggestion, is it because of incorrect device-tree?

PS: mtd partitions are recognized in Linux

0 Kudos
jrhtech
Voyager
Voyager
1,028 Views
Registered: ‎10-04-2017

Glad to hear it worked.  I don’t have any partitions since my image.ub is on my eMMC so can’t help there.

jeff

0 Kudos
aivchenko
Visitor
Visitor
893 Views
Registered: ‎12-06-2019

I found the same issue with u-boot configuration /project-spec/meta-user/recipes-bsp/u-boot/files/platform-top.h is ignored while /project-spec/configs/u-boot-xlnx and platform-auto.h are auto-generated.

What is the right place to add/change U-Boot configuration even simple like CONFIG_BOOTDELAY so it doesn't get blown away when I update XSA file?

 

0 Kudos
kayas257
Contributor
Contributor
879 Views
Registered: ‎06-03-2018

HI,

I have found all the solution using u-boot config instead of platform-top,h

CONFIG_USE_PREBOOT=y

CONFIG_PREBOOT=""

CONFIG_USE_BOOTCOMMAND=y

CONFIG_BOOTCOMMAND=""

CONFIG_BOOTDELAY=2

aivchenko
Visitor
Visitor
865 Views
Registered: ‎12-06-2019

yes, "petalinux-config -c u-boot" works and majority of variables can be set up there.

I can see files /project-spec/configs/u-boot-xlnx/config.cfg and platform-auto.h are generated after that (or after updating XSA so I cannot really edit them).

However I don't see that platform-top.h is included into u-boot - even if I add #error or #warning into this file it compiles.

Which is strange since u-boot-xlnx_%.bbappend states that both files are included from /project-spec/meta-user/recipes-bsp/u-boot

do_configure_append () {
<------>if [ "${U_BOOT_AUTO_CONFIG}" = "1" ]; then
<------><------>install ${WORKDIR}/platform-auto.h ${S}/include/configs/
<------><------>install ${WORKDIR}/platform-top.h ${S}/include/configs/
<------>fi
}

So I have two questions:

1. Is there a file where user CONFIG_... can be added/edited?

2. Is there a UGxxx which explains process of modifying U-Boot for zynqMP platform?

Thanks

0 Kudos
jrhtech
Voyager
Voyager
837 Views
Registered: ‎10-04-2017

It only includes it if you enable autoconfig in the petalinux config.

Jeff
0 Kudos