summaryrefslogtreecommitdiff
path: root/Documentation/trace
diff options
context:
space:
mode:
authorAlexander Shishkin <alexander.shishkin@linux.intel.com>2016-07-14 13:39:20 +0300
committerAlexander Shishkin <alexander.shishkin@linux.intel.com>2016-11-18 16:54:40 +0200
commitbd566189723d919e6081b494856337ef61a23f9f (patch)
treed3a54363dc9a1a4c27169c934096378e99af654b /Documentation/trace
parenta0ebf519b8a2666438d999c62995618c710573e5 (diff)
downloadlwn-bd566189723d919e6081b494856337ef61a23f9f.tar.gz
lwn-bd566189723d919e6081b494856337ef61a23f9f.zip
stm class: Document the stm_source interface
This patch adds a description of the stm_source device class, an interface for the kernel code to send traces over STM devices. Cc: linux-api@vger.kernel.org Cc: Chunyan Zhang <zhang.chunyan@linaro.org> Cc: Mathieu Poirier <mathieu.poirier@linaro.org> Signed-off-by: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Diffstat (limited to 'Documentation/trace')
-rw-r--r--Documentation/trace/stm.txt27
1 files changed, 24 insertions, 3 deletions
diff --git a/Documentation/trace/stm.txt b/Documentation/trace/stm.txt
index ea035f9dbfd7..349869851463 100644
--- a/Documentation/trace/stm.txt
+++ b/Documentation/trace/stm.txt
@@ -69,12 +69,33 @@ stm device's channel mmio region is 64 bytes and hardware page size is
width==64, you should be able to mmap() one page on this file
descriptor and obtain direct access to an mmio region for 64 channels.
+Examples of STM devices are Intel(R) Trace Hub [1] and Coresight STM
+[2].
+
+stm_source
+==========
+
For kernel-based trace sources, there is "stm_source" device
class. Devices of this class can be connected and disconnected to/from
-stm devices at runtime via a sysfs attribute.
+stm devices at runtime via a sysfs attribute called "stm_source_link"
+by writing the name of the desired stm device there, for example:
-Examples of STM devices are Intel(R) Trace Hub [1] and Coresight STM
-[2].
+$ echo dummy_stm.0 > /sys/class/stm_source/console/stm_source_link
+
+For examples on how to use stm_source interface in the kernel, refer
+to stm_console or stm_heartbeat drivers.
+
+stm_console
+===========
+
+One implementation of this interface also used in the example above is
+the "stm_console" driver, which basically provides a one-way console
+for kernel messages over an stm device.
+
+To configure the master/channel pair that will be assigned to this
+console in the STP stream, create a "console" policy entry (see the
+beginning of this text on how to do that). When initialized, it will
+consume one channel.
[1] https://software.intel.com/sites/default/files/managed/d3/3c/intel-th-developer-manual.pdf
[2] http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0444b/index.html