Loading PMU Firmware in JTAG Boot Mode - 2022.2 English

Zynq UltraScale+ MPSoC Software Developer Guide (UG1137)

Document ID
UG1137
Release Date
2022-11-02
Version
2022.2 English

PM operations depend on the configuration object loaded by FSBL from 2017.1 release onwards. Hence, In JTAG boot mode, it is mandatory to load PMU FW before loading FSBL. In device boot modes, loading of configuration object to PMU firmware by FSBL is handled both in CBR loading PMU firmware and FSBL loading PMU firmware options. Use the following steps to boot in JTAG mode:

  1. Disable security gates to view PMU MicroBlaze. PMU MicroBlaze is not visible in xsdb for Silicon v3.0 and above.
  2. Load PMU firmware and run.
  3. Load FSBL and run.
  4. Continue with U-Boot/Linux/user specific application.

Following is a complete Tcl script:

#Disable Security gates to view PMU MB target
targets -set -filter {name =~ "PSU"}

#By default, JTAGsecurity gates are enabled
#This disables security gates for DAP, PLTAP and PMU.
mwr 0xffca0038 0x1ff
after 500

#Load and run PMU FW
targets -set -filter {name =~ "MicroBlaze PMU"}
dow xpfw.elf
con
after 500

#Reset A53, load and run FSBL
targets -set -filter {name =~ "Cortex-A53 #0"}
rst -processor
dow fsbl_a53.elf
con

#Give FSBL time to run
after 5000
stop

#Other SW...
dow u-boot.elf
dow bl31.elf
con

#Loading bitstream to PL
Targets -set -nocase -filter {name =~ "*PL*"}
fpga download.bit