ZynqMP boot: no messages from SPL other than "Debug uart enabled"

Michal Simek michal.simek at xilinx.com
Tue Apr 28 11:33:32 CEST 2020


On 28. 04. 20 11:29, Major A wrote:
> Hi Michal,
> 
>>> Thanks for your script, I tried it, it can extract the PMU config object
>>> from the FSBL generated by Vitis, but the SD card I prepare this way
>>> still doesn't boot.
>>>
>>> It does one thing differently than before, though: the line
>>>
>>>     ### ERROR ### Please RESET the board ###
>>
>> Can you please try xilinx u-boot master branch instead?
> 
> Sadly, the result is exactly the same as before.  BTW, the Rev1.1
> changes are not in master yet, I had to enter them manually.
> 
>> Tap delay programming can be one of the reason.
>> But the best would be to load it via jtag and look at backtrace where
>> the problem is.
> 
> How do I debug it via JTAG?  Any instructions on that somewhere?

here is xsdb script which loads it via jtag.


+connect
+targets -set -filter {name =~ "PSU"}
+
+set status [mrd -force -value 0xFFCA0038]
+set status [expr $status | 0x1C0]
+mwr -force 0xFFCA0038 $status
+
+targets -set -filter {name =~ "MicroBlaze PMU"}
+dow pmu.elf
+con
+
+
+targets -set -filter {name =~ "PSU"}
+mwr 0xffff0000 0x14000000
+mask_write 0xFD1A0104 0x501 0x0
+
+after 1000
+
+
+targets -set -filter {name =~ "Cortex-A53 #0"}
+stop
+dow -data u-boot-spl-dtb.bin  0xfffc0000
+memmap -file u-boot-spl
+rwr pc 0xfffc0000
+bpadd -addr &udelay
+
+if { [catch {con -block -timeout 3000} msg] } {
+       puts "err: $msg"
+       exit
+       # do something to handle the error
+}
+

At this stage your DDR should be up and running. You can check it by mrd
0 10 for example to see if DDR is stable


+bpremove 0
+
+dow -data u-boot.itb 0x10000000

Then this shouldn't fail.

+con

And if you get to reset then you stop cpu and you can call bt to get
trace where you were.

Thanks,
Michal


More information about the U-Boot mailing list