blob: 7ec83dd23ff21bdc405ea74bf937c163e9f565a0 [file] [log] [blame]
Pratik Patel61e91702013-01-27 20:30:42 -08001menuconfig CORESIGHT
2 bool "CoreSight Tracing Support"
Pratik Patel2963de42012-05-17 12:43:40 -07003 help
Pratik Patel61e91702013-01-27 20:30:42 -08004 CoreSight components are compliant with the ARM CoreSight
5 architecture specification and can be connected in various
6 topologies to suite a particular SoCs tracing needs. These trace
7 components can generally be classified as sources, links and
8 sinks. Trace data produced by one or more sources flows through
9 the intermediate links connecting the source to the currently
10 selected sink.
Pratik Patel2963de42012-05-17 12:43:40 -070011
Pratik Patel61e91702013-01-27 20:30:42 -080012 This framework provides an interface for the CoreSight debug and
13 trace drivers to register themselves with. It's intended to build
14 up a topological view of the CoreSight components and configure
15 the right series of components on user input via sysfs. It also
16 provides status information to user space applications through
17 sysfs interface.
Pratik Patel2963de42012-05-17 12:43:40 -070018
Pratik Patel61e91702013-01-27 20:30:42 -080019 If unsure, say 'N' here to avoid potential power, performance and
20 memory penalty.
21
22if CORESIGHT
23
24config HAVE_CORESIGHT_SINK
25 bool
26
Pratik Pateld944cc72013-02-08 11:52:12 -080027config CORESIGHT_CTI
28 bool "CoreSight Cross Trigger Interface driver"
29 help
30 This driver provides support for Cross Trigger Interface that is
31 used to input or output i.e. pass cross trigger events from one
32 hardware component to another. It can also be used to pass
33 software generated events.
34
Pratik Patel61e91702013-01-27 20:30:42 -080035config CORESIGHT_CSR
36 bool "CoreSight Slave Register driver"
37 help
38 This driver provides support for CoreSight Slave Register block
39 that hosts miscellaneous configuration registers.
40
41config CORESIGHT_TMC
42 bool "CoreSight Trace Memory Controller driver"
Pratik Pateld944cc72013-02-08 11:52:12 -080043 select CORESIGHT_CTI
Pratik Patel61e91702013-01-27 20:30:42 -080044 select CORESIGHT_CSR
45 select HAVE_CORESIGHT_SINK
46 help
47 This driver provides support for Trace Memory Controller which
48 can be configured as either an ETB (Embedded Trace Buffer),
49 ETR (Embedded Trace Router) or ETF (Embedded Trace Fifo). It acts
50 as sink when configured as ETB, ETR or ETF in circular buffer mode
51 whereas it is a link when configured as ETF in hardware fifo mode.
52
53 ETB collects trace data in a circular buffer whereas ETR can be
54 used to route trace data to memory allocated in RAM. ETF in
55 circular buffer mode is like an ETB whereas in hardware fifo mode
56 it is a fifo link.
57
58config CORESIGHT_TPIU
59 bool "CoreSight Trace Port Interface Unit driver"
60 select HAVE_CORESIGHT_SINK
61 help
62 This driver provides support for Trace Port Interface Unit which
63 acts as a conduit for offchip trace collection.
64
65config CORESIGHT_ETB
66 bool "CoreSight Embedded Trace Buffer driver"
67 select HAVE_CORESIGHT_SINK
68 help
69 This driver provides support for the legacy Embedded Trace Buffer
70 which is a circular buffer.
71
72if HAVE_CORESIGHT_SINK
73
74config CORESIGHT_FUNNEL
75 bool "CoreSight Funnel driver"
76 help
77 This driver provides support for Funnel which is a link that
78 typically has multiple input ports and a single output port. Input
79 trace data streams from the input ports are interleaved into a
80 single output trace data stream coming out of the output port.
81
82config CORESIGHT_REPLICATOR
83 bool "CoreSight Replicator driver"
84 help
85 This driver provides support for Replicator that typically has
86 a single input port and two output ports. Single trace data
87 stream on the input port is replicated to produce two identical
88 trace data output streams coming out of the two output ports.
89
90config CORESIGHT_STM
91 bool "CoreSight System Trace Macrocell driver"
92 help
93 This driver provides support for hardware assisted software
94 instrumentation based tracing. This is primarily useful for
95 logging useful software events or data.
96
97config CORESIGHT_STM_DEFAULT_ENABLE
98 bool "Turn on STM tracing by default"
99 depends on CORESIGHT_STM
Pratik Patel2963de42012-05-17 12:43:40 -0700100 help
101 Turns on CoreSight STM tracing (hardware assisted software
102 instrumentation based tracing) by default. Otherwise, tracing is
103 disabled by default but can be enabled via sysfs.
104
Pratik Patel61e91702013-01-27 20:30:42 -0800105 If unsure, say 'N' here to avoid potential power and performance
106 penalty.
Pratik Patel2963de42012-05-17 12:43:40 -0700107
Aparna Das3b8a7082013-04-02 13:51:13 -0700108config CORESIGHT_HWEVENT
109 bool "CoreSight Hardware Event driver"
110 depends on CORESIGHT_STM
111 select CORESIGHT_CSR
112 help
113 This driver provides support for monitoring and tracing CoreSight
114 Hardware Event across STM interface. It configures Coresight
115 Hardware Event mux control registers to select hardware events
116 based on user input.
117
Pratik Patel61e91702013-01-27 20:30:42 -0800118config CORESIGHT_ETM
119 bool "CoreSight Embedded Trace Macrocell driver"
120 help
121 This driver provides support for processor tracing which allows
122 tracing the instructions that the processor is executing. This is
123 primarily useful for instruction level tracing.
124
125config CORESIGHT_ETM_DEFAULT_ENABLE
126 bool "Turn on ETM tracing by default"
127 depends on CORESIGHT_ETM
Pratik Patel2963de42012-05-17 12:43:40 -0700128 help
129 Turns on CoreSight ETM tracing (processor tracing) by default.
130 Otherwise, tracing is disabled by default but can be enabled via
131 sysfs.
132
Pratik Patel61e91702013-01-27 20:30:42 -0800133 If unsure, say 'N' here to avoid potential power and performance
134 penalty.
Pushkar Joshi61af7182012-09-12 14:29:23 -0700135
Pratik Patel61e91702013-01-27 20:30:42 -0800136config CORESIGHT_ETM_PCSAVE_DEFAULT_ENABLE
Pratik Patel938e1ff2012-09-28 23:21:46 -0700137 bool "Turn on PC saving by default"
Pratik Patel61e91702013-01-27 20:30:42 -0800138 depends on CORESIGHT_ETM
Pratik Patel938e1ff2012-09-28 23:21:46 -0700139 help
140 Turns on program counter saving on reset by default. Otherwise,
141 PC saving is disabled by default but can be enabled via sysfs.
142
Pratik Patel61e91702013-01-27 20:30:42 -0800143 If unsure, say 'N' here to avoid potential power penalty.
Pratik Patel938e1ff2012-09-28 23:21:46 -0700144
Pratik Patel61e91702013-01-27 20:30:42 -0800145endif
146
147config CORESIGHT_EVENT
148 tristate "CoreSight Event driver"
Pushkar Joshi61af7182012-09-12 14:29:23 -0700149 help
Pratik Patel61e91702013-01-27 20:30:42 -0800150 This driver provides support for registering with various events
151 and performing CoreSight actions like aborting trace on their
152 occurrence.
Pushkar Joshi61af7182012-09-12 14:29:23 -0700153
Pratik Patel61e91702013-01-27 20:30:42 -0800154endif