diff options
author | James Clark | 2022-05-11 15:46:01 +0100 |
---|---|---|
committer | Suzuki K Poulose | 2022-07-06 16:32:08 +0100 |
commit | 774daad3c0d800f84f3abd725bd66f9ff04b42c6 (patch) | |
tree | 8fa92c9103566d3fdd1cc2ba57ef1b373d16a6b1 /Documentation/trace | |
parent | 32ee00d86e90c9bc9fa453deadbbfe87a921ea70 (diff) |
Documentation: coresight: Expand branch broadcast documentation
Now that there is a way of enabling branch broadcast via perf, mention
the possible use cases and known limitations.
Signed-off-by: James Clark <james.clark@arm.com>
Reviewed-by: Mike Leach<mike.leach@linaro.org>
Signed-off-by: Suzuki K Poulose <suzuki.poulose@arm.com>
Link: https://lore.kernel.org/r/20220511144601.2257870-5-james.clark@arm.com
Diffstat (limited to 'Documentation/trace')
-rw-r--r-- | Documentation/trace/coresight/coresight-etm4x-reference.rst | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/Documentation/trace/coresight/coresight-etm4x-reference.rst b/Documentation/trace/coresight/coresight-etm4x-reference.rst index 0439b4006227..fb7578fd9372 100644 --- a/Documentation/trace/coresight/coresight-etm4x-reference.rst +++ b/Documentation/trace/coresight/coresight-etm4x-reference.rst @@ -656,7 +656,18 @@ Bit assignments shown below:- ETM_MODE_BB **description:** - Set to enable branch broadcast if supported in hardware [IDR0]. + Set to enable branch broadcast if supported in hardware [IDR0]. The primary use for this feature + is when code is patched dynamically at run time and the full program flow may not be able to be + reconstructed using only conditional branches. + + There is currently no support in Perf for supplying modified binaries to the decoder, so this + feature is only inteded to be used for debugging purposes or with a 3rd party tool. + + Choosing this option will result in a significant increase in the amount of trace generated - + possible danger of overflows, or fewer instructions covered. Note, that this option also + overrides any setting of :ref:`ETM_MODE_RETURNSTACK <coresight-return-stack>`, so where a branch + broadcast range overlaps a return stack range, return stacks will not be available for that + range. .. _coresight-cycle-accurate: |