On 1 May 2018 at 07:13, Rob Herring <robh@xxxxxxxxxx> wrote: > On Tue, May 01, 2018 at 10:10:40AM +0100, Suzuki K Poulose wrote: >> We are about to add the support for ETR builtin scatter-gather mode >> for dealing with large amount of trace buffers. However, on some of >> the platforms, using the ETR SG mode can lock up the system due to >> the way the ETR is connected to the memory subsystem. >> >> In SG mode, the ETR performs READ from the scatter-gather table to >> fetch the next page and regular WRITE of trace data. If the READ >> operation doesn't complete(due to the memory subsystem issues, >> which we have seen on a couple of platforms) the trace WRITE >> cannot proceed leading to issues. So, we by default do not >> use the SG mode, unless it is known to be safe on the platform. >> We define a DT property for the TMC node to specify whether we >> have a proper SG mode. >> >> Cc: Mathieu Poirier <matheiu.poirier@xxxxxxxxxx> >> Cc: Mike Leach <mike.leach@xxxxxxxxxx> >> Cc: Mark Rutland <mark.rutland@xxxxxxx> >> Cc: John Horley <john.horley@xxxxxxx> >> Cc: Robert Walker <robert.walker@xxxxxxx> >> Cc: devicetree@xxxxxxxxxxxxxxx >> Cc: frowand.list@xxxxxxxxx >> Cc: Rob Herring <robh@xxxxxxxxxx> >> Signed-off-by: Suzuki K Poulose <suzuki.poulose@xxxxxxx> >> --- >> Documentation/devicetree/bindings/arm/coresight.txt | 3 +++ >> drivers/hwtracing/coresight/coresight-tmc.c | 8 +++++++- >> 2 files changed, 10 insertions(+), 1 deletion(-) >> >> diff --git a/Documentation/devicetree/bindings/arm/coresight.txt b/Documentation/devicetree/bindings/arm/coresight.txt >> index cdd84d0..7c0c8f0 100644 >> --- a/Documentation/devicetree/bindings/arm/coresight.txt >> +++ b/Documentation/devicetree/bindings/arm/coresight.txt >> @@ -88,6 +88,9 @@ its hardware characteristcs. >> * arm,buffer-size: size of contiguous buffer space for TMC ETR >> (embedded trace router) >> >> + * scatter-gather: boolean. Indicates that the TMC-ETR can safely >> + use the SG mode on this system. >> + > > Needs a vendor prefix. > Thinking further on this, do we need to make it device specific as well - something like "arm,etr-scatter-gather"? That way we don't have to redefine "scatter-gather" for other ARM devices if they happen to need the same property but for different reasons. >> * Optional property for CATU : >> * interrupts : Exactly one SPI may be listed for reporting the address >> error -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html