RE: [PATCH net v2 2/3] net: enetc: fix support for PTP_EXTTS_REQUEST2 ioctl

From: Wei Fang

Date: Fri Oct 09 2026 - 22:27:48 EST


> Commit 7c571ac57d9d ("net: ptp: introduce .supported_extts_flags to
> ptp_clock_info") moved the validation of the external timestamp request
> flags into the PTP core. A driver that does not set
> .supported_extts_flags still accepts the legacy PTP_EXTTS_REQUEST ioctl,
> but every PTP_EXTTS_REQUEST2 request is rejected with -EOPNOTSUPP.
>
> The ENETC timer is the QorIQ 1588 timer, set up by ptp_qoriq_init(), which
> programs TMR_CTRL with ETEP1 and ETEP2 cleared, so it timestamps the
> rising edge of its external trigger inputs. Declare that, with
> PTP_STRICT_FLAGS, so that a falling edge request is rejected instead of
> being timestamped on the rising edge.
>
> This also makes the legacy PTP_EXTTS_REQUEST ioctl strict: a request for
> the falling edge, or for both edges, now fails with -EOPNOTSUPP instead
> of being timestamped on the rising edge. That cannot be avoided: the core
> adds PTP_STRICT_FLAGS to every PTP_EXTTS_REQUEST2 request, so a driver
> has to declare it to accept them, and once declared it applies to both
> ioctls. Commit 3200fdd4021d ("broadcom: fix support for
> PTP_EXTTS_REQUEST2 ioctl") made the same change for bcm-phy-ptp.
>
> Fixes: 7c571ac57d9d ("net: ptp: introduce .supported_extts_flags to
> ptp_clock_info")
> Reviewed-by: Jacob Keller <jacob.e.keller@xxxxxxxxx>
> Reviewed-by: Kory Maincent <kory.maincent@xxxxxxxxxxx>
> Signed-off-by: Vincent Jardin <vjardin@xxxxxxx>
> ---
> drivers/net/ethernet/freescale/enetc/enetc_ptp.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/net/ethernet/freescale/enetc/enetc_ptp.c
> b/drivers/net/ethernet/freescale/enetc/enetc_ptp.c
> index 162cbc801730..5ffee882d624 100644
> --- a/drivers/net/ethernet/freescale/enetc/enetc_ptp.c
> +++ b/drivers/net/ethernet/freescale/enetc/enetc_ptp.c
> @@ -16,6 +16,7 @@ static struct ptp_clock_info enetc_ptp_caps = {
> .n_per_out = 0,
> .n_pins = 0,
> .pps = 1,
> + .supported_extts_flags = PTP_RISING_EDGE | PTP_STRICT_FLAGS,
> .adjfine = ptp_qoriq_adjfine,
> .adjtime = ptp_qoriq_adjtime,
> .gettime64 = ptp_qoriq_gettime,
>
> --
> 2.43.0
>

Reviewed-by: Wei Fang <wei.fang@xxxxxxx>