[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20251202-extended_cti-v6-0-ab68bb15c4f5@oss.qualcomm.com>
Date: Tue, 02 Dec 2025 14:42:19 +0800
From: Yingchao Deng <yingchao.deng@....qualcomm.com>
To: Suzuki K Poulose <suzuki.poulose@....com>,
Mike Leach <mike.leach@...aro.org>,
James Clark <james.clark@...aro.org>,
Alexander Shishkin <alexander.shishkin@...ux.intel.com>
Cc: Tingwei Zhang <tingwei.zhang@....qualcomm.com>, quic_yingdeng@...cinc.com,
coresight@...ts.linaro.org, linux-arm-kernel@...ts.infradead.org,
linux-kernel@...r.kernel.org, linux-arm-msm@...r.kernel.org,
Jinlong Mao <jinlong.mao@....qualcomm.com>,
Yingchao Deng <yingchao.deng@....qualcomm.com>,
Mao Jinlong <quic_jinlmao@...cinc.com>
Subject: [PATCH v6 0/2] Add Qualcomm extended CTI support
The QCOM extended CTI is a heavily parameterized version of ARM’s CSCTI.
It allows a debugger to send to trigger events to a processor or to send
a trigger event to one or more processors when a trigger event occurs on
another processor on the same SoC, or even between SoCs.
QCOM extended CTI supports up to 128 triggers. And some of the register
offsets are changed.
The commands to configure CTI triggers are the same as ARM's CTI.
Changes in v6:
1. Rename regs_idx to ext_reg_sel and add information in documentation
file.
2. Reset CLAIMSET to zero for qcom-cti during probe.
3. Retrieve idx value under spinlock.
4. Use yearless copyright for qcom-cti.h.
Link to v5 - https://lore.kernel.org/all/20251020-extended_cti-v5-0-6f193da2d467@oss.qualcomm.com/
Changes in v5:
1. Move common part in qcom-cti.h to coresight-cti.h.
2. Convert trigger usage fields to dynamic bitmaps and arrays.
3. Fix holes in struct cti_config to save some space.
4. Revert the previous changes related to the claim tag in
cti_enable/disable_hw.
Link to v4 - https://lore.kernel.org/linux-arm-msm/20250902-extended_cti-v4-1-7677de04b416@oss.qualcomm.com/
Changes in v4:
1. Read the DEVARCH registers to identify Qualcomm CTI.
2. Add a reg_idx node, and refactor the coresight_cti_reg_show() and
coresight_cti_reg_store() functions accordingly.
3. The register offsets specific to Qualcomm CTI are moved to qcom_cti.h.
Link to v3 - https://lore.kernel.org/linux-arm-msm/20250722081405.2947294-1-quic_jinlmao@quicinc.com/
Changes in v3:
1. Rename is_extended_cti() to of_is_extended_cti().
2. Add the missing 'i' when write the CTI trigger registers.
3. Convert the multi-line output in sysfs to single line.
4. Initialize offset arrays using designated initializer.
Link to V2 - https://lore.kernel.org/all/20250429071841.1158315-3-quic_jinlmao@quicinc.com/
Changes in V2:
1. Add enum for compatible items.
2. Move offset arrays to coresight-cti-core
Signed-off-by: Jinlong Mao <jinlong.mao@....qualcomm.com>
Signed-off-by: Yingchao Deng <yingchao.deng@....qualcomm.com>
---
Yingchao Deng (2):
coresight: cti: Convert trigger usage fields to dynamic bitmaps and arrays
coresight: cti: Add Qualcomm extended CTI support
.../ABI/testing/sysfs-bus-coresight-devices-cti | 11 ++
drivers/hwtracing/coresight/coresight-cti-core.c | 153 ++++++++++++++---
.../hwtracing/coresight/coresight-cti-platform.c | 16 +-
drivers/hwtracing/coresight/coresight-cti-sysfs.c | 187 ++++++++++++++++-----
drivers/hwtracing/coresight/coresight-cti.h | 60 ++++++-
drivers/hwtracing/coresight/qcom-cti.h | 29 ++++
6 files changed, 369 insertions(+), 87 deletions(-)
---
base-commit: 7d31f578f3230f3b7b33b0930b08f9afd8429817
change-id: 20251128-extended_cti-3ba8576629f7
Best regards,
--
Yingchao Deng <yingchao.deng@....qualcomm.com>
Powered by blists - more mailing lists