From: Richard Cochran <richardcochran@gmail.com>
To: Andrew Lunn <andrew@lunn.ch>
Cc: netdev@vger.kernel.org, David Miller <davem@davemloft.net>,
devicetree@vger.kernel.org,
Florian Fainelli <f.fainelli@gmail.com>,
Jacob Keller <jacob.e.keller@intel.com>,
Mark Rutland <mark.rutland@arm.com>,
Miroslav Lichvar <mlichvar@redhat.com>,
Rob Herring <robh+dt@kernel.org>,
Willem de Bruijn <willemb@google.com>
Subject: Re: [PATCH V3 net-next 2/6] net: Introduce a new MII time stamping interface.
Date: Mon, 27 May 2019 22:17:50 -0700 [thread overview]
Message-ID: <20190528051750.ub4urccdwmkg2u3c@localhost> (raw)
In-Reply-To: <20190522005823.GD6577@lunn.ch>
On Wed, May 22, 2019 at 02:58:23AM +0200, Andrew Lunn wrote:
> > -static int dp83640_hwtstamp(struct phy_device *phydev, struct ifreq *ifr)
> > +static int dp83640_hwtstamp(struct mii_timestamper *mii_ts, struct ifreq *ifr)
> > {
> > - struct dp83640_private *dp83640 = phydev->priv;
> > + struct dp83640_private *dp83640 =
> > + container_of(mii_ts, struct dp83640_private, mii_ts);
> > struct hwtstamp_config cfg;
> > u16 txcfg0, rxcfg0;
>
> Hi Richard
>
> David might complain about reverse christmas tree. Maybe define a
> macro, to_dp83640() which takes mii_ts?
That is nice idea for another series, I think. For now this matches
the existing 'container_of' usage within the driver.
> > +/**
> > + * struct mii_timestamper - Callback interface to MII time stamping devices.
> > + *
> > + * @rxtstamp: Requests a Rx timestamp for 'skb'. If the skb is accepted,
> > + * the MII time stamping device promises to deliver it using
> > + * netif_rx() as soon as a timestamp becomes available. One of
> > + * the PTP_CLASS_ values is passed in 'type'. The function
> > + * must return true if the skb is accepted for delivery.
> > + *
> > + * @txtstamp: Requests a Tx timestamp for 'skb'. The MII time stamping
> > + * device promises to deliver it using skb_complete_tx_timestamp()
> > + * as soon as a timestamp becomes available. One of the PTP_CLASS_
> > + * values is passed in 'type'.
> > + *
> > + * @hwtstamp: Handles SIOCSHWTSTAMP ioctl for hardware time stamping.
> > + * @link_state: Allows the device to respond to changes in the link state.
> > + * @ts_info: Handles ethtool queries for hardware time stamping.
> > + *
> > + * Drivers for PHY time stamping devices should embed their
> > + * mii_timestamper within a private structure, obtaining a reference
> > + * to it using container_of().
> > + */
>
> I wonder if it is worth mentioning that link_state() is called with
> the phy lock held, but none of the others are?
Will do.
Thanks,
Richard
next prev parent reply other threads:[~2019-05-28 5:17 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-05-21 22:47 [PATCH V3 net-next 2/6] net: Introduce a new MII time stamping interface Richard Cochran
2019-05-22 0:58 ` Andrew Lunn
2019-05-28 5:17 ` Richard Cochran [this message]
2019-05-28 14:01 ` Andrew Lunn
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190528051750.ub4urccdwmkg2u3c@localhost \
--to=richardcochran@gmail.com \
--cc=andrew@lunn.ch \
--cc=davem@davemloft.net \
--cc=devicetree@vger.kernel.org \
--cc=f.fainelli@gmail.com \
--cc=jacob.e.keller@intel.com \
--cc=mark.rutland@arm.com \
--cc=mlichvar@redhat.com \
--cc=netdev@vger.kernel.org \
--cc=robh+dt@kernel.org \
--cc=willemb@google.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.