coresight: Make sysfs functional on topologies with per core sink
authorLinu Cherian <lcherian@marvell.com>
Wed, 16 Sep 2020 19:17:35 +0000 (13:17 -0600)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 17 Sep 2020 16:46:05 +0000 (18:46 +0200)
commit6d578258b955fc8888e1bbd9a8fefe7b10065a84
tree91025f6e5b091a1d241a9312b47b77928ca105b7
parentbb1860efc817c18fce4112f25f51043e44346d1b
coresight: Make sysfs functional on topologies with per core sink

Coresight driver assumes sink is common across all the ETMs,
and tries to build a path between ETM and the first enabled
sink found using bus based search. This breaks sysFS usage
on implementations that has multiple per core sinks in
enabled state.

To fix this, coresight_get_enabled_sink API is updated to
do a connection based search starting from the given source,
instead of bus based search.
With sink selection using sysfs depecrated for perf interface,
provision for reset is removed as well in this API.

Signed-off-by: Linu Cherian <lcherian@marvell.com>
[Fixed indentation problem and removed obsolete comment]
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Link: https://lore.kernel.org/r/20200916191737.4001561-15-mathieu.poirier@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/hwtracing/coresight/coresight-priv.h
drivers/hwtracing/coresight/coresight.c