Re: [PATCH net-next v1] ptp: document struct ptp_clock_request members

From: Jacob Keller
Date: Wed Nov 18 2020 - 16:35:57 EST




On 11/17/2020 1:38 PM, Ahmad Fatoum wrote:
> It's arguable most people interested in configuring a PPS signal
> want it as external output, not as kernel input. PTP_CLK_REQ_PPS
> is for input though. Add documentation to nudge readers into
> the correct direction.

Agreed. I think at least one driver has abused the PPS in the past as a
way to request that we enable the PPS hardware, resulting in effectively
using it as a limited form of the EXTTS interface. Hopefully this helps
reduce the confusion here!

Reviewed-by: Jacob Keller <jacob.e.keller@xxxxxxxxx>

>
> Signed-off-by: Ahmad Fatoum <a.fatoum@xxxxxxxxxxxxxx>
> ---
> Prompted by Richard's comment here:
> https://lore.kernel.org/netdev/20180525170247.r4gn323udrucmyv6@localhost/
> ---
> include/linux/ptp_clock_kernel.h | 13 +++++++++++++
> 1 file changed, 13 insertions(+)
>
> diff --git a/include/linux/ptp_clock_kernel.h b/include/linux/ptp_clock_kernel.h
> index d3e8ba5c7125..0d47fd33b228 100644
> --- a/include/linux/ptp_clock_kernel.h
> +++ b/include/linux/ptp_clock_kernel.h
> @@ -12,6 +12,19 @@
> #include <linux/pps_kernel.h>
> #include <linux/ptp_clock.h>
>
> +/**
> + * struct ptp_clock_request - request PTP clock event
> + *
> + * @type: The type of the request.
> + * EXTTS: Configure external trigger timestamping
> + * PEROUT: Configure periodic output signal (e.g. PPS)
> + * PPS: trigger internal PPS event for input
> + * into kernel PPS subsystem
> + * @extts: describes configuration for external trigger timestamping.
> + * This is only valid when event == PTP_CLK_REQ_EXTTS.
> + * @perout: describes configuration for periodic output.
> + * This is only valid when event == PTP_CLK_REQ_PEROUT.
> + */
>
> struct ptp_clock_request {
> enum {
>