[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZzTMhGDoi3WcY6MR@shell.armlinux.org.uk>
Date: Wed, 13 Nov 2024 15:57:56 +0000
From: "Russell King (Oracle)" <linux@...linux.org.uk>
To: Kory Maincent <kory.maincent@...tlin.com>
Cc: Jakub Kicinski <kuba@...nel.org>, netdev@...r.kernel.org
Subject: Re: Testing selectable timestamping - where are the tools for this
feature?
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 ? I get:
[{'header': {'dev-index': 1, 'dev-name': 'lo'},
'timestamping': {'bits': {'bit': [{'index': 1, 'name': 'software-transmit'},
{'index': 3, 'name': 'software-receive'},
{'index': 4,
'name': 'software-system-clock'}]},
'nomask': True,
'size': 17}},
... one entry per network device ...
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.
I'm waiting for a kernel to build with nlmon modular to investigate
further.
--
RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
FTTP is here! 80Mbps down 10Mbps up. Decent connectivity at last!
Powered by blists - more mailing lists