264 lines
		
	
	
		
			9.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			264 lines
		
	
	
		
			9.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| menuconfig CORESIGHT
 | |
| 	bool "CoreSight Tracing Support"
 | |
| 	help
 | |
| 	  CoreSight components are compliant with the ARM CoreSight
 | |
| 	  architecture specification and can be connected in various
 | |
| 	  topologies to suite a particular SoCs tracing needs. These trace
 | |
| 	  components can generally be classified as sources, links and
 | |
| 	  sinks. Trace data produced by one or more sources flows through
 | |
| 	  the intermediate links connecting the source to the currently
 | |
| 	  selected sink.
 | |
| 
 | |
| 	  This framework provides an interface for the CoreSight debug and
 | |
| 	  trace drivers to register themselves with. It's intended to build
 | |
| 	  up a topological view of the CoreSight components and configure
 | |
| 	  the right series of components on user input via sysfs. It also
 | |
| 	  provides status information to user space applications through
 | |
| 	  sysfs interface.
 | |
| 
 | |
| 	  If unsure, say 'N' here to avoid potential power, performance and
 | |
| 	  memory penalty.
 | |
| 
 | |
| if CORESIGHT
 | |
| 
 | |
| config CORESIGHT_EVENT
 | |
| 	tristate "CoreSight Event driver"
 | |
| 	help
 | |
| 	  This driver provides support for registering with various events
 | |
| 	  and performing CoreSight actions like aborting trace on their
 | |
| 	  occurrence. These events can be controlled by using module
 | |
| 	  parameters.
 | |
| 
 | |
| config HAVE_CORESIGHT_SINK
 | |
| 	bool
 | |
| 
 | |
| config CORESIGHT_FUSE
 | |
| 	bool "CoreSight Fuse driver"
 | |
| 	help
 | |
| 	  This driver provides support for CoreSight Fuse state checks that
 | |
| 	  other CoreSight drivers can query to determine existence of
 | |
| 	  Hardware functionality they support. Drivers can then take necessary
 | |
| 	  actions like failing the probe if the Hardware they manage is
 | |
| 	  functionally disabled.
 | |
| 
 | |
| config CORESIGHT_CTI
 | |
| 	bool "CoreSight Cross Trigger Interface driver"
 | |
| 	help
 | |
| 	  This driver provides support for Cross Trigger Interface that is
 | |
| 	  used to input or output i.e. pass cross trigger events from one
 | |
| 	  hardware component to another. It can also be used to pass
 | |
| 	  software generated events.
 | |
| 
 | |
| config CORESIGHT_CTI_SAVE_DISABLE
 | |
| 	bool "Turn off CTI save and restore"
 | |
| 	help
 | |
| 	  Turns off CoreSight CTI save and restore support for cpu CTIs. This
 | |
| 	  avoids voting for the clocks during probe as well as the associated
 | |
| 	  save and restore latency at the cost of breaking cpu CTI support on
 | |
| 	  targets where cpu CTIs have to be preserved across power collapse.
 | |
| 
 | |
| 	  If unsure, say 'N' here to avoid breaking cpu CTI support.
 | |
| 
 | |
| config CORESIGHT_CSR
 | |
| 	bool "CoreSight Slave Register driver"
 | |
| 	help
 | |
| 	  This driver provides support for CoreSight Slave Register block
 | |
| 	  that hosts miscellaneous configuration registers.
 | |
| 
 | |
| config CORESIGHT_TMC
 | |
| 	bool "CoreSight Trace Memory Controller driver"
 | |
| 	select CORESIGHT_CSR
 | |
| 	select HAVE_CORESIGHT_SINK
 | |
| 	help
 | |
| 	  This driver provides support for Trace Memory Controller which
 | |
| 	  can be configured as either an ETB (Embedded Trace Buffer),
 | |
| 	  ETR (Embedded Trace Router) or ETF (Embedded Trace Fifo). It acts
 | |
| 	  as sink when configured as ETB, ETR or ETF in circular buffer mode
 | |
| 	  whereas it is a link when configured as ETF in hardware fifo mode.
 | |
| 
 | |
| 	  ETB collects trace data in a circular buffer whereas ETR can be
 | |
| 	  used to route trace data to memory allocated in RAM. ETF in
 | |
| 	  circular buffer mode is like an ETB whereas in hardware fifo mode
 | |
| 	  it is a fifo link.
 | |
| 
 | |
| config CORESIGHT_TPIU
 | |
| 	bool "CoreSight Trace Port Interface Unit driver"
 | |
| 	select HAVE_CORESIGHT_SINK
 | |
| 	help
 | |
| 	  This driver provides support for Trace Port Interface Unit which
 | |
| 	  acts as a conduit for offchip trace collection.
 | |
| 
 | |
| if HAVE_CORESIGHT_SINK
 | |
| 
 | |
| config CORESIGHT_FUNNEL
 | |
| 	bool "CoreSight Funnel driver"
 | |
| 	help
 | |
| 	  This driver provides support for Funnel which is a link that
 | |
| 	  typically has multiple input ports and a single output port. Input
 | |
| 	  trace data streams from the input ports are interleaved into a
 | |
| 	  single output trace data stream coming out of the output port.
 | |
| 
 | |
| config CORESIGHT_REPLICATOR
 | |
| 	bool "CoreSight Replicator driver"
 | |
| 	help
 | |
| 	  This driver provides support for Replicator that typically has
 | |
| 	  a single input port and two output ports. Single trace data
 | |
| 	  stream on the input port is replicated to produce two identical
 | |
| 	  trace data output streams coming out of the two output ports.
 | |
| 
 | |
| config CORESIGHT_TPDA
 | |
| 	bool "CoreSight Trace, Profiling & Diagnostics Aggregator driver"
 | |
| 	help
 | |
| 	  This driver provides support for configuring aggregator. This is
 | |
| 	  primarily useful for pulling the data sets from one or more
 | |
| 	  attached monitors and pushing the resultant data out. Multiple
 | |
| 	  monitors are connected on different input ports of TPDA.
 | |
| 
 | |
| config CORESIGHT_TPDM
 | |
| 	bool "CoreSight Trace, Profiling & Diagnostics Monitor driver"
 | |
| 	help
 | |
| 	  This driver provides support for configuring monitor. Monitors are
 | |
| 	  primarily responsible for data set collection and support the
 | |
| 	  ability to collect any permutation of data set types. Monitors are
 | |
| 	  also responsible for interaction with system cross triggering.
 | |
| 
 | |
| config CORESIGHT_TPDM_DEFAULT_ENABLE
 | |
| 	bool "Turn on TPDM tracing by default"
 | |
| 	depends on CORESIGHT_TPDM
 | |
| 	help
 | |
| 	  Turns on CoreSight TPDM tracing for different data set types by
 | |
| 	  default. Otherwise, tracing is disabled by default but can be
 | |
| 	  enabled via sysfs.
 | |
| 
 | |
| 	  If unsure, say 'N' here to avoid potential power and performance
 | |
| 	  penalty.
 | |
| 
 | |
| config CORESIGHT_DBGUI
 | |
| 	bool "CoreSight DebugUI driver"
 | |
| 	help
 | |
| 	  This driver provides support for DebugUI that helps to capture
 | |
| 	  the value at a specified address. It allows configuring DebugUI
 | |
| 	  to select specified address and trigger mode based on user
 | |
| 	  input.
 | |
| 
 | |
| config CORESIGHT_STM
 | |
| 	bool "CoreSight System Trace Macrocell driver"
 | |
| 	help
 | |
| 	  This driver provides support for hardware assisted software
 | |
| 	  instrumentation based tracing. This is primarily useful for
 | |
| 	  logging useful software events or data.
 | |
| 
 | |
| config CORESIGHT_STM_DEFAULT_ENABLE
 | |
| 	bool "Turn on STM tracing by default"
 | |
| 	depends on CORESIGHT_STM
 | |
| 	help
 | |
| 	  Turns on CoreSight STM tracing (hardware assisted software
 | |
| 	  instrumentation based tracing) by default. Otherwise, tracing is
 | |
| 	  disabled by default but can be enabled via sysfs.
 | |
| 
 | |
| 	  If unsure, say 'N' here to avoid potential power and performance
 | |
| 	  penalty.
 | |
| 
 | |
| config CORESIGHT_HWEVENT
 | |
| 	bool "CoreSight Hardware Event driver"
 | |
| 	depends on CORESIGHT_STM
 | |
| 	select CORESIGHT_CSR
 | |
| 	help
 | |
| 	  This driver provides support for monitoring and tracing CoreSight
 | |
| 	  Hardware Event across STM interface. It configures Coresight
 | |
| 	  Hardware Event mux control registers to select hardware events
 | |
| 	  based on user input.
 | |
| 
 | |
| config CORESIGHT_ETM
 | |
| 	bool "CoreSight Embedded Trace Macrocell driver"
 | |
| 	help
 | |
| 	  This driver provides support for processor tracing which allows
 | |
| 	  tracing the instructions that the processor is executing. This is
 | |
| 	  primarily useful for instruction level tracing.
 | |
| 
 | |
| config CORESIGHT_ETM_DEFAULT_RESET
 | |
| 	bool "Reset ETM by default"
 | |
| 	depends on CORESIGHT_ETM
 | |
| 	help
 | |
| 	  Reset CoreSight ETM tracing (processor tracing) parameters by
 | |
| 	  default. This configures ETM parameters to reset values instead
 | |
| 	  of preconfigured values on bootup. Otherwise, ETM parameters take
 | |
|           preconfigured values by default but these can be reset via sysfs.
 | |
| 
 | |
| config CORESIGHT_ETM_DEFAULT_ENABLE
 | |
| 	bool "Turn on ETM tracing by default"
 | |
| 	depends on CORESIGHT_ETM
 | |
| 	help
 | |
| 	  Turns on CoreSight ETM tracing (processor tracing) by default.
 | |
| 	  Otherwise, tracing is disabled by default but can be enabled via
 | |
| 	  sysfs.
 | |
| 
 | |
| 	  If unsure, say 'N' here to avoid potential power and performance
 | |
| 	  penalty.
 | |
| 
 | |
| config CORESIGHT_ETM_PCSAVE_DEFAULT_ENABLE
 | |
| 	bool "Turn on PC saving by default"
 | |
| 	depends on CORESIGHT_ETM
 | |
| 	help
 | |
| 	  Turns on program counter saving on reset by default. Otherwise,
 | |
| 	  PC saving is disabled by default but can be enabled via sysfs.
 | |
| 
 | |
| 	  If unsure, say 'N' here to avoid potential power penalty.
 | |
| 
 | |
| config CORESIGHT_ETMV4
 | |
| 	bool "CoreSight Embedded Trace Macrocell v4 driver"
 | |
| 	help
 | |
| 	  This driver provides support for processor tracing which allows
 | |
| 	  tracing the instructions that the processor is executing on ARMv8
 | |
| 	  architecture. This is primarily useful for instruction level
 | |
| 	  tracing.
 | |
| 
 | |
| config CORESIGHT_ETMV4_DEFAULT_RESET
 | |
| 	bool "Reset ETMV4 by default"
 | |
| 	depends on CORESIGHT_ETMV4
 | |
| 	help
 | |
| 	  Reset CoreSight ETMV4 tracing (processor tracing) parameters by
 | |
| 	  default. This configures ETMV4 parameters to reset values instead
 | |
| 	  of preconfigured values on bootup. Otherwise, ETMV4 parameters take
 | |
|           preconfigured values by default but these can be reset via sysfs.
 | |
| 
 | |
| config CORESIGHT_ETMV4_DEFAULT_ENABLE
 | |
| 	bool "Turn on ETMV4 tracing by default"
 | |
| 	depends on CORESIGHT_ETMV4
 | |
| 	help
 | |
| 	  Turns on CoreSight ETMV4 tracing (processor tracing) by default.
 | |
| 	  Otherwise, tracing is disabled by default but can be enabled via
 | |
| 	  sysfs.
 | |
| 
 | |
| 	  If unsure, say 'N' here to avoid potential power and performance
 | |
| 	  penalty.
 | |
| 
 | |
| config CORESIGHT_REMOTE_ETM
 | |
| 	bool "Remote processor ETM trace support"
 | |
| 	depends on MSM_QMI_INTERFACE
 | |
| 	help
 | |
| 	  Enables support for ETM trace collection on remote processor using
 | |
| 	  CoreSight framework. Enabling this will allow turning on ETM
 | |
| 	  tracing on remote processor via sysfs by configuring the required
 | |
| 	  CoreSight components.
 | |
| 
 | |
| config CORESIGHT_REMOTE_ETM_DEFAULT_ENABLE
 | |
| 	int "default enable bits for Remote processor ETM"
 | |
| 	depends on CORESIGHT_REMOTE_ETM
 | |
| 	default 0
 | |
| 	help
 | |
| 	  Support for enabling separated Remote processor ETM tracing. Depends
 | |
| 	  on if instance id bit is set.
 | |
| 
 | |
| endif
 | |
| 
 | |
| config CORESIGHT_QPDI
 | |
| 	bool "CoreSight PMIC debug interface support"
 | |
| 	help
 | |
| 	  This driver provides support for controlling the PMIC debug interface
 | |
| 	  feature. When enabled via sysfs it allows disagnostic access to the
 | |
| 	  PMIC. Similarly this debug feature can be disabled via sysfs which
 | |
| 	  prevents debug dongle detection.
 | |
| 
 | |
| endif
 | 
