[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20241113171443.697ac278@kmaincent-XPS-13-7390>
Date: Wed, 13 Nov 2024 17:14:43 +0100
From: Kory Maincent <kory.maincent@...tlin.com>
To: "Russell King (Oracle)" <linux@...linux.org.uk>
Cc: Jakub Kicinski <kuba@...nel.org>, netdev@...r.kernel.org
Subject: Re: Testing selectable timestamping - where are the tools for this
feature?
On Wed, 13 Nov 2024 15:57:56 +0000
"Russell King (Oracle)" <linux@...linux.org.uk> wrote:
> On Wed, Nov 13, 2024 at 04:16:02PM +0100, Kory Maincent wrote:
> > Hello Russell,
> >
> > On Wed, 13 Nov 2024 14:46:25 +0000
> > "Russell King (Oracle)" <linux@...linux.org.uk> wrote:
> >
> > > Hi Kory,
> > >
> > > I've finally found some cycles (and time when I'm next to the platform)
> > > to test the selectable timestamping feature. However, I'm struggling to
> > > get it to work.
> > >
> > > In your email
> > > https://lore.kernel.org/20240709-feature_ptp_netnext-v17-0-b5317f50df2a@bootlin.com/
> > > you state that "You can test it with the ethtool source on branch
> > > feature_ptp of: https://github.com/kmaincent/ethtool". I cloned this
> > > repository, checked out the feature_ptp branch, and while building
> > > I get the following warnings:
> > >
> > > My conclusion is... your ethtool sources for testing this feature are
> > > broken, or this is no longer the place to test this feature.
> >
> > Yeah, it was for v3 of the patch series. It didn't follow up to v19, I am
> > using ynl tool which is the easiest way to test it.
> > As there were a lot of changes along the way, updating ethtool every time
> > was not a good idea.
> >
> > Use ynl tool. Commands are described in the last patch of the series:
> > https://lore.kernel.org/all/20241030-feature_ptp_netnext-v19-10-94f8aadc9d5c@bootlin.com/
> >
> > You simply need to install python python-yaml and maybe others python
> > subpackages.
> > Copy the tool "tools/net/ynl" and the specs "Documentation/netlink/" on the
> > board.
> >
> > Then run the ynl commands.
>
> Thanks... fairly unweildly but at least it's functional. However,
> running the first, I immediately find a problem:
>
> # ./ynl/cli.py --spec netlink/specs/ethtool.yaml --no-schema --dump
> tsinfo-get --json '{"header":{"dev-name":"eth0"}}'
>
> One would expect this to only return results for eth0 ?
Indeed it should! That's weird, I will investigate.
> Also, I don't see more than one timestamper on any interface - there
> should be two on eth2, one for the MAC and one for the PHY. I see the
> timestamper for the mvpp2 MAC, but nothing for the PHY. The PTP clock
> on the PHY is definitely registered (/dev/ptp0), which means
> phydev->mii_ts should be pointing to the MII timestamper for the PHY.
>
> I've also tried with --json '{"header":{"dev-name":"eth2"}}' but no
> difference - it still reports all interfaces and only one timestamper
> for eth2.
Sorry forgot to explain that you need to register PTP clock with the function
phydev_ptp_clock_register() in the PHY driver.
It will be changed in v20 as request by Jakub. I will save the hwtstamp source
and phydev pointer in the netdev core instead.
Regards,
--
Köry Maincent, Bootlin
Embedded Linux and kernel engineering
https://bootlin.com
Powered by blists - more mailing lists