Thread (22 messages) 22 messages, 3 authors, 2025-02-24

Re: [PATCH v12 3/7] Coresight: Use coresight_etm_get_trace_id() in traceid_show()

From: James Clark <james.clark@linaro.org>
Date: 2025-02-18 10:03:33
Also in: linux-arm-msm, linux-devicetree, lkml


On 17/02/2025 9:30 am, Jie Gan wrote:
quoted hunk ↗ jump to hunk
From: James Clark <james.clark@linaro.org>

Use the new API, coresight_etm_get_trace_id, to read the traceid of the ETM
device when call traceid_show via sysfs node.

Signed-off-by: James Clark <james.clark@linaro.org>
Signed-off-by: Jie Gan <redacted>
---
  drivers/hwtracing/coresight/coresight-etm3x-sysfs.c | 3 +--
  drivers/hwtracing/coresight/coresight-etm4x-sysfs.c | 4 ++--
  2 files changed, 3 insertions(+), 4 deletions(-)
diff --git a/drivers/hwtracing/coresight/coresight-etm3x-sysfs.c b/drivers/hwtracing/coresight/coresight-etm3x-sysfs.c
index 68c644be9813..b9006451f515 100644
--- a/drivers/hwtracing/coresight/coresight-etm3x-sysfs.c
+++ b/drivers/hwtracing/coresight/coresight-etm3x-sysfs.c
@@ -1190,10 +1190,9 @@ static DEVICE_ATTR_RO(cpu);
  static ssize_t traceid_show(struct device *dev,
  			    struct device_attribute *attr, char *buf)
  {
-	int trace_id;
  	struct etm_drvdata *drvdata = dev_get_drvdata(dev->parent);
+	int trace_id = coresight_etm_get_trace_id(drvdata->csdev, CS_MODE_SYSFS, NULL);
  
-	trace_id = etm_read_alloc_trace_id(drvdata);
  	if (trace_id < 0)
  		return trace_id;
  
diff --git a/drivers/hwtracing/coresight/coresight-etm4x-sysfs.c b/drivers/hwtracing/coresight/coresight-etm4x-sysfs.c
index c767f8ae4cf1..e5216c0f60da 100644
--- a/drivers/hwtracing/coresight/coresight-etm4x-sysfs.c
+++ b/drivers/hwtracing/coresight/coresight-etm4x-sysfs.c
@@ -4,6 +4,7 @@
   * Author: Mathieu Poirier <mathieu.poirier@linaro.org>
   */
  
+#include <linux/coresight.h>
  #include <linux/pid_namespace.h>
  #include <linux/pm_runtime.h>
  #include <linux/sysfs.h>
@@ -2402,10 +2403,9 @@ static ssize_t trctraceid_show(struct device *dev,
  			       struct device_attribute *attr,
  			       char *buf)
  {
-	int trace_id;
  	struct etmv4_drvdata *drvdata = dev_get_drvdata(dev->parent);
+	int trace_id = coresight_etm_get_trace_id(drvdata->csdev, CS_MODE_SYSFS, NULL);
  
-	trace_id = etm4_read_alloc_trace_id(drvdata);
  	if (trace_id < 0)
  		return trace_id;
  
Reviewed-by: James Clark <james.clark@linaro.org>

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help