lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1425728161-164217-1-git-send-email-alexander.shishkin@linux.intel.com>
Date:	Sat,  7 Mar 2015 13:35:50 +0200
From:	Alexander Shishkin <alexander.shishkin@...ux.intel.com>
To:	Greg Kroah-Hartman <gregkh@...uxfoundation.org>
Cc:	linux-kernel@...r.kernel.org,
	Pratik Patel <pratikp@...eaurora.org>,
	mathieu.poirier@...aro.org, peter.lachner@...el.com,
	norbert.schulz@...el.com, keven.boell@...el.com,
	yann.fouassier@...el.com, laurent.fert@...el.com,
	Alexander Shishkin <alexander.shishkin@...ux.intel.com>
Subject: [PATCH v0 00/11] Introduce Intel Trace Hub support

Hi Greg and everybody,

Here's a patchset adding support for Intel Trace Hub (TH) [1] to the
kernel.

Intel Trace Hub (TH) is a set of hardware blocks that produce, switch
and output trace data from multiple hardware and software sources over
several types of trace output ports encoded in System Trace Protocol
(MIPI STPv2) and is intended to perform full system debugging.

The first part of this patchset introduces an abstraction for STM
devices, or the devices that combine trace data from multiple trace
sources into a STP trace stream. It provides a generic interface for
software writers to send their trace data and also solves the problem
of mapping STP master/channel asignments to trace sources between the
system under tracing and the STP decoder on the debug host end. This
part might also be interesting to the guys working on Coresight STM
support as it uses a similar interface and has the same channel
mapping problem.

The remainder of the patchset is Intel TH support. The core part is
platform independant and is called into by glue layers such as the pci
driver that follows. The core provides a bus, on which Intel TH
subdevices are allocated. Each subdevice has its own driver.
Subdevices are divided into 3 types: sources, outputs and a switch
(there's usually just one). The latter is the central component in
this scheme of things and is required for other drivers to load and
function. Other drivers, however, are optional. Sources are producers
of trace data. Outputs are means of exporting the resulting STP trace
to the debug host via trace ports or system memory.

All configuration is done via sysfs and doesn't require any specific
userspace beyond a shell.

Currently supported Intel TH subdevices are Software Trace Hub
(STH, source), Memory Storage Unit (MSU, output), Parallel Tracing
Interface unit (PTI, output), Global Trace Hub (GTH, switch). Support
for other subdevices can be added later.

Also this patchset adds MAINTAINERS entries for stm class and Intel TH
code.

[1] https://software.intel.com/sites/default/files/managed/d3/3c/intel-th-developer-manual.pdf

Alexander Shishkin (11):
  stm class: Introduce an abstraction for System Trace Module devices
  MAINTAINERS: add an entry for System Trace Module device class
  stm class: dummy_stm: Add dummy driver for testing stm class
  stm class: stm_console: Add kernel-console-over-stm driver
  intel_th: Add driver infrastructure for Intel Trace Hub devices
  intel_th: Add pci glue layer for Intel Trace Hub
  intel_th: Add Global Trace Hub driver
  intel_th: Add Software Trace Hub driver
  intel_th: Add Memory Storage Unit driver
  intel_th: Add PTI output driver
  MAINTAINERS: add an entry for Intel(R) Trace Hub

 Documentation/ABI/testing/configfs-stp-policy      |   44 +
 .../ABI/testing/sysfs-bus-intel_th-devices-gth     |   43 +
 .../ABI/testing/sysfs-bus-intel_th-devices-msc     |   33 +
 .../ABI/testing/sysfs-bus-intel_th-devices-pti     |   24 +
 .../ABI/testing/sysfs-bus-intel_th-output-devices  |   13 +
 Documentation/ABI/testing/sysfs-class-stm          |   14 +
 Documentation/ABI/testing/sysfs-class-stm_source   |   11 +
 Documentation/trace/intel_th.txt                   |   99 ++
 Documentation/trace/stm.txt                        |   77 ++
 MAINTAINERS                                        |   14 +
 drivers/Kconfig                                    |    4 +
 drivers/Makefile                                   |    2 +
 drivers/intel_th/Kconfig                           |   72 +
 drivers/intel_th/Makefile                          |   18 +
 drivers/intel_th/core.c                            |  692 ++++++++++
 drivers/intel_th/debug.c                           |   36 +
 drivers/intel_th/debug.h                           |   34 +
 drivers/intel_th/gth.c                             |  673 ++++++++++
 drivers/intel_th/gth.h                             |   63 +
 drivers/intel_th/intel_th.h                        |  244 ++++
 drivers/intel_th/msu.c                             | 1403 ++++++++++++++++++++
 drivers/intel_th/msu.h                             |  115 ++
 drivers/intel_th/pci.c                             |   82 ++
 drivers/intel_th/pti.c                             |  252 ++++
 drivers/intel_th/pti.h                             |   29 +
 drivers/intel_th/sth.c                             |  215 +++
 drivers/intel_th/sth.h                             |   37 +
 drivers/stm/Kconfig                                |   27 +
 drivers/stm/Makefile                               |    7 +
 drivers/stm/console.c                              |   80 ++
 drivers/stm/core.c                                 |  839 ++++++++++++
 drivers/stm/dummy_stm.c                            |   60 +
 drivers/stm/policy.c                               |  470 +++++++
 drivers/stm/stm.h                                  |   77 ++
 include/linux/stm.h                                |   87 ++
 include/uapi/linux/stm.h                           |   47 +
 36 files changed, 6037 insertions(+)
 create mode 100644 Documentation/ABI/testing/configfs-stp-policy
 create mode 100644 Documentation/ABI/testing/sysfs-bus-intel_th-devices-gth
 create mode 100644 Documentation/ABI/testing/sysfs-bus-intel_th-devices-msc
 create mode 100644 Documentation/ABI/testing/sysfs-bus-intel_th-devices-pti
 create mode 100644 Documentation/ABI/testing/sysfs-bus-intel_th-output-devices
 create mode 100644 Documentation/ABI/testing/sysfs-class-stm
 create mode 100644 Documentation/ABI/testing/sysfs-class-stm_source
 create mode 100644 Documentation/trace/intel_th.txt
 create mode 100644 Documentation/trace/stm.txt
 create mode 100644 drivers/intel_th/Kconfig
 create mode 100644 drivers/intel_th/Makefile
 create mode 100644 drivers/intel_th/core.c
 create mode 100644 drivers/intel_th/debug.c
 create mode 100644 drivers/intel_th/debug.h
 create mode 100644 drivers/intel_th/gth.c
 create mode 100644 drivers/intel_th/gth.h
 create mode 100644 drivers/intel_th/intel_th.h
 create mode 100644 drivers/intel_th/msu.c
 create mode 100644 drivers/intel_th/msu.h
 create mode 100644 drivers/intel_th/pci.c
 create mode 100644 drivers/intel_th/pti.c
 create mode 100644 drivers/intel_th/pti.h
 create mode 100644 drivers/intel_th/sth.c
 create mode 100644 drivers/intel_th/sth.h
 create mode 100644 drivers/stm/Kconfig
 create mode 100644 drivers/stm/Makefile
 create mode 100644 drivers/stm/console.c
 create mode 100644 drivers/stm/core.c
 create mode 100644 drivers/stm/dummy_stm.c
 create mode 100644 drivers/stm/policy.c
 create mode 100644 drivers/stm/stm.h
 create mode 100644 include/linux/stm.h
 create mode 100644 include/uapi/linux/stm.h

-- 
2.1.4

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ