From: Florian Fainelli <f.fainelli@gmail.com>
To: netdev@vger.kernel.org
Cc: Florian Fainelli <f.fainelli@gmail.com>,
privat@egil-hjelmeland.no, andrew@lunn.ch,
vivien.didelot@savoirfairelinux.com, davem@davemloft.net,
rmk+kernel@armlinux.org.uk, sean.wang@mediatek.com,
Woojung.Huh@microchip.com, john@phrozen.org, cphealy@gmail.com
Subject: [PATCH net-next v2 0/9] net: dsa: Plug in PHYLINK support
Date: Thu, 10 May 2018 13:17:28 -0700 [thread overview]
Message-ID: <20180510201737.13887-1-f.fainelli@gmail.com> (raw)
Hi all,
This patch series adds PHYLINK support to DSA which is necessary to support more
complex PHY and pluggable modules setups.
Patch series can be found here:
https://github.com/ffainelli/linux/commits/dsa-phylink-v2
This was tested on:
- dsa-loop
- bcm_sf2
- mv88e6xxx
- b53
With a variety of test cases:
- internal & external MDIO PHYs
- MoCA with link notification through interrupt/MMIO register
- built-in PHYs
- ifconfig up/down for several cycles works
- bind/unbind of the drivers
Changes in v2:
- fixed link configuration for mv88e6xxx (Andrew) after introducing polling
This is technically v2 of what was posted back in March 2018, changes from last
time:
- fixed probe/remove of drivers
- fixed missing gpiod_put() for link GPIOs
- fixed polling of link GPIOs (Russell I would need your SoB on the patch you
provided offline initially, added some modifications to it)
- tested across a wider set of platforms
And everything should still work as expected. Please be aware of the following:
- switch drivers (like bcm_sf2) which may have user-facing network ports using
fixed links would need to implement phylink_mac_ops to remain functional.
PHYLINK does not create a phy_device for fixed links, therefore our
call to adjust_link() from phylink_mac_link_{up,down} would not be calling
into the driver. This *should not* affect CPU/DSA ports which are configured
through adjust_link() but have no network devices
- support for SFP/SFF is now possible, but switch drivers will still need some
modifications to properly support those, including, but not limited to using
the correct binding information. This will be submitted on top of this series
Please do test on your respective platforms/switches and let me know if you
find any issues, hopefully everything still works like before.
Thank you!
Florian Fainelli (7):
net: phy: phylink: Use gpiod_get_value_cansleep()
net: phy: phylink: Release link GPIO
net: dsa: Add PHYLINK switch operations
net: dsa: bcm_sf2: Implement phylink_mac_ops
net: dsa: Eliminate dsa_slave_get_link()
net: dsa: Plug in PHYLINK support
net: dsa: bcm_sf2: Get rid of PHYLIB functions
Russell King (2):
net: phy: phylink: Poll link GPIOs
net: dsa: mv88e6xxx: add PHYLINK support
drivers/net/dsa/bcm_sf2.c | 191 +++++++++++++++----------
drivers/net/dsa/mv88e6xxx/chip.c | 83 +++++++++++
drivers/net/dsa/mv88e6xxx/port.c | 39 ++++++
drivers/net/dsa/mv88e6xxx/port.h | 3 +
drivers/net/phy/phylink.c | 20 ++-
include/net/dsa.h | 25 ++++
net/dsa/Kconfig | 2 +-
net/dsa/dsa_priv.h | 9 --
net/dsa/slave.c | 293 ++++++++++++++++++++++-----------------
9 files changed, 458 insertions(+), 207 deletions(-)
--
2.14.1
next reply other threads:[~2018-05-10 20:17 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-05-10 20:17 Florian Fainelli [this message]
2018-05-10 20:17 ` [PATCH net-next v2 1/9] net: phy: phylink: Use gpiod_get_value_cansleep() Florian Fainelli
2018-05-10 20:17 ` [PATCH net-next v2 2/9] net: phy: phylink: Release link GPIO Florian Fainelli
2018-05-10 20:17 ` [PATCH net-next v2 3/9] net: phy: phylink: Poll link GPIOs Florian Fainelli
2018-05-10 20:29 ` Russell King - ARM Linux
2018-05-10 20:32 ` Florian Fainelli
2018-05-10 20:17 ` [PATCH net-next v2 4/9] net: dsa: Add PHYLINK switch operations Florian Fainelli
2018-05-10 20:17 ` [PATCH net-next v2 5/9] net: dsa: bcm_sf2: Implement phylink_mac_ops Florian Fainelli
2018-05-10 20:17 ` [PATCH net-next v2 6/9] net: dsa: Eliminate dsa_slave_get_link() Florian Fainelli
2018-05-10 20:17 ` [PATCH net-next v2 7/9] net: dsa: mv88e6xxx: add PHYLINK support Florian Fainelli
2018-05-10 20:17 ` [PATCH net-next v2 8/9] net: dsa: Plug in " Florian Fainelli
2018-05-10 20:17 ` [PATCH net-next v2 9/9] net: dsa: bcm_sf2: Get rid of PHYLIB functions Florian Fainelli
2018-05-11 16:23 ` [PATCH net-next v2 0/9] net: dsa: Plug in PHYLINK support David Miller
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=20180510201737.13887-1-f.fainelli@gmail.com \
--to=f.fainelli@gmail.com \
--cc=Woojung.Huh@microchip.com \
--cc=andrew@lunn.ch \
--cc=cphealy@gmail.com \
--cc=davem@davemloft.net \
--cc=john@phrozen.org \
--cc=netdev@vger.kernel.org \
--cc=privat@egil-hjelmeland.no \
--cc=rmk+kernel@armlinux.org.uk \
--cc=sean.wang@mediatek.com \
--cc=vivien.didelot@savoirfairelinux.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).