0001 # SPDX-License-Identifier: GPL-2.0-only
0002 config STM
0003 tristate "System Trace Module devices"
0004 select CONFIGFS_FS
0005 select SRCU
0006 help
0007 A System Trace Module (STM) is a device exporting data in System
0008 Trace Protocol (STP) format as defined by MIPI STP standards.
0009 Examples of such devices are Intel(R) Trace Hub and Coresight STM.
0010
0011 Say Y here to enable System Trace Module device support.
0012
0013 if STM
0014
0015 config STM_PROTO_BASIC
0016 tristate "Basic STM framing protocol driver"
0017 default CONFIG_STM
0018 help
0019 This is a simple framing protocol for sending data over STM
0020 devices. This was the protocol that the STM framework used
0021 exclusively until the MIPI SyS-T support was added. Use this
0022 driver for compatibility with your existing STM setup.
0023
0024 The receiving side only needs to be able to decode the MIPI
0025 STP protocol in order to extract the data.
0026
0027 If you want to be able to use the basic protocol or want the
0028 backwards compatibility for your existing setup, say Y.
0029
0030 config STM_PROTO_SYS_T
0031 tristate "MIPI SyS-T STM framing protocol driver"
0032 default CONFIG_STM
0033 help
0034 This is an implementation of MIPI SyS-T protocol to be used
0035 over the STP transport. In addition to the data payload, it
0036 also carries additional metadata for time correlation, better
0037 means of trace source identification, etc.
0038
0039 The receiving side must be able to decode this protocol in
0040 addition to the MIPI STP, in order to extract the data.
0041
0042 If you don't know what this is, say N.
0043
0044 config STM_DUMMY
0045 tristate "Dummy STM driver"
0046 help
0047 This is a simple dummy device that pretends to be an stm device
0048 and discards your data. Use for stm class testing.
0049
0050 If you don't know what this is, say N.
0051
0052 config STM_SOURCE_CONSOLE
0053 tristate "Kernel console over STM devices"
0054 help
0055 This is a kernel space trace source that sends kernel log
0056 messages to trace hosts over STM devices.
0057
0058 If you want to send kernel console messages over STM devices,
0059 say Y.
0060
0061 config STM_SOURCE_HEARTBEAT
0062 tristate "Heartbeat over STM devices"
0063 help
0064 This is a kernel space trace source that sends periodic
0065 heartbeat messages to trace hosts over STM devices. It is
0066 also useful for testing stm class drivers and the stm class
0067 framework itself.
0068
0069 If you want to send heartbeat messages over STM devices,
0070 say Y.
0071
0072 config STM_SOURCE_FTRACE
0073 tristate "Copy the output from kernel Ftrace to STM engine"
0074 depends on TRACING
0075 help
0076 This option can be used to copy the output from kernel Ftrace
0077 to STM engine. Enabling this option will introduce a slight
0078 timing effect.
0079
0080 If you want to send kernel Ftrace messages over STM devices,
0081 say Y.
0082
0083 endif