Embedded Trace Macrocell
ARM DDI 0500D
Copyright © 2013-2014 ARM. All rights reserved.
13-8
ID021414
Non-Confidential
13.5
Modes of operation and execution
The following sections describes how to control ETM trace unit programming.
13.5.1
Controlling ETM trace unit programming
When programming the ETM trace unit registers, you must enable all the changes at the same
time. For example, if the counter is reprogrammed, it might start to count based on incorrect
events, before the trigger condition has been correctly set up.
You must use the ETM trace unit main enable in the TRCPRGCTLR to disable all trace
operations during programming. See
Programming Control Register
on page 13-13
.
Figure 13-2
shows the procedure to follow.
Figure 13-2 Programming ETM trace unit registers
The Cortex-A53 processor does not have to be in the debug state while you program the ETM
trace unit registers.
13.5.2
Programming and reading ETM trace unit registers
You program and read the ETM trace unit registers using the Debug APB interface. This
provides a direct method of programming the ETM trace unit.
Start
Set main enable bit in
TRCPRGCTLR to 0b0
Read TRCSTATR
Is TRCSTATR Idle
0b1?
Program all trace
registers required
Set main enable bit in
TRCPRGCTLR to 0b1
Is TRCSTATR Idle
0b0?
End
Yes
Yes
No
No
Read TRCSTATR