libopencm3
A free/libre/open-source firmware library for various ARM Cortex-M3 microcontrollers.
Cortex-M Instrumentation Trace Macrocell (ITM)
Collaboration diagram for Cortex-M Instrumentation Trace Macrocell (ITM):

Macros

#define ITM_STIM8(n)   (MMIO8(ITM_BASE + ((n)*4)))
 
#define ITM_STIM16(n)   (MMIO16(ITM_BASE + ((n)*4)))
 
#define ITM_STIM32(n)   (MMIO32(ITM_BASE + ((n)*4)))
 
#define ITM_TER   (&MMIO32(ITM_BASE + 0xE00))
 
#define ITM_TPR   MMIO32(ITM_BASE + 0xE40)
 
#define ITM_TCR   MMIO32(ITM_BASE + 0xE80)
 
#define ITM_LSR   MMIO32(ITM_BASE + CORESIGHT_LSR_OFFSET)
 
#define ITM_LAR   MMIO32(ITM_BASE + CORESIGHT_LAR_OFFSET)
 
#define ITM_STIM_FIFOREADY   (1 << 0)
 
#define ITM_TCR_BUSY   (1 << 23)
 
#define ITM_TCR_TRACE_BUS_ID_MASK   (0x3f << 16)
 
#define ITM_TCR_TSPRESCALE_NONE   (0 << 8)
 
#define ITM_TCR_TSPRESCALE_DIV4   (1 << 8)
 
#define ITM_TCR_TSPRESCALE_DIV16   (2 << 8)
 
#define ITM_TCR_TSPRESCALE_DIV64   (3 << 8)
 
#define ITM_TCR_TSPRESCALE_MASK   (3 << 8)
 
#define ITM_TCR_SWOENA   (1 << 4)
 
#define ITM_TCR_TXENA   (1 << 3)
 
#define ITM_TCR_SYNCENA   (1 << 2)
 
#define ITM_TCR_TSENA   (1 << 1)
 
#define ITM_TCR_ITMENA   (1 << 0)
 

Detailed Description

Macro Definition Documentation

◆ ITM_LAR

#define ITM_LAR   MMIO32(ITM_BASE + CORESIGHT_LAR_OFFSET)

Definition at line 53 of file itm.h.

◆ ITM_LSR

#define ITM_LSR   MMIO32(ITM_BASE + CORESIGHT_LSR_OFFSET)

Definition at line 51 of file itm.h.

◆ ITM_STIM16

#define ITM_STIM16 (   n)    (MMIO16(ITM_BASE + ((n)*4)))

Definition at line 38 of file itm.h.

◆ ITM_STIM32

#define ITM_STIM32 (   n)    (MMIO32(ITM_BASE + ((n)*4)))

Definition at line 39 of file itm.h.

◆ ITM_STIM8

#define ITM_STIM8 (   n)    (MMIO8(ITM_BASE + ((n)*4)))

Definition at line 37 of file itm.h.

◆ ITM_STIM_FIFOREADY

#define ITM_STIM_FIFOREADY   (1 << 0)

Definition at line 61 of file itm.h.

◆ ITM_TCR

#define ITM_TCR   MMIO32(ITM_BASE + 0xE80)

Definition at line 48 of file itm.h.

◆ ITM_TCR_BUSY

#define ITM_TCR_BUSY   (1 << 23)

Definition at line 77 of file itm.h.

◆ ITM_TCR_ITMENA

#define ITM_TCR_ITMENA   (1 << 0)

Definition at line 90 of file itm.h.

◆ ITM_TCR_SWOENA

#define ITM_TCR_SWOENA   (1 << 4)

Definition at line 86 of file itm.h.

◆ ITM_TCR_SYNCENA

#define ITM_TCR_SYNCENA   (1 << 2)

Definition at line 88 of file itm.h.

◆ ITM_TCR_TRACE_BUS_ID_MASK

#define ITM_TCR_TRACE_BUS_ID_MASK   (0x3f << 16)

Definition at line 78 of file itm.h.

◆ ITM_TCR_TSENA

#define ITM_TCR_TSENA   (1 << 1)

Definition at line 89 of file itm.h.

◆ ITM_TCR_TSPRESCALE_DIV16

#define ITM_TCR_TSPRESCALE_DIV16   (2 << 8)

Definition at line 82 of file itm.h.

◆ ITM_TCR_TSPRESCALE_DIV4

#define ITM_TCR_TSPRESCALE_DIV4   (1 << 8)

Definition at line 81 of file itm.h.

◆ ITM_TCR_TSPRESCALE_DIV64

#define ITM_TCR_TSPRESCALE_DIV64   (3 << 8)

Definition at line 83 of file itm.h.

◆ ITM_TCR_TSPRESCALE_MASK

#define ITM_TCR_TSPRESCALE_MASK   (3 << 8)

Definition at line 84 of file itm.h.

◆ ITM_TCR_TSPRESCALE_NONE

#define ITM_TCR_TSPRESCALE_NONE   (0 << 8)

Definition at line 80 of file itm.h.

◆ ITM_TCR_TXENA

#define ITM_TCR_TXENA   (1 << 3)

Definition at line 87 of file itm.h.

◆ ITM_TER

#define ITM_TER   (&MMIO32(ITM_BASE + 0xE00))

Definition at line 42 of file itm.h.

◆ ITM_TPR

#define ITM_TPR   MMIO32(ITM_BASE + 0xE40)

Definition at line 45 of file itm.h.