devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Marek Behún" <kabel@kernel.org>
To: Andrew Lunn <andrew@lunn.ch>, netdev@vger.kernel.org
Cc: devicetree@vger.kernel.org, "Rob Herring" <robh+dt@kernel.org>,
	"Russell King" <rmk+kernel@armlinux.org.uk>,
	pali@kernel.org, "Marek Behún" <kabel@kernel.org>
Subject: [PATCH RFC net-next 0/8] Extend `phy-mode` to string array
Date: Wed, 10 Nov 2021 20:07:01 +0100	[thread overview]
Message-ID: <20211110190709.16505-1-kabel@kernel.org> (raw)

Hello,

I know that net-next is closed now, so this is just a RFC to get some
feedback/reviews on this. Hopefully this is not a problem, if so,
please ignore it.

This series extends the `phy-connection-type` / `phy-mode` property to
be an array of strings, instead of just one string.

Conventionaly the `phy-mode` means "this is the mode I want the PHY to
operate in". But we now have some PHYs that may need to change the PHY
mode during operation (marvell10g PHY driver), and so we need to know
all the supported modes. Russell King is working on MAC and PHY drivers
to inform phylink on which PHY interface modes they support, but it is
not enough, for a MAC/PHY driver may fill all the modes supported by
the driver, but still each individual board may have only some of those
modes actually wired.

This series
- changes the type of the `phy-mode` property to be an array of PHY
  interface strings,
- updated documentation of of_get_phy_mode() and related to inform that
  only first mode is returned by these functions (since this function
  is needed to still support conventional usage of the `phy-mode`
  property),
- adds fwnode_get_phy_modes() function which reads the `phy-mode` array
  and fills bitmap with mentioned modes,
- adds code to phylink to intersect the supported interfaces bitmap
  supplied by MAC driver, with interface modes defined in device-tree
  (and keeps backwards compatibility with conventional usage of the
   phy-mode property, for more information read the commit message of
   patch 4/8),
- passes supported interfaces to PHY driver so that it may configure
  a PHY to a specific mode given these interfaces,
- uses this information in marvell10g driver.

Marek

Marek Behún (7):
  dt-bindings: ethernet-controller: support multiple PHY connection
    types
  net: Update documentation for *_get_phy_mode() functions
  device property: add helper function for getting phy mode bitmap
  net: phylink: update supported_interfaces with modes from fwnode
  net: phylink: pass supported PHY interface modes to phylib
  net: phy: marvell10g: Use generic macro for supported interfaces
  net: phy: marvell10g: Use tabs instead of spaces for indentation

Russell King (1):
  net: phy: marvell10g: select host interface configuration

 .../bindings/net/ethernet-controller.yaml     |  88 +++++------
 drivers/base/property.c                       |  48 +++++-
 drivers/net/phy/marvell10g.c                  | 140 ++++++++++++++++--
 drivers/net/phy/phylink.c                     |  91 ++++++++++++
 include/linux/phy.h                           |  10 ++
 include/linux/property.h                      |   3 +
 net/core/of_net.c                             |   9 +-
 7 files changed, 321 insertions(+), 68 deletions(-)

-- 
2.32.0


             reply	other threads:[~2021-11-10 19:07 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-11-10 19:07 Marek Behún [this message]
2021-11-10 19:07 ` [PATCH RFC net-next 1/8] dt-bindings: ethernet-controller: support multiple PHY connection types Marek Behún
2021-11-10 19:07 ` [PATCH RFC net-next 2/8] net: Update documentation for *_get_phy_mode() functions Marek Behún
2021-11-10 19:07 ` [PATCH RFC net-next 3/8] device property: add helper function for getting phy mode bitmap Marek Behún
2021-11-10 19:07 ` [PATCH RFC net-next 4/8] net: phylink: update supported_interfaces with modes from fwnode Marek Behún
2021-11-10 19:07 ` [PATCH RFC net-next 5/8] net: phylink: pass supported PHY interface modes to phylib Marek Behún
2021-11-10 19:07 ` [PATCH RFC net-next 6/8] net: phy: marvell10g: Use generic macro for supported interfaces Marek Behún
2021-11-10 19:07 ` [PATCH RFC net-next 7/8] net: phy: marvell10g: Use tabs instead of spaces for indentation Marek Behún
2021-11-10 19:07 ` [PATCH RFC net-next 8/8] net: phy: marvell10g: select host interface configuration Marek Behún

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=20211110190709.16505-1-kabel@kernel.org \
    --to=kabel@kernel.org \
    --cc=andrew@lunn.ch \
    --cc=devicetree@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=pali@kernel.org \
    --cc=rmk+kernel@armlinux.org.uk \
    --cc=robh+dt@kernel.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).