On Tue, May 8, 2018 at 10:48 AM, Suzuki K Poulose <Suzuki.Poulose@xxxxxxx> wrote: > On 04/05/18 23:56, Rob Herring wrote: >> >> On Thu, May 3, 2018 at 3:32 PM, Mathieu Poirier >> <mathieu.poirier@xxxxxxxxxx> wrote: >>> >>> 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. > > > >>>>> --- >>>>> 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. >> >> >> No. If we had a bunch of cases, then we'd probably want to have just >> 'scatter-gather'. > > > Does it mean "arm,scatter-gather" ? Yes. Use that. > If we ever wanted to add the device > specific information, I would prefer to go with "arm,tmc-scatter-gather" > and not "etr-scatter-gather". They both could mean different things. > >> >> BTW, if SG had already been supported, then I'd say this is a quirk >> and we should invert this property. Otherwise, you'd be disabling once >> enabled SG and require working platforms to update their dtb. Of >> course, I shouldn't really let the state of an OS driver influence the >> DT binding. >> > > The SG support is added with this series. So, the OS has never made use > of the feature. Linux never did, but other OSs use DT, hence why I said "an OS driver", not "the OS driver". But in reality, I'd guess only Linux has Coresight support at all. Rob -- 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