Merge tag 'pci-v5.13-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaa...
[linux-2.6-microblaze.git] / Documentation / trace / coresight / coresight-trbe.rst
1 .. SPDX-License-Identifier: GPL-2.0
2
3 ==============================
4 Trace Buffer Extension (TRBE).
5 ==============================
6
7     :Author:   Anshuman Khandual <anshuman.khandual@arm.com>
8     :Date:     November 2020
9
10 Hardware Description
11 --------------------
12
13 Trace Buffer Extension (TRBE) is a percpu hardware which captures in system
14 memory, CPU traces generated from a corresponding percpu tracing unit. This
15 gets plugged in as a coresight sink device because the corresponding trace
16 generators (ETE), are plugged in as source device.
17
18 The TRBE is not compliant to CoreSight architecture specifications, but is
19 driven via the CoreSight driver framework to support the ETE (which is
20 CoreSight compliant) integration.
21
22 Sysfs files and directories
23 ---------------------------
24
25 The TRBE devices appear on the existing coresight bus alongside the other
26 coresight devices::
27
28         >$ ls /sys/bus/coresight/devices
29         trbe0  trbe1  trbe2 trbe3
30
31 The ``trbe<N>`` named TRBEs are associated with a CPU.::
32
33         >$ ls /sys/bus/coresight/devices/trbe0/
34         align flag
35
36 *Key file items are:-*
37    * ``align``: TRBE write pointer alignment
38    * ``flag``: TRBE updates memory with access and dirty flags