All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jakub Kicinski <kuba@kernel.org>
To: "Machnikowski, Maciej" <maciej.machnikowski@intel.com>
Cc: Richard Cochran <richardcochran@gmail.com>,
	"netdev@vger.kernel.org" <netdev@vger.kernel.org>,
	"intel-wired-lan@lists.osuosl.org"
	<intel-wired-lan@lists.osuosl.org>,
	"abyagowi@fb.com" <abyagowi@fb.com>,
	"Nguyen, Anthony L" <anthony.l.nguyen@intel.com>,
	"davem@davemloft.net" <davem@davemloft.net>,
	"linux-kselftest@vger.kernel.org"
	<linux-kselftest@vger.kernel.org>, Jonathan Lemon <bsd@fb.com>
Subject: Re: [RFC v2 net-next 1/2] rtnetlink: Add new RTM_GETSYNCESTATE message to get SyncE status
Date: Tue, 31 Aug 2021 08:32:27 -0700	[thread overview]
Message-ID: <20210831083227.3d9df78a@kicinski-fedora-pc1c0hjn.dhcp.thefacebook.com> (raw)
In-Reply-To: <SJ0PR11MB4958304AA06A63DD6290D3DEEACC9@SJ0PR11MB4958.namprd11.prod.outlook.com>

On Tue, 31 Aug 2021 15:19:36 +0000 Machnikowski, Maciej wrote:
> > It's a reasonable SW design strategy to start simple. Unfortunately,
> > it doesn't apply to stable uAPI design. You're adding a RTNL op, which
> > will have to be supported for ever. If we add anything "later" it will
> > be a strict addition, and will have to be backward compatible. Which
> > I'm not sure how to do when the object we'd operate on would be
> > completely different (clock vs netdev).  
> 
> I agree - the point I'm trying to make here is that the existence of
> the PTP-specific interface will not invalidate the need of having 
> SyncE-specific one as well. Even if we report lock-states for the clock
> we will still need to report lock-states for devices that don't use PTP
> clocks, but support SyncE. (that's also a reason why RTNL is still required).
> 
> The RTNL interface will also address devices that only need the 
> frequency syntonization (especially in Radio Access Networks).
> 
> > 
> > As I said I can write the boilerplate code for you if you prefer, the
> > code implementing the command and the driver interface will be almost
> > identical.  
> 
> I think it's a great idea to start that in parallel to this patch. Then move
> the common structures to the generic layer and use them in both
> SyncE-specific RTNL implementation and PTP-specific part that will
> be added. This won't affect SyncE specific APIs. The "worst" that can
> happen is that the driver will put the same info for PTP part and
> SyncE part if that's the design someone follows.

I don't understand why we need the SyncE RTNL if we have clock API for
controlling the freq source. Are you saying that there are
implementations out there which use SyncE to recover Rx clock and use
it for Tx but the PTP ticker is in a different clock domain?

WARNING: multiple messages have this Message-ID (diff)
From: Jakub Kicinski <kuba@kernel.org>
To: intel-wired-lan@osuosl.org
Subject: [Intel-wired-lan] [RFC v2 net-next 1/2] rtnetlink: Add new RTM_GETSYNCESTATE message to get SyncE status
Date: Tue, 31 Aug 2021 08:32:27 -0700	[thread overview]
Message-ID: <20210831083227.3d9df78a@kicinski-fedora-pc1c0hjn.dhcp.thefacebook.com> (raw)
In-Reply-To: <SJ0PR11MB4958304AA06A63DD6290D3DEEACC9@SJ0PR11MB4958.namprd11.prod.outlook.com>

On Tue, 31 Aug 2021 15:19:36 +0000 Machnikowski, Maciej wrote:
> > It's a reasonable SW design strategy to start simple. Unfortunately,
> > it doesn't apply to stable uAPI design. You're adding a RTNL op, which
> > will have to be supported for ever. If we add anything "later" it will
> > be a strict addition, and will have to be backward compatible. Which
> > I'm not sure how to do when the object we'd operate on would be
> > completely different (clock vs netdev).  
> 
> I agree - the point I'm trying to make here is that the existence of
> the PTP-specific interface will not invalidate the need of having 
> SyncE-specific one as well. Even if we report lock-states for the clock
> we will still need to report lock-states for devices that don't use PTP
> clocks, but support SyncE. (that's also a reason why RTNL is still required).
> 
> The RTNL interface will also address devices that only need the 
> frequency syntonization (especially in Radio Access Networks).
> 
> > 
> > As I said I can write the boilerplate code for you if you prefer, the
> > code implementing the command and the driver interface will be almost
> > identical.  
> 
> I think it's a great idea to start that in parallel to this patch. Then move
> the common structures to the generic layer and use them in both
> SyncE-specific RTNL implementation and PTP-specific part that will
> be added. This won't affect SyncE specific APIs. The "worst" that can
> happen is that the driver will put the same info for PTP part and
> SyncE part if that's the design someone follows.

I don't understand why we need the SyncE RTNL if we have clock API for
controlling the freq source. Are you saying that there are
implementations out there which use SyncE to recover Rx clock and use
it for Tx but the PTP ticker is in a different clock domain?

  reply	other threads:[~2021-08-31 15:32 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-08-29  8:05 [RFC v2 net-next 0/2] Add RTNL interface for SyncE Maciej Machnikowski
2021-08-29  8:05 ` [Intel-wired-lan] " Maciej Machnikowski
2021-08-29  8:05 ` [RFC v2 net-next 1/2] rtnetlink: Add new RTM_GETSYNCESTATE message to get SyncE status Maciej Machnikowski
2021-08-29  8:05   ` [Intel-wired-lan] " Maciej Machnikowski
2021-08-29 15:10   ` Richard Cochran
2021-08-29 15:10     ` [Intel-wired-lan] " Richard Cochran
2021-08-29 16:42     ` Machnikowski, Maciej
2021-08-29 16:42       ` [Intel-wired-lan] " Machnikowski, Maciej
2021-08-29 20:16       ` Andrew Lunn
2021-08-29 20:16         ` [Intel-wired-lan] " Andrew Lunn
2021-08-30 20:57       ` Richard Cochran
2021-08-30 20:57         ` [Intel-wired-lan] " Richard Cochran
2021-08-30 23:29         ` Jakub Kicinski
2021-08-30 23:29           ` [Intel-wired-lan] " Jakub Kicinski
2021-08-31 10:20           ` Machnikowski, Maciej
2021-08-31 10:20             ` [Intel-wired-lan] " Machnikowski, Maciej
2021-08-31 13:33             ` Jakub Kicinski
2021-08-31 13:33               ` [Intel-wired-lan] " Jakub Kicinski
2021-08-31 14:07               ` Machnikowski, Maciej
2021-08-31 14:07                 ` [Intel-wired-lan] " Machnikowski, Maciej
2021-08-31 14:18                 ` Jakub Kicinski
2021-08-31 14:18                   ` [Intel-wired-lan] " Jakub Kicinski
2021-08-31 15:19                   ` Machnikowski, Maciej
2021-08-31 15:19                     ` [Intel-wired-lan] " Machnikowski, Maciej
2021-08-31 15:32                     ` Jakub Kicinski [this message]
2021-08-31 15:32                       ` Jakub Kicinski
2021-08-31 16:00                       ` Machnikowski, Maciej
2021-08-31 16:00                         ` [Intel-wired-lan] " Machnikowski, Maciej
2021-08-31 16:19           ` Richard Cochran
2021-08-31 16:19             ` [Intel-wired-lan] " Richard Cochran
2021-08-31 22:09             ` Machnikowski, Maciej
2021-08-31 22:09               ` [Intel-wired-lan] " Machnikowski, Maciej
2021-09-01  2:02               ` Jakub Kicinski
2021-09-01  2:02                 ` [Intel-wired-lan] " Jakub Kicinski
2021-09-01  2:56                 ` Richard Cochran
2021-09-01  2:56                   ` [Intel-wired-lan] " Richard Cochran
2021-09-01  1:58             ` Jakub Kicinski
2021-09-01  1:58               ` [Intel-wired-lan] " Jakub Kicinski
2021-09-01  2:55               ` Richard Cochran
2021-09-01  2:55                 ` [Intel-wired-lan] " Richard Cochran
2021-08-29  8:05 ` [RFC v2 net-next 2/2] ice: add support for reading SyncE DPLL state Maciej Machnikowski
2021-08-29  8:05   ` [Intel-wired-lan] " Maciej Machnikowski
2021-08-29 11:11   ` kernel test robot

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=20210831083227.3d9df78a@kicinski-fedora-pc1c0hjn.dhcp.thefacebook.com \
    --to=kuba@kernel.org \
    --cc=abyagowi@fb.com \
    --cc=anthony.l.nguyen@intel.com \
    --cc=bsd@fb.com \
    --cc=davem@davemloft.net \
    --cc=intel-wired-lan@lists.osuosl.org \
    --cc=linux-kselftest@vger.kernel.org \
    --cc=maciej.machnikowski@intel.com \
    --cc=netdev@vger.kernel.org \
    --cc=richardcochran@gmail.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.