linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 00/16] coresight: Support for ARM Coresight SoC-600
@ 2017-07-14 13:04 Suzuki K Poulose
  2017-07-14 13:04 ` [PATCH v3 01/18] coresight replicator: Cleanup programmable replicator naming Suzuki K Poulose
                   ` (18 more replies)
  0 siblings, 19 replies; 27+ messages in thread
From: Suzuki K Poulose @ 2017-07-14 13:04 UTC (permalink / raw)
  To: linux-arm-kernel

This series adds support for ARM Coresight SoC-600 IP, which implements
Coresight V3 architecture. It also does some clean up of the replicator
driver namings used in the driver to prevent confusions to the user.

The SoC-600 comes with an improved TMC which supports new features,
including Save-Restore and Software FIFO2 mode (for streaming the trace
data over functional I/O like USB/PCI).

This series only supports Save-Restore feature of the new ETR by reusing
the driver to perform additional setups required in case we are dealing
with an IP which supports it. Towards this we keep track of the capabilities
of the given TMC ETR. Some of the features are advertised via DEVID
register (address width, scatter gather support), while some are not
(save-restore). So we attach a static capability mask with the device
PID for the unadvertised features and detect the rest at device probe.

Tested on Juno (with Coresight SoC 400) and an FPGA based system
for SoC 600. Applies on Mathieu's coresight/next.

Changes since V2:
 - Fix typos in masks for ETM3.
 - Fix all dts for obsoleted compatible string for replicator.
 - Detect advertised capabilities at runtime.
 - Add support for detecting the address width at runtime, new
   feature in SoC-600.
 - Add support for split ARCACHE/WCACHE encoding for AXI transactions

Changes since V1
 - Rename coresight-replicator-qcom.c => coresight-dynamic-replicator.c
 - Fix PIDR2 codings for ETB-10, ETM3x
 - Fix cosmetic issues pointed out by  Mathieu
 - Fix commit description for
	 "coresight tmc: Handle configuration types properly"
 - Drop SWFIFO2 from the capability of SoC-600 TMC


Suzuki K Poulose (18):
  coresight replicator: Cleanup programmable replicator naming
  arm64: juno: dts:  Use the new coresight replicator string
  arm: qcom-msm8974: dts: Update coresight replicator
  arm64: qcom-msm8916: dts: Update coresight replicator
  coresight: Extend the PIDR mask to cover relevant bits in PIDR2
  coresight: Add support for reading 64bit registers
  coresight tmc: Add helpers for accessing 64bit registers
  coresight tmc: Expose DBA and AXICTL
  coresight replicator: Expose replicator management registers
  coresight tmc: Handle configuration types properly
  coresight tmc etr: Add capabilitiy information
  coresight tmc: Detect support for scatter gather
  coresight tmc etr: Detect address width at runtime
  coresight tmc etr: Cleanup AXICTL register handling
  coresigh tmc etr: Setup AXI cache encoding for read transfers
  coresight tmc: Support for save-restore in ETR
  coresight tmc: Add support for Coresight SoC 600 TMC
  coresight: Add support for Coresight SoC 600 components

 .../devicetree/bindings/arm/coresight.txt          |   4 +-
 arch/arm/boot/dts/qcom-msm8974.dtsi                |   2 +-
 arch/arm64/boot/dts/arm/juno-base.dtsi             |   2 +-
 arch/arm64/boot/dts/qcom/msm8916.dtsi              |   2 +-
 drivers/hwtracing/coresight/Kconfig                |  10 +-
 drivers/hwtracing/coresight/Makefile               |   2 +-
 .../coresight/coresight-dynamic-replicator.c       | 221 +++++++++++++++++++++
 drivers/hwtracing/coresight/coresight-etb10.c      |   4 +-
 drivers/hwtracing/coresight/coresight-etm3x.c      |  24 +--
 drivers/hwtracing/coresight/coresight-funnel.c     |   9 +-
 drivers/hwtracing/coresight/coresight-priv.h       |  35 +++-
 .../coresight/coresight-replicator-qcom.c          | 196 ------------------
 drivers/hwtracing/coresight/coresight-stm.c        |   8 +-
 drivers/hwtracing/coresight/coresight-tmc-etf.c    |   8 +-
 drivers/hwtracing/coresight/coresight-tmc-etr.c    |  37 ++--
 drivers/hwtracing/coresight/coresight-tmc.c        |  84 ++++++--
 drivers/hwtracing/coresight/coresight-tmc.h        |  87 +++++++-
 drivers/hwtracing/coresight/coresight-tpiu.c       |   9 +-
 18 files changed, 481 insertions(+), 263 deletions(-)
 create mode 100644 drivers/hwtracing/coresight/coresight-dynamic-replicator.c
 delete mode 100644 drivers/hwtracing/coresight/coresight-replicator-qcom.c

-- 
2.7.5

^ permalink raw reply	[flat|nested] 27+ messages in thread

end of thread, other threads:[~2017-07-18  9:11 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-07-14 13:04 [PATCH v3 00/16] coresight: Support for ARM Coresight SoC-600 Suzuki K Poulose
2017-07-14 13:04 ` [PATCH v3 01/18] coresight replicator: Cleanup programmable replicator naming Suzuki K Poulose
2017-07-17 17:45   ` Mathieu Poirier
2017-07-18  9:11     ` Suzuki K Poulose
2017-07-14 13:04 ` [PATCH v3 02/18] arm64: juno: dts: Use the new coresight replicator string Suzuki K Poulose
2017-07-17 16:01   ` Mathieu Poirier
2017-07-14 13:04 ` [PATCH v3 03/18] arm: qcom-msm8974: dts: Update coresight replicator Suzuki K Poulose
2017-07-17 16:02   ` Mathieu Poirier
2017-07-14 13:04 ` [PATCH v3 04/18] arm64: qcom-msm8916: " Suzuki K Poulose
2017-07-17 16:03   ` Mathieu Poirier
2017-07-14 13:04 ` [PATCH v3 05/18] coresight: Extend the PIDR mask to cover relevant bits in PIDR2 Suzuki K Poulose
2017-07-14 13:04 ` [PATCH v3 06/18] coresight: Add support for reading 64bit registers Suzuki K Poulose
2017-07-14 13:04 ` [PATCH v3 07/18] coresight tmc: Add helpers for accessing " Suzuki K Poulose
2017-07-14 13:04 ` [PATCH v3 08/18] coresight tmc: Expose DBA and AXICTL Suzuki K Poulose
2017-07-14 13:04 ` [PATCH v3 09/18] coresight replicator: Expose replicator management registers Suzuki K Poulose
2017-07-14 13:04 ` [PATCH v3 10/18] coresight tmc: Handle configuration types properly Suzuki K Poulose
2017-07-14 13:04 ` [PATCH v3 11/18] coresight tmc etr: Add capabilitiy information Suzuki K Poulose
2017-07-14 13:04 ` [PATCH v3 12/18] coresight tmc: Detect support for scatter gather Suzuki K Poulose
2017-07-14 13:04 ` [PATCH v3 13/18] coresight tmc etr: Detect address width at runtime Suzuki K Poulose
2017-07-14 13:04 ` [PATCH v3 14/18] coresight tmc etr: Cleanup AXICTL register handling Suzuki K Poulose
2017-07-17 17:06   ` Mathieu Poirier
2017-07-18  9:07     ` Suzuki K Poulose
2017-07-14 13:04 ` [PATCH v3 15/18] coresigh tmc etr: Setup AXI cache encoding for read transfers Suzuki K Poulose
2017-07-14 13:04 ` [PATCH v3 16/18] coresight tmc: Support for save-restore in ETR Suzuki K Poulose
2017-07-14 13:04 ` [PATCH v3 17/18] coresight tmc: Add support for Coresight SoC 600 TMC Suzuki K Poulose
2017-07-14 13:04 ` [PATCH v3 18/18] coresight: Add support for Coresight SoC 600 components Suzuki K Poulose
2017-07-17 17:48 ` [PATCH v3 00/16] coresight: Support for ARM Coresight SoC-600 Mathieu Poirier

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).