coresight: etmv4: Counter values not saved on disable
The counter value registers change during operation, however this change
is not reflected in the values seen by the user in sysfs.
This fixes the issue by reading back the values on disable.
Signed-off-by: Mike Leach <mike.leach@linaro.org>
Fixes: 2e1cdfe184
("coresight-etm4x: Adding CoreSight ETM4x driver")
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Link: https://lore.kernel.org/r/20200716175746.3338735-11-mathieu.poirier@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
cb8bba907a
commit
8fa43700f6
|
@ -511,6 +511,12 @@ static void etm4_disable_hw(void *info)
|
|||
readl_relaxed(drvdata->base + TRCSSCSRn(i));
|
||||
}
|
||||
|
||||
/* read back the current counter values */
|
||||
for (i = 0; i < drvdata->nr_cntr; i++) {
|
||||
config->cntr_val[i] =
|
||||
readl_relaxed(drvdata->base + TRCCNTVRn(i));
|
||||
}
|
||||
|
||||
coresight_disclaim_device_unlocked(drvdata->base);
|
||||
|
||||
CS_LOCK(drvdata->base);
|
||||
|
|
Loading…
Reference in New Issue