[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <4003a48f-73e0-4296-bcdc-6a975807c2d5@linaro.org>
Date: Tue, 18 Nov 2025 16:15:31 +0000
From: James Clark <james.clark@...aro.org>
To: Leo Yan <leo.yan@....com>
Cc: Suzuki K Poulose <suzuki.poulose@....com>,
Mike Leach <mike.leach@...aro.org>,
Alexander Shishkin <alexander.shishkin@...ux.intel.com>,
Jonathan Corbet <corbet@....net>, coresight@...ts.linaro.org,
linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org,
linux-doc@...r.kernel.org
Subject: Re: [PATCH v4 13/13] coresight: docs: Document etm4x timestamp
interval option
On 14/11/2025 6:05 pm, Leo Yan wrote:
> On Wed, Nov 12, 2025 at 03:22:19PM +0000, James Clark wrote:
>> Document how the new field is used, maximum value and the interaction
>> with SYNC timestamps.
>>
>> Signed-off-by: James Clark <james.clark@...aro.org>
>> ---
>> Documentation/trace/coresight/coresight.rst | 15 +++++++++++++--
>> 1 file changed, 13 insertions(+), 2 deletions(-)
>>
>> diff --git a/Documentation/trace/coresight/coresight.rst b/Documentation/trace/coresight/coresight.rst
>> index 806699871b80..80b5ed09d69b 100644
>> --- a/Documentation/trace/coresight/coresight.rst
>> +++ b/Documentation/trace/coresight/coresight.rst
>> @@ -613,8 +613,19 @@ They are also listed in the folder /sys/bus/event_source/devices/cs_etm/format/
>> - Session local version of the system wide setting: :ref:`ETM_MODE_RETURNSTACK
>> <coresight-return-stack>`
>> * - timestamp
>> - - Session local version of the system wide setting: :ref:`ETMv4_MODE_TIMESTAMP
>> - <coresight-timestamp>`
>> + - Controls generation and interval of timestamps.
>> +
>> + 0 = off, 1 = maximum interval .. 15 = minimum interval.
>
> I am struggling to understand the "maximum" and "minimum" usage here.
>
> Seems to me, you are saying:
>
> 1 = maximum frequency .. 15 = minimum frequency
>
Yes the documentation was the wrong way around. Will flip it.
>> +
>> + Values 1 - 14 use a counter that decrements every cycle to generate a
>> + timestamp on underflow. The reload value for the counter is 2 raised to
>> + the power of timestamp interval - 1. If the value is 1 then the reload
>> + value is 1, if the value is 11 then the reload value is 1024 etc.
>
> I saw your replying to Randy, yeah, the formula would be much clear.
>
>> +
>> + Setting the minimum interval (15) will disable the counter generated
>> + timestamps, freeing the counter resource, leaving only ones emitted when
>> + a SYNC packet is generated for every 4096 bytes of trace.
>
> "every 4096 bytes" is not always true.
>
> Isn't this defined in TRCSYNCPR.PERIOD? Maybe just say "... for every
> period of trace defined in TRCSYNCPR.PERIOD", or even more general
> "... for every period of trace".
>
> Thanks,
> Leo
>
It would only not be true when using a custom config. I can say that
it's TRCSYNCPR.PERIOD but that the default is 4096 bytes.
>> +
>> * - cc_threshold
>> - Cycle count threshold value. If nothing is provided here or the provided value is 0, then the
>> default value i.e 0x100 will be used. If provided value is less than minimum cycles threshold
>>
>> --
>> 2.34.1
>>
Powered by blists - more mailing lists