Re: [PATCH v2 01/11] stm class: Introduce an abstraction for System Trace Module devices
From: Greg Kroah-Hartman
Date: Thu Mar 26 2015 - 18:23:46 EST
On Sun, Mar 22, 2015 at 10:32:51PM +0200, Alexander Shishkin wrote:
> A System Trace Module (STM) is a device exporting data in System Trace
> Protocol (STP) format as defined by MIPI STP standards. Examples of such
> devices are Intel Trace Hub and Coresight STM.
>
> This abstraction provides a unified interface for software trace sources
> to send their data over an STM device to a debug host. In order to do
> that, such a trace source needs to be assigned a pair of master/channel
> identifiers that all the data from this source will be tagged with. The
> STP decoder on the debug host side will use these master/channel tags to
> distinguish different trace streams from one another inside one STP
> stream.
>
> This abstraction provides a configfs-based policy management mechanism
> for dynamic allocation of these master/channel pairs based on trace
> source-supplied string identifier. It has the flexibility of being
> defined at runtime and at the same time (provided that the policy
> definition is aligned with the decoding end) consistency.
>
> For userspace trace sources, this abstraction provides write()-based and
> mmap()-based (if the underlying stm device allows this) output mechanism.
>
> For kernel-side trace sources, we provide "stm_source" device class that
> can be connected to an stm device at run time.
>
> Cc: linux-api@xxxxxxxxxxxxxxx
> Cc: Pratik Patel <pratikp@xxxxxxxxxxxxxx>
> Cc: Mathieu Poirier <mathieu.poirier@xxxxxxxxxx>
> Signed-off-by: Alexander Shishkin <alexander.shishkin@xxxxxxxxxxxxxxx>
> ---
> Documentation/ABI/testing/configfs-stp-policy | 44 ++
> Documentation/ABI/testing/sysfs-class-stm | 14 +
> Documentation/ABI/testing/sysfs-class-stm_source | 11 +
> Documentation/trace/stm.txt | 77 ++
> drivers/Kconfig | 2 +
> drivers/Makefile | 1 +
> drivers/hwtracing/stm/Kconfig | 8 +
> drivers/hwtracing/stm/Makefile | 3 +
> drivers/hwtracing/stm/core.c | 897 +++++++++++++++++++++++
> drivers/hwtracing/stm/policy.c | 467 ++++++++++++
> drivers/hwtracing/stm/stm.h | 79 ++
> include/linux/stm.h | 102 +++
> include/uapi/linux/stm.h | 47 ++
> 13 files changed, 1752 insertions(+)
> create mode 100644 Documentation/ABI/testing/configfs-stp-policy
> create mode 100644 Documentation/ABI/testing/sysfs-class-stm
> create mode 100644 Documentation/ABI/testing/sysfs-class-stm_source
> create mode 100644 Documentation/trace/stm.txt
> create mode 100644 drivers/hwtracing/stm/Kconfig
> create mode 100644 drivers/hwtracing/stm/Makefile
> create mode 100644 drivers/hwtracing/stm/core.c
> create mode 100644 drivers/hwtracing/stm/policy.c
> create mode 100644 drivers/hwtracing/stm/stm.h
> create mode 100644 include/linux/stm.h
> create mode 100644 include/uapi/linux/stm.h
>
> diff --git a/Documentation/ABI/testing/configfs-stp-policy b/Documentation/ABI/testing/configfs-stp-policy
> new file mode 100644
> index 0000000000..1c7ab3dbcd
> --- /dev/null
> +++ b/Documentation/ABI/testing/configfs-stp-policy
> @@ -0,0 +1,44 @@
> +What: /config/stp-policy
> +Date: Jan 2015
> +KernelVersion: 3.20
There is no 3.20 kernel version, and January 2015 is in the past :(
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/