Debugging BL31

Setting a breakpoint for BL1 is simple, but how do we set a breakpoint for BL31?

In the tabs panel at the bottom, click the plus (+) and add other views. Here there are multiple views available such as Register View and Memory View.

For this example, we are only interested in the Functions view.

Image Alt Text:add functions alt-textFigure 1. Add functions tab

Search for bl31_entrypoint using the flashlight icon and set a breakpoint. Press continue.

Image Alt Text:bl31 breakpoint 1 alt-textFigure 2. BL31 breakpoint 1

Observe the application processor console output. TF-A proceeds from BL1 to BL2 to BL31.

After reaching BL31, Neoverse N2 Core 0 stops on the breakpoint.

Image Alt Text:bl31 breakpoint 2 alt-textFigure 3. BL31 breakpoint 2