AR# 75401

|

Zynq UltraScale+ MPSoC/RFSoC: Linux or U-Boot reboot hangs when XSCT debugger is connected

Description

When issuing a reboot command from Linux or U-Boot the device will halt if the XSCT debugger is connected.

Below is an example of the targets shown by XSCT before the reboot command was issued.

xsct% ta

  1  PS TAP

     2  PMU

     3  PL

  4  PSU

     5  RPU (Reset)

        6  Cortex-R5 #0 (No Power)

        7  Cortex-R5 #1 (No Power)

     8  APU

        9  Cortex-A53 #0 (Running)

       10  Cortex-A53 #1 (Running)

       11  Cortex-A53 #2 (Running)

       12  Cortex-A53 #3 (Running)

Solution

This behavior is expected because the XSCT debugger will halt the processor at 0xFFFF0000 upon a reboot (system reset).

xsct% Info: Cortex-A53 #0 (target 9) Stopped at 0xffff0000 (Reset Catch)

xsct% ta

  1  PS TAP

     2  PMU

     3  PL

  4  PSU

     5  RPU (Reset)

        6  Cortex-R5 #0 (RPU Reset)

        7  Cortex-R5 #1 (RPU Reset)

     8  APU

        9  Cortex-A53 #0 (Reset Catch, EL3(S)/A64)

       10  Cortex-A53 #1 (Reset)

       11  Cortex-A53 #2 (Reset)

       12  Cortex-A53 #3 (Reset)


In order to continue the boot flow, the user must target the processor which was halted and issue a "continue" command.

xsct% ta 9

xsct% con

Info: Cortex-A53 #0 (target 9) Running

xsct%

Another possible option is to disconnect the XSCT debugger prior to issuing the reboot command from Linux or U-Boot.

Linked Answer Records

Associated Answer Records

Answer Number Answer Title Version Found Version Resolved
69143 Zynq UltraScale+ MPSoC: Connecting XSDB to Linux CPU idle N/A N/A
AR# 75401
Date 07/24/2020
Status Active
Type General Article
Devices
People Also Viewed