Re: [PATCH 7/7] net: dsa: b53: Expose PTP timestamping ioctls to userspace
From: Vladimir Oltean
Date: Sun Nov 07 2021 - 09:29:28 EST
On Sun, Nov 07, 2021 at 06:05:34AM -0800, Richard Cochran wrote:
> On Sat, Nov 06, 2021 at 02:36:06AM +0200, Vladimir Oltean wrote:
> > On Fri, Nov 05, 2021 at 05:18:04PM -0700, Richard Cochran wrote:
> > > On Fri, Nov 05, 2021 at 04:28:33PM +0200, Vladimir Oltean wrote:
> > > > 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.
> > >
> > > Drivers may upgrade, but they may not downgrade.
> > >
> > > Which drivers downgrade? We need to fix those buggy drivers.
> > >
> > > Thanks,
> > > Richard
> >
> > Just a quick example
> > https://elixir.bootlin.com/linux/v5.15/source/drivers/net/ethernet/mscc/ocelot.c#L1178
>
> switch (cfg.rx_filter) {
> case HWTSTAMP_FILTER_NONE:
> break;
> case HWTSTAMP_FILTER_ALL:
> case HWTSTAMP_FILTER_SOME:
> case HWTSTAMP_FILTER_PTP_V1_L4_EVENT:
> case HWTSTAMP_FILTER_PTP_V1_L4_SYNC:
> case HWTSTAMP_FILTER_PTP_V1_L4_DELAY_REQ:
> case HWTSTAMP_FILTER_NTP_ALL:
> case HWTSTAMP_FILTER_PTP_V2_L4_EVENT:
> case HWTSTAMP_FILTER_PTP_V2_L4_SYNC:
> case HWTSTAMP_FILTER_PTP_V2_L4_DELAY_REQ:
> case HWTSTAMP_FILTER_PTP_V2_L2_EVENT:
> case HWTSTAMP_FILTER_PTP_V2_L2_SYNC:
> case HWTSTAMP_FILTER_PTP_V2_L2_DELAY_REQ:
> case HWTSTAMP_FILTER_PTP_V2_EVENT:
> case HWTSTAMP_FILTER_PTP_V2_SYNC:
> case HWTSTAMP_FILTER_PTP_V2_DELAY_REQ:
> cfg.rx_filter = HWTSTAMP_FILTER_PTP_V2_EVENT;
> break;
> default:
> mutex_unlock(&ocelot->ptp_lock);
> return -ERANGE;
> }
>
> That is essentially an upgrade to HWTSTAMP_FILTER_PTP_V2_EVENT. The
> change from ALL to HWTSTAMP_FILTER_PTP_V2_EVENT is probably a simple
> oversight, and the driver can be easily fixed.
>
> Thanks,
> Richard
It's essentially the same pattern as what Martin is introducing for b53.