From: "Marek Behún" <kabel@kernel.org>
To: netdev@vger.kernel.org, Andrew Lunn <andrew@lunn.ch>
Cc: "Rob Herring" <robh+dt@kernel.org>,
devicetree@vger.kernel.org,
"Russell King" <rmk+kernel@armlinux.org.uk>,
"Jakub Kicinski" <kuba@kernel.org>,
"Vladimir Oltean" <olteanv@gmail.com>,
"Sean Anderson" <sean.anderson@seco.com>,
davem@davemloft.net, "Marek Behún" <kabel@kernel.org>
Subject: [PATCH net-next v2 0/8] Extend `phy-mode` to string array
Date: Tue, 23 Nov 2021 17:40:19 +0100 [thread overview]
Message-ID: <20211123164027.15618-1-kabel@kernel.org> (raw)
Hello,
this is v2 of series that extends the `phy-connection-type` /
`phy-mode` property to be an array of strings, instead of just one
string, and makes the corresponding changes to code. It then uses
this changes to make marvell10g PHY driver choose the best MACTYPE
according to which phy-modes are supported by the MAC, the PHY and
the board.
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, because even if a MAC/PHY driver fills all the modes
supported by the driver, still each individual board may have only some
of these 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.
Changes since v1:
- added Reviewed-by tags
- added 10gbase-r example scenario to commit message of patch 4
- changed phylink_update_phy_modes() so that if supported_interfaces is
empty (an unconverted driver that doesn't fill up this member), we
leave it empty
- rewritten phylink_update_phy_modes() according to Sean Anderson's
comment: use phy_interface_and/or() instead of several
if (test_bit) set_bit
- added more explanation to commit message of patch 8, as per Vladimir
Oltean's suggestion
Changes since RFC:
- update also description of the `phy-connection-type` property
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 | 94 ++++++------
drivers/base/property.c | 48 +++++-
drivers/net/phy/marvell10g.c | 140 ++++++++++++++++--
drivers/net/phy/phylink.c | 98 ++++++++++++
include/linux/phy.h | 10 ++
include/linux/property.h | 3 +
net/core/of_net.c | 9 +-
7 files changed, 332 insertions(+), 70 deletions(-)
--
2.32.0
next reply other threads:[~2021-11-23 16:40 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-11-23 16:40 Marek Behún [this message]
2021-11-23 16:40 ` [PATCH net-next v2 1/8] dt-bindings: ethernet-controller: support multiple PHY connection types Marek Behún
2021-11-30 22:26 ` Rob Herring
2021-11-23 16:40 ` [PATCH net-next v2 2/8] net: Update documentation for *_get_phy_mode() functions Marek Behún
2021-11-23 16:40 ` [PATCH net-next v2 3/8] device property: add helper function for getting phy mode bitmap Marek Behún
2021-11-23 16:40 ` [PATCH net-next v2 4/8] net: phylink: update supported_interfaces with modes from fwnode Marek Behún
2021-11-23 21:24 ` Vladimir Oltean
2021-11-23 22:27 ` Marek Behún
2021-11-23 22:54 ` Vladimir Oltean
2021-11-24 11:04 ` Russell King (Oracle)
2021-11-24 12:04 ` Vladimir Oltean
2021-11-24 12:17 ` Marek Behún
2021-11-24 12:31 ` Vladimir Oltean
2021-12-02 22:25 ` Marek Behún
2021-12-04 12:42 ` Vladimir Oltean
2021-11-24 11:50 ` Marek Behún
2021-11-23 16:40 ` [PATCH net-next v2 5/8] net: phylink: pass supported PHY interface modes to phylib Marek Behún
2021-11-23 16:40 ` [PATCH net-next v2 6/8] net: phy: marvell10g: Use generic macro for supported interfaces Marek Behún
2021-11-23 16:40 ` [PATCH net-next v2 7/8] net: phy: marvell10g: Use tabs instead of spaces for indentation Marek Behún
2021-11-23 16:40 ` [PATCH net-next v2 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=20211123164027.15618-1-kabel@kernel.org \
--to=kabel@kernel.org \
--cc=andrew@lunn.ch \
--cc=davem@davemloft.net \
--cc=devicetree@vger.kernel.org \
--cc=kuba@kernel.org \
--cc=netdev@vger.kernel.org \
--cc=olteanv@gmail.com \
--cc=rmk+kernel@armlinux.org.uk \
--cc=robh+dt@kernel.org \
--cc=sean.anderson@seco.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 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).