Re: [net] net: dsa: felix: update base time of time-aware shaper when adjusting PTP time

From: Jakub Kicinski
Date: Wed Jun 15 2022 - 22:58:44 EST


On Wed, 15 Jun 2022 11:36:10 +0800 Xiaoliang Yang wrote:
> When adjusting the PTP clock, the base time of the TAS configuration
> will become unreliable. We need reset the TAS configuration by using a
> new base time.
>
> For example, if the driver gets a base time 0 of Qbv configuration from
> user, and current time is 20000. The driver will set the TAS base time
> to be 20000. After the PTP clock adjustment, the current time becomes
> 10000. If the TAS base time is still 20000, it will be a future time,
> and TAS entry list will stop running. Another example, if the current
> time becomes to be 10000000 after PTP clock adjust, a large time offset
> can cause the hardware to hang.
>
> This patch introduces a tas_clock_adjust() function to reset the TAS
> module by using a new base time after the PTP clock adjustment. This can
> avoid issues above.
>
> Due to PTP clock adjustment can occur at any time, it may conflict with
> the TAS configuration. We introduce a new TAS lock to serialize the
> access to the TAS registers.
>
> Signed-off-by: Xiaoliang Yang <xiaoliang.yang_1@xxxxxxx>

You missed some CCs (./scripts/get_maintainer.pl) and there needs to
be a Fixes tag if you're targeting net.