summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorLeo Yan <leo.yan@arm.com>2026-05-15 23:08:26 +0300
committerSuzuki K Poulose <suzuki.poulose@arm.com>2026-05-18 12:18:46 +0300
commitac8eac9062eefc33f5e97e526eef69bc98ecbdbc (patch)
tree9b6687a600d6c23f3ba0c48b06c94ba4cb4eb128 /include
parenta18e877b0491ad21b24d6f1fe2afb854990e031d (diff)
downloadlinux-ac8eac9062eefc33f5e97e526eef69bc98ecbdbc.tar.xz
coresight: Save active path for system tracers
This commit only set the path pointer for system tracers (e.g. STM) in coresight_{enable|disable}_source(). Later changes will set the path pointer locally for per-CPU sources. This is because the mode and path pointer must be set together, so that they are observed atomically by the CPU PM notifier. Reviewed-by: Yeoreum Yun <yeoreum.yun@arm.com> Reviewed-by: James Clark <james.clark@linaro.org> Tested-by: James Clark <james.clark@linaro.org> Tested-by: Jie Gan <jie.gan@oss.qualcomm.com> Signed-off-by: Leo Yan <leo.yan@arm.com> Signed-off-by: Suzuki K Poulose <suzuki.poulose@arm.com> Link: https://lore.kernel.org/r/20260515-arm_coresight_path_power_management_improvement-v14-19-f88c4a3ecfe9@arm.com
Diffstat (limited to 'include')
-rw-r--r--include/linux/coresight.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/coresight.h b/include/linux/coresight.h
index 5f9d7ea9f594..58d474b26980 100644
--- a/include/linux/coresight.h
+++ b/include/linux/coresight.h
@@ -257,6 +257,7 @@ struct coresight_trace_id_map {
* by @coresight_ops.
* @access: Device i/o access abstraction for this device.
* @dev: The device entity associated to this component.
+ * @path: Activated path pointer (only used for source device).
* @mode: The device mode, i.e sysFS, Perf or disabled. This is actually
* an 'enum cs_mode' but stored in an atomic type. Access is always
* through atomic APIs, ensuring SMP-safe synchronisation between
@@ -291,6 +292,7 @@ struct coresight_device {
const struct coresight_ops *ops;
struct csdev_access access;
struct device dev;
+ struct coresight_path *path;
atomic_t mode;
int refcnt;
int cpu;