On 7/9/2024 6:53 AM, Kory Maincent wrote: > Either the MAC or the PHY can provide hwtstamp, so we should be able to > read the tsinfo for any hwtstamp provider. > > Enhance 'get' command to retrieve tsinfo of hwtstamp providers within a > network topology. > > Add support for a specific dump command to retrieve all hwtstamp > providers within the network topology, with added functionality for > filtered dump to target a single interface. > > Signed-off-by: Kory Maincent <kory.maincent@xxxxxxxxxxx> > --- > > Pointer attached_dev is used to know if the phy is on the net topology. > This might not be enough and might need Maxime Chevallier link topology > patch series: > https://lore.kernel.org/netdev/20240213150431.1796171-1-maxime.chevallier@xxxxxxxxxxx/ > Reviewed-by: Jacob Keller <jacob.e.keller@xxxxxxxxx> One thing which applies more broadly to the whole series, but I see the focus right now is on selecting between NETDEV and PHYLIB. For ice (E800 series) hardware, the timestamps are captured by the PHY, but its not managed by phylib, its managed by firmware. In our case we would obviously report NETDEV in this case. The hardware only has one timestamp point and the fact that it happens at the PHY layer is not relevant since you can't select or change it. There are some future plans in the work for hardware based on the ixgbe driver which could timestamp at either the MAC or PHY (with varying trade-offs in precision vs what can be timestamped), and (perhaps unfortunately), the PHY would likely not manageable by phylib. There is also the possibility of something like DMA or completion timestamps which are distinct from MAC timestamps. But again can have varying trade offs. I'm hopeful this work can be extended somehow to enable selection between the different mechanisms, even when the kernel device being represented is the same netdev.