2.3.62. ETM_CONFIG

Provides control over the ARM ETM.

Syntax

ETM_CONFIG [,qualifier...]

where:

qualifier

Is a list of qualifiers. The possible qualifiers are described in List of qualifiers.

Description

The ETM_CONFIG command provides control over the ARM ETM. The arguments to a single invocation of the command specify a configuration of the ETM, so the presence or absence of qualifiers is relevant.

List of qualifiers

The list of qualifiers depends on the processor and Debug Interface. The command handler generates an error if a specific combination is invalid for a specific processor or Debug Interface, but this is determined when you issue the command. The possible qualifiers are:

addronly

Trace only address bus transfers. (Deprecated)

coprocessor

Enable coprocessor tracing. To disable, issue the command without this qualifier.

cycle_accurate

Enable cycle-accurate tracing, if the ETM supports it. To disable, issue the command without this qualifier.

demultiplex

Select the demultiplexed trace port transmission mode.

dataonly

Trace only data bus transfers.

datasuppression

Enables ETMv3 data suppression on FIFO full. This is supported only by ETMv3.

disableport

Disable the ETM trace port. To enable, issue the command without this qualifier.

extinN:value

External extended input selector register parts:

extin1:n

External extended input 1.

extin2:n

External extended input 2.

extin3:n

External extended input 3.

extin4:n

External extended input 4.

The value n of each part can be a value in the range 0 to 255, inclusive. However, the number of inputs, the range of values supported, and the default value of each input depends on the ETM you are using. For example, the ARM1136JF-S™ has two extended external inputs with values in the range zero to 20 and default values of zero.

Use the TRACEEXTCOND command to specify which input to test.

These inputs are supported only by ETMv3.1, and later.

FIFO_hw:n

Set the FIFO high-water mark to n.

filtercoprocessor

Enables filtering of CPRTs when data trace is enabled. This is supported only by ETMv3.

fulltrace

Trace both data and address bus transfers. (Deprecated)

half_rate

Enable half-rate clocking of the trace port by the ETM. For full-rate, issue the command without this qualifier.

mmap_decode:n

Set the ETM memory map value to n. This is an implementation-dependent value that varies depending on the memory map decode logic present in your system.

multiplex

Select the multiplexed trace port transmission mode.

nomultiplex

Select the normal (not multiplexed or demultiplexed) trace port transmission mode.

packauto

Selects the automatic packing mode for the TPA.

packnormal

Selects the normal packing mode for the TPA.

packdouble

Selects the double packing mode for the TPA.

packquad

Selects the quad packing mode for the TPA.

portratio:n

Enables ETMv3 port speed to ETM clock speed ratios to be set. This is supported only by ETMv3. Appropriate values for n are:

0

Use a 1:1 ratio.

1

Use a 1:2 ratio.

2

Use a 1:3 ratio.

3

Use a 1:4 ratio.

4

Use a 2:1 ratio.

5

Use dynamic ratio modes for on-chip trace.

6

Use the implementation-defined mode, if implemented by the ASIC designer.

port_width:n

Set the ETM port width, where n is one of:

0

4-bit port.

1

8-bit port.

2

16-bit port.

3

24-bit port.

4

32-bit port.

The 24-bit and 32-bit settings are supported only for ETB11™ connections using RealView ICE.

size:n

Set the ETM trace buffer size to n records.

stall_full

Enable processor stalling if the FIFO becomes full, if the ETM and processor support it. To disable, issue the command without this qualifier.

suppressdata

Suppress data tracing if the FIFO becomes full. To leave data tracing enabled, issue the command without this qualifier.

syncfrequency:n

For ETMv3, and later, a synchronization frequency register is used to define the time between synchronization points in the trace data. That is, the points where the trace tools start decompressing the trace output.

The synchronization frequency n can be a value in the range 100 to 4095, inclusive, with the default being 1024:

  • for ETMv3.0, the value is in cycles

  • for ETMv3.1 and later, the value is in bytes.

time_stamps

Enable time stamping if the ETM and trace capture hardware support it. To disable, issue the command without this qualifier.

twin

Not supported.

twinmaster

Not supported.

Examples

The following examples show how to use ETM_CONFIG:

ETM_CONFIG,port_width:0,coprocessor,fulltrace,size:10240

Set up the ETM for a 4-bit, full-rate, nonmultiplexed trace port, no stalling or timestamps, 10K trace records, address and data tracing, and in non cycle-accurate mode.

ETM_CONFIG,port_width:1,stall_full,multiplex,fulltrace,suppressdata,size:1024

Set up the ETM for an 8-bit, full-rate, multiplexed trace port, processor stalling and data suppression on FIFO full, no timestamps, 1024 trace records, address and data tracing, and in non cycle-accurate mode.

See also

Copyright © 2002-2011 ARM. All rights reserved.ARM DUI 0175N
Non-ConfidentialID052111