diff options
author | Leo Yan <leo.yan@arm.com> | 2025-04-01 19:07:06 +0100 |
---|---|---|
committer | Suzuki K Poulose <suzuki.poulose@arm.com> | 2025-05-14 11:56:17 +0100 |
commit | d5f7e4bea90f2e0630b0c76b0f6cf64304c5b514 (patch) | |
tree | 00b4fadc6f5b24715cd3aa5dfb7c314bc6089846 /scripts/lib/kdoc/kdoc_re.py | |
parent | abffe22e93d7a25b69a8884fda6a50ed81d7ae06 (diff) |
coresight: tmc: Re-enable sink after buffer update
The buffer update callbacks disable the sink before syncing data but
misses to re-enable it afterward. This is fine in the general flow,
because the sink will be re-enabled the next time the PMU event is
activated.
However, during AUX pause and resume, if the sink is disabled in the
buffer update callback, there is no chance to re-enable it when AUX
resumes.
To address this, the callbacks now check the event state
'event->hw.state'. If the event is an active state (0), the sink is
re-enabled.
For the TMC ETR driver, buffer updates are not fully protected by
the driver's spinlock. In this case, the sink is not re-enabled if its
reference counter is 0, in order to avoid race conditions where the sink
may have been completely disabled.
Signed-off-by: Leo Yan <leo.yan@arm.com>
Reviewed-by: Mike Leach <mike.leach@linaro.org>
Reviewed-by: James Clark <james.clark@linaro.org>
Signed-off-by: Suzuki K Poulose <suzuki.poulose@arm.com>
Link: https://lore.kernel.org/r/20250401180708.385396-6-leo.yan@arm.com
Diffstat (limited to 'scripts/lib/kdoc/kdoc_re.py')
0 files changed, 0 insertions, 0 deletions