QSPI/SD booting fails when EMIO TPIU is enabled.
I enabled DEBUG_FSBL_INFO, but there is no message outputted.
Also JTAG cannot be connected via XMD.
Why does this happen and what is the work-around?
When EMIO TPIU is enabled, external input clock can be select for TRACE_CLK by setting bit6 of DBG_CLK_CTRL.
However there is a limitation that PL must be powered and configured before setting the TPIU register.
During the QSPI/SD boot, FSBL switches TRACE_CLK to EMIO and after that it writes into the TPIU CurrentSize register (0xf8803004).
This causes the system to hang, because there is no active clock input to the Debug sub-system.
This register write is NOT necessary and the debugger can change the CurrentSize after the system is up and running.
To resolve this issue comment out the write to 0xf8803004 in the ps7_init.c file.
Answer Number | Answer Title | Version Found | Version Resolved |
---|---|---|---|
46915 | Zynq-7000 Debug - Setup the TRACE port via EMIO on the ZC702 board | N/A | N/A |
AR# 60755 | |
---|---|
Date | 06/13/2018 |
Status | Active |
Type | General Article |
Devices | |
Tools | |
Boards & Kits |