From: Vladimir Oltean <olteanv@gmail.com>
To: Jakub Kicinski <kuba@kernel.org>
Cc: Richard Cochran <richardcochran@gmail.com>,
Martin Kaistra <martin.kaistra@linutronix.de>,
Florian Fainelli <f.fainelli@gmail.com>,
Andrew Lunn <andrew@lunn.ch>,
Vivien Didelot <vivien.didelot@gmail.com>,
Kurt Kanzenbach <kurt@linutronix.de>,
"David S. Miller" <davem@davemloft.net>,
John Stultz <john.stultz@linaro.org>,
Thomas Gleixner <tglx@linutronix.de>,
Stephen Boyd <sboyd@kernel.org>,
Russell King <linux@armlinux.org.uk>,
Marc Kleine-Budde <mkl@pengutronix.de>,
linux-kernel@vger.kernel.org, netdev@vger.kernel.org
Subject: Re: [PATCH 7/7] net: dsa: b53: Expose PTP timestamping ioctls to userspace
Date: Fri, 5 Nov 2021 19:25:39 +0200 [thread overview]
Message-ID: <20211105172539.2bmj4bavcyw2uimf@skbuf> (raw)
In-Reply-To: <20211105080939.2508a51e@kicinski-fedora-pc1c0hjn.dhcp.thefacebook.com>
On Fri, Nov 05, 2021 at 08:09:39AM -0700, Jakub Kicinski wrote:
> On Fri, 5 Nov 2021 16:28:33 +0200 Vladimir Oltean wrote:
> > On Fri, Nov 05, 2021 at 07:13:19AM -0700, Richard Cochran wrote:
> > > On Fri, Nov 05, 2021 at 02:38:01PM +0100, Martin Kaistra wrote:
> > > > Ok, then I will remove HWTSTAMP_FILTER_PTP_V2_(EVENT|SYNC|DELAY_REQ) from
> > > > this list, what about HWTSTAMP_FILTER_ALL?
> > >
> > > AKK means time stamp every received frame, so your driver should
> > > return an error in this case as well.
> >
> > What is the expected convention exactly? There are other drivers that
> > downgrade the user application's request to what they support, and at
> > least ptp4l does not error out, it just prints a warning.
>
> Which is sad because that's one of the best documented parts of our API:
>
> Desired behavior is passed into the kernel and to a specific device by
> calling ioctl(SIOCSHWTSTAMP) with a pointer to a struct ifreq whose
> ifr_data points to a struct hwtstamp_config. The tx_type and
> rx_filter are hints to the driver what it is expected to do. If
> the requested fine-grained filtering for incoming packets is not
> supported, the driver may time stamp more than just the requested types
> of packets.
>
> Drivers are free to use a more permissive configuration than the requested
> configuration. It is expected that drivers should only implement directly the
> most generic mode that can be supported. For example if the hardware can
> support HWTSTAMP_FILTER_V2_EVENT, then it should generally always upscale
> HWTSTAMP_FILTER_V2_L2_SYNC_MESSAGE, and so forth, as HWTSTAMP_FILTER_V2_EVENT
> is more generic (and more useful to applications).
>
> A driver which supports hardware time stamping shall update the struct
> with the actual, possibly more permissive configuration. If the
> requested packets cannot be time stamped, then nothing should be
> changed and ERANGE shall be returned (in contrast to EINVAL, which
> indicates that SIOCSHWTSTAMP is not supported at all).
>
> https://www.kernel.org/doc/html/latest/networking/timestamping.html#hardware-timestamping-configuration-siocshwtstamp-and-siocghwtstamp
Yeah, sorry, I've been all over that documentation file for the past few
days, but I missed that section. "that's one of the best documented
parts of our API" is a nice euphemism for all the SO_TIMESTAMPING flags :)
next prev parent reply other threads:[~2021-11-05 17:25 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-11-04 13:31 [PATCH 0/7] Add PTP support for BCM53128 switch Martin Kaistra
2021-11-04 13:31 ` [PATCH 1/7] net: dsa: b53: Add BroadSync HD register definitions Martin Kaistra
2021-11-06 2:29 ` Florian Fainelli
2021-11-04 13:31 ` [PATCH 2/7] net: dsa: b53: Move struct b53_device to include/linux/dsa/b53.h Martin Kaistra
2021-11-04 13:31 ` [PATCH 3/7] timecounter: allow for non-power of two overflow Martin Kaistra
2021-11-04 13:31 ` [PATCH 4/7] net: dsa: b53: Add PHC clock support Martin Kaistra
2021-11-04 17:28 ` Richard Cochran
2021-11-04 17:49 ` Richard Cochran
2021-11-06 2:32 ` Florian Fainelli
2021-11-08 15:00 ` Martin Kaistra
2021-11-04 13:31 ` [PATCH 5/7] net: dsa: b53: Add logic for RX timestamping Martin Kaistra
2021-11-06 2:36 ` Florian Fainelli
2021-11-04 13:32 ` [PATCH 6/7] net: dsa: b53: Add logic for TX timestamping Martin Kaistra
2021-11-06 2:50 ` Florian Fainelli
2021-11-08 9:57 ` Martin Kaistra
2021-11-04 13:32 ` [PATCH 7/7] net: dsa: b53: Expose PTP timestamping ioctls to userspace Martin Kaistra
2021-11-04 17:42 ` Richard Cochran
2021-11-05 13:38 ` Martin Kaistra
2021-11-05 14:13 ` Richard Cochran
2021-11-05 14:14 ` Richard Cochran
2021-11-05 14:28 ` Vladimir Oltean
2021-11-05 15:09 ` Jakub Kicinski
2021-11-05 17:25 ` Vladimir Oltean [this message]
2021-11-06 0:18 ` Richard Cochran
2021-11-06 0:36 ` Vladimir Oltean
2021-11-07 14:05 ` Richard Cochran
2021-11-07 14:27 ` Vladimir Oltean
2021-11-08 14:48 ` Richard Cochran
2021-11-25 17:05 ` Vladimir Oltean
2021-11-26 8:42 ` Kurt Kanzenbach
2021-11-26 16:31 ` Richard Cochran
2021-11-26 16:42 ` Vladimir Oltean
2021-11-26 17:03 ` Richard Cochran
2021-11-26 17:18 ` Vladimir Oltean
2021-11-04 17:29 ` [PATCH 0/7] Add PTP support for BCM53128 switch Jakub Kicinski
2021-11-05 13:08 ` Martin Kaistra
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20211105172539.2bmj4bavcyw2uimf@skbuf \
--to=olteanv@gmail.com \
--cc=andrew@lunn.ch \
--cc=davem@davemloft.net \
--cc=f.fainelli@gmail.com \
--cc=john.stultz@linaro.org \
--cc=kuba@kernel.org \
--cc=kurt@linutronix.de \
--cc=linux-kernel@vger.kernel.org \
--cc=linux@armlinux.org.uk \
--cc=martin.kaistra@linutronix.de \
--cc=mkl@pengutronix.de \
--cc=netdev@vger.kernel.org \
--cc=richardcochran@gmail.com \
--cc=sboyd@kernel.org \
--cc=tglx@linutronix.de \
--cc=vivien.didelot@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).