Hi Greg,
Please find the updates for CoreSight and hwtracing subsystem for inclusion in v6.3. fyi, there is a patch to export perf_report_aux_output_id(), a perf generic helper for emitting AUX packet. This has been Acked by Peter and is used by the CoreSight dynamic trace id allocation scheme. Hence routing via the coresight tree.
Kindly consider pulling.
Suzuki
The following changes since commit 88603b6dc419445847923fcb7fe5080067a30f98:
Linux 6.2-rc2 (2023-01-01 13:53:16 -0800)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/coresight/linux.git tags/coresight-next-v6.3
for you to fetch changes up to 669c4614236a7f78a2b693d0024cbdfa8536eb5a:
coresight: tmc: Don't enable TMC when it's not ready. (2023-01-30 11:45:32 +0000)
---------------------------------------------------------------- coresight: Updates for v6.3
- Dynamic TraceID allocation scheme for CoreSight trace source. Allows systems with > 44 CPUs to use the ETMs. TraceID is advertised via AUX_OUTPUT_HWID packets in perf.data. Also allows allocating trace-ids for non-CPU bound trace components (e.g., Qualcomm TPDA).
- Support for Qualcomm TPDA and TPDM CoreSight devices.
- Support for Ultrasoc SMB CoreSight Sink buffer.
- Fixes for HiSilicon PTT driver
- MAINTAINERS update: Add Reviewer for HiSilicon PTT driver
- Bug fixes for CTI power management and sysfs mode
- Fix CoreSight ETM4x TRCSEQRSTEVRn access
Signed-off-by: Suzuki K Poulose suzuki.poulose@arm.com
---------------------------------------------------------------- Arnd Bergmann (1): Coresight: tpda/tpdm: remove incorrect __exit annotation
Bagas Sanjaya (2): Documentation: coresight: Extend title heading syntax in TPDM and TPDA documentation Documentation: coresight: tpdm: Add dummy comment after sysfs list
James Clark (2): coresight: cti: Prevent negative values of enable count coresight: cti: Remove atomic type from enable_req_count
Junhao He (1): coresight: etm4x: Fix accesses to TRCSEQRSTEVR and TRCSEQSTR
Mao Jinlong (9): coresight: cti: Add PM runtime call in enable_store coresight: core: Use IDR for non-cpu bound sources' paths. Coresight: Add coresight TPDM source driver dt-bindings: arm: Add CoreSight TPDM hardware coresight-tpdm: Add DSB dataset support coresight-tpdm: Add integration test support Coresight: Add TPDA link driver dt-bindings: arm: Adds CoreSight TPDA hardware definitions Documentation: trace: Add documentation for TPDM and TPDA
Mike Leach (11): coresight: trace-id: Add API to dynamically assign Trace ID values coresight: Remove obsolete Trace ID unniqueness checks coresight: perf: traceid: Add perf ID allocation and notifiers coresight: stm: Update STM driver to use Trace ID API coresight: etm4x: Update ETM4 driver to use Trace ID API coresight: etm3x: Update ETM3 driver to use Trace ID API coresight: etmX.X: stm: Remove trace_id() callback coresight: trace id: Remove legacy get trace ID function. kernel: events: Export perf_report_aux_output_id() coresight: events: PERF_RECORD_AUX_OUTPUT_HW_ID used for Trace ID coresight: trace-id: Add debug & test macros to Trace ID allocation
Qi Liu (2): drivers/coresight: Add UltraSoc System Memory Buffer driver Documentation: Add document for UltraSoc SMB driver
Suzuki K Poulose (2): coresight: Fix uninitialised variable use in coresight_disable coresight: perf: Output trace id only once
Yabin Cui (1): coresight: tmc: Don't enable TMC when it's not ready.
Yang Yingliang (2): coresight: ultrasoc-smb: fix return value check in smb_init_data_buffer() coresight: tpda: fix return value check in tpda_probe()
Yicong Yang (2): hwtracing: hisi_ptt: Only add the supported devices to the filters list MAINTAINERS: Update the entries for HiSilicon PTT device driver
.../ABI/testing/sysfs-bus-coresight-devices-etm3x | 2 +- .../ABI/testing/sysfs-bus-coresight-devices-tpdm | 13 + .../testing/sysfs-bus-coresight-devices-ultra_smb | 31 + .../bindings/arm/qcom,coresight-tpda.yaml | 129 ++++ .../bindings/arm/qcom,coresight-tpdm.yaml | 93 +++ Documentation/trace/coresight/coresight-tpda.rst | 52 ++ Documentation/trace/coresight/coresight-tpdm.rst | 45 ++ Documentation/trace/coresight/ultrasoc-smb.rst | 83 +++ MAINTAINERS | 5 + drivers/hwtracing/coresight/Kconfig | 35 ++ drivers/hwtracing/coresight/Makefile | 5 +- drivers/hwtracing/coresight/coresight-core.c | 87 +-- drivers/hwtracing/coresight/coresight-cti-core.c | 23 +- drivers/hwtracing/coresight/coresight-cti-sysfs.c | 15 +- drivers/hwtracing/coresight/coresight-cti.h | 2 +- drivers/hwtracing/coresight/coresight-etm-perf.c | 31 + drivers/hwtracing/coresight/coresight-etm-perf.h | 2 + drivers/hwtracing/coresight/coresight-etm.h | 3 +- drivers/hwtracing/coresight/coresight-etm3x-core.c | 95 +-- .../hwtracing/coresight/coresight-etm3x-sysfs.c | 27 +- drivers/hwtracing/coresight/coresight-etm4x-core.c | 91 ++- .../hwtracing/coresight/coresight-etm4x-sysfs.c | 27 +- drivers/hwtracing/coresight/coresight-etm4x.h | 3 + drivers/hwtracing/coresight/coresight-stm.c | 49 +- drivers/hwtracing/coresight/coresight-tmc-core.c | 4 +- drivers/hwtracing/coresight/coresight-tmc-etf.c | 45 +- drivers/hwtracing/coresight/coresight-tmc-etr.c | 19 +- drivers/hwtracing/coresight/coresight-tmc.h | 2 +- drivers/hwtracing/coresight/coresight-tpda.c | 211 +++++++ drivers/hwtracing/coresight/coresight-tpda.h | 35 ++ drivers/hwtracing/coresight/coresight-tpdm.c | 259 ++++++++ drivers/hwtracing/coresight/coresight-tpdm.h | 62 ++ drivers/hwtracing/coresight/coresight-trace-id.c | 297 ++++++++++ drivers/hwtracing/coresight/coresight-trace-id.h | 156 +++++ drivers/hwtracing/coresight/ultrasoc-smb.c | 648 +++++++++++++++++++++ drivers/hwtracing/coresight/ultrasoc-smb.h | 125 ++++ drivers/hwtracing/ptt/hisi_ptt.c | 10 + include/linux/coresight-pmu.h | 34 +- include/linux/coresight.h | 4 +- kernel/events/core.c | 1 + 40 files changed, 2649 insertions(+), 211 deletions(-) create mode 100644 Documentation/ABI/testing/sysfs-bus-coresight-devices-tpdm create mode 100644 Documentation/ABI/testing/sysfs-bus-coresight-devices-ultra_smb create mode 100644 Documentation/devicetree/bindings/arm/qcom,coresight-tpda.yaml create mode 100644 Documentation/devicetree/bindings/arm/qcom,coresight-tpdm.yaml create mode 100644 Documentation/trace/coresight/coresight-tpda.rst create mode 100644 Documentation/trace/coresight/coresight-tpdm.rst create mode 100644 Documentation/trace/coresight/ultrasoc-smb.rst create mode 100644 drivers/hwtracing/coresight/coresight-tpda.c create mode 100644 drivers/hwtracing/coresight/coresight-tpda.h create mode 100644 drivers/hwtracing/coresight/coresight-tpdm.c create mode 100644 drivers/hwtracing/coresight/coresight-tpdm.h create mode 100644 drivers/hwtracing/coresight/coresight-trace-id.c create mode 100644 drivers/hwtracing/coresight/coresight-trace-id.h create mode 100644 drivers/hwtracing/coresight/ultrasoc-smb.c create mode 100644 drivers/hwtracing/coresight/ultrasoc-smb.h