Re: [RFC PATCH 0/2] AT8031 PHY timestamping support

From: Andrew Lunn
Date: Tue Feb 25 2020 - 18:50:45 EST


On Wed, Feb 26, 2020 at 12:08:17AM +0100, Michael Walle wrote:
> This patchset is the current state of my work for adding PHY timestamping
> support. I just wanted to post this to the mailinglist before I never do
> it. Maybe its a starting point for other people. That being said, I
> wouldn't mind comments ;) The code basically works but there are three
> major caveats:
>
> (1) The reading of timestamps via MDIO sometimes return wrong values. What
> I see is that a part of the timestamp corresponds to the new timestamp
> while another part still contains old values. Thus at the moment, I'm
> reading the registers twice. I don't know if the reading actually
> affects the update of the timestamp or the different timing (my MDIO
> bus is rather slow, so reading the timestamp a second time take some
> amount of time; but I've also tested with some delays and it didn't
> had any effects). There is also no possibility to read the timestamp
> atomically :(

Hi Michael

That sounds fundamentally broken. Which would be odd. Sometimes there
is a way to take a snapshot of the value. Reading the first word could
trigger this snapshot. Or the last word, or some status register. One
would hope the datasheet would talk about this.

Andrew