Hi Gatien
On 9/1/25 11:16, Gatien Chevallier wrote:
> When doing some testing on stm32mp2x platforms(MACv5), I noticed that
> the command previously used with a MACv4 for genering a PPS signal:
> echo "0 0 0 1 1" > /sys/class/ptp/ptp0/period
> did not work.
>
> This is because the arguments passed through this command must contain
> the start time at which the PPS should be generated, relative to the
> MAC system time. For some reason, a time set in the past seems to work
> with a MACv4.
>
> Because passing such an argument is tedious, consider that any time
> set in the past is an offset regarding the MAC system time. This way,
> this does not impact existing scripts and the past time use case is
> handled. Edit: But maybe that's not important and we can just change
> the default behavior to this.
>
> Example to generate a flexible PPS signal that has a 1s period 3s
> relative to when the command was entered:
>
> echo "0 3 0 1 1" > /sys/class/ptp/ptp0/period
>
> Signed-off-by: Gatien Chevallier <gatien.chevallier@foss.st.com>
> ---
> Changes in v4:
> - Export timespec64_add_safe() symbol.
> - Link to v3: https://lore.kernel.org/r/20250827-relative_flex_pps-v3-0-673e77978ba2@foss.st.com
>
> Changes in v3:
> - Fix warning on braces for the switch case.
> - Link to v2: https://lore.kernel.org/r/20250729-relative_flex_pps-v2-0-3e5f03525c45@foss.st.com
>
> Changes in v2:
> - Drop STMMAC_RELATIVE_FLEX_PPS config switch
> - Add PTP reference clock in stm32mp13x SoCs
> - Link to v1: https://lore.kernel.org/r/20250724-relative_flex_pps-v1-0-37ca65773369@foss.st.com
>
> ---
> Gatien Chevallier (3):
> time: export timespec64_add_safe() symbol
> drivers: net: stmmac: handle start time set in the past for flexible PPS
> ARM: dts: stm32: add missing PTP reference clocks on stm32mp13x SoCs
>
> arch/arm/boot/dts/st/stm32mp131.dtsi | 2 ++
> arch/arm/boot/dts/st/stm32mp133.dtsi | 2 ++
> drivers/net/ethernet/stmicro/stmmac/stmmac_ptp.c | 34 +++++++++++++++++++++++-
> kernel/time/time.c | 1 +
> 4 files changed, 38 insertions(+), 1 deletion(-)
> ---
> base-commit: 864ecc4a6dade82d3f70eab43dad0e277aa6fc78
> change-id: 20250723-relative_flex_pps-faa2fbcaf835
>
> Best regards,
DT patch applied on stm32-next.
Thanks!
Alex