From: Tim Harvey <tharvey@gateworks.com>
To: u-boot@lists.denx.de, "Joe Hershberger" <joe.hershberger@ni.com>,
"Ramon Fried" <rfried.dev@gmail.com>,
"Vladimir Oltean" <vladimir.oltean@nxp.com>,
"Stefano Babic" <sbabic@denx.de>,
"Fabio Estevam" <festevam@gmail.com>,
"NXP i . MX U-Boot Team" <uboot-imx@nxp.com>,
"Marek Behún" <marek.behun@nic.cz>
Cc: Tim Harvey <tharvey@gateworks.com>
Subject: [PATCH v4 0/8] Add MV88E6xxx DSA driver and use on gwventana
Date: Wed, 28 Sep 2022 12:37:24 -0700 [thread overview]
Message-ID: <20220928193732.998665-1-tharvey@gateworks.com> (raw)
This series adds a DSA driver for the MV88E6xxx based on
drivers/net/phy/mv88e61xx and uses it in the gwventana_gw5904_defconfig.
The hope is that the other three boards that use the MV88E61xx driver
can move to this as well eventually so that we can remove the non-dm
driver and the 4 Kconfig options it requires.
The MV88E6xxx has an MDIO interface thus DM_MDIO must be used so support
for a UCLASS_MDIO driver is added to the fec_mxc ethernet driver in a
way that allows a fallback to the previous non DM_MDIO case as there are
many boards out there using this driver that define DM_MDIO but do not
have the required dt props for a DM_MDIO driver which would cause a
regression.
Additionally some other patches are here suggested by Vladimir:
- ensure MDIO children are scanned on post-bind is needed
- sanity check DSA driver required ops are present
- allow DSA drivers to not require xmit/recv functions
- remove unecessary xmit/recv functions from ksz9477 driver
v4:
- use standard Linux internal MDIO dt structure
- use PHY_FIXED_ID define
- rename to mv88e6xxx
- sort includes alphabetically
- remove dsa term from function names
- reduce indentation level and remove unecessary code in of probe_mdio function
- rename pdev to mdev to represent mdio device
v3:
- fix mdios node in dt
- add Vladimir's rb tag's
v2:
- added Ramon's rb tag's to first two patches
- add patches for dsa-uclass to sanity check ops and make xmit/recv
optional
- fec: fix fallback for non conforming DM_MDIO dts
- mv88e61xx:
- rebase on v2022.07-rc2 (use ofnode_get_phy_node)
- remove unused commented out fields from struct
- remove unused PORT_MASK macro
- remove phy from priv struct name
- refactor code from original drivers/net/phy/mv88e61xx with
suggestions from review to consolidate some functions
into mv88e61xx_dsa_port_enable
- remove unecessary skiping of disabling of CPU port
- remove unecessary dev_set_parent_priv
- remove unnecessary static init flag
- replace debug with a dev_warn if switch device-id unsupported
- remove unnecessary xmit/recv functions as we rely on the fact that
only a single port is active instead of mangling packets
Tested on a Gateworks GW5904 which has a Marvell 88E6176 switch hanging
off the IMX6 FEC.
Best Regards,
Tim
Tim Harvey (8):
net: mdio-uclass: scan for dm mdio children on post-bind
net: dsa: move cpu port probe to dsa_post_probe
net: dsa: ensure dsa driver has proper ops
net: dsa: allow rcv() and xmit() to be optional
net: ksz9477: remove unnecessary xmit and recv functions
net: fec: add support for DM_MDIO
net: add MV88E61xx DSA driver
board: gw_ventana: enable MV88E61XX DSA support
arch/arm/dts/imx6qdl-gw5904.dtsi | 31 +
board/gateworks/gw_ventana/gw_ventana.c | 50 +-
configs/gwventana_gw5904_defconfig | 8 +-
drivers/net/Kconfig | 7 +
drivers/net/Makefile | 1 +
drivers/net/fec_mxc.c | 90 ++-
drivers/net/ksz9477.c | 23 -
drivers/net/mv88e6xxx.c | 826 ++++++++++++++++++++++++
net/dsa-uclass.c | 57 +-
net/mdio-uclass.c | 4 +
10 files changed, 1025 insertions(+), 72 deletions(-)
create mode 100644 drivers/net/mv88e6xxx.c
--
2.25.1
next reply other threads:[~2022-09-28 19:37 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-09-28 19:37 Tim Harvey [this message]
2022-09-28 19:37 ` [PATCH v4 1/8] net: mdio-uclass: scan for dm mdio children on post-bind Tim Harvey
2022-09-28 19:37 ` [PATCH v4 2/8] net: dsa: move cpu port probe to dsa_post_probe Tim Harvey
2022-09-28 19:37 ` [PATCH v4 3/8] net: dsa: ensure dsa driver has proper ops Tim Harvey
2022-09-28 19:37 ` [PATCH v4 4/8] net: dsa: allow rcv() and xmit() to be optional Tim Harvey
2022-09-28 19:37 ` [PATCH v4 5/8] net: ksz9477: remove unnecessary xmit and recv functions Tim Harvey
2022-09-28 19:37 ` [PATCH v4 6/8] net: fec: add support for DM_MDIO Tim Harvey
2022-09-28 19:37 ` [PATCH v4 7/8] net: add MV88E61xx DSA driver Tim Harvey
2022-09-28 19:37 ` [PATCH v4 8/8] board: gw_ventana: enable MV88E61XX DSA support Tim Harvey
2022-09-28 19:56 ` Fabio Estevam
2022-09-28 19:59 ` Tim Harvey
2022-10-03 17:13 ` Fabio Estevam
2022-10-03 18:22 ` Tim Harvey
2022-10-03 18:40 ` Fabio Estevam
2022-10-03 19:09 ` Tim Harvey
2022-10-03 22:35 ` Fabio Estevam
2022-10-03 23:39 ` Tim Harvey
2022-10-03 23:46 ` Fabio Estevam
2022-10-04 0:14 ` Fabio Estevam
2022-10-04 0:23 ` Tim Harvey
2022-10-04 0:39 ` Fabio Estevam
2022-10-04 15:26 ` Tim Harvey
2022-10-04 16:25 ` Fabio Estevam
2022-10-04 16:47 ` Fabio Estevam
2022-10-04 16:50 ` Tim Harvey
2022-10-04 16:52 ` Fabio Estevam
2022-10-03 16:26 ` [PATCH v4 0/8] Add MV88E6xxx DSA driver and use on gwventana Fabio Estevam
2022-10-03 16:49 ` Fabio Estevam
2022-10-03 18:47 ` Tim Harvey
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=20220928193732.998665-1-tharvey@gateworks.com \
--to=tharvey@gateworks.com \
--cc=festevam@gmail.com \
--cc=joe.hershberger@ni.com \
--cc=marek.behun@nic.cz \
--cc=rfried.dev@gmail.com \
--cc=sbabic@denx.de \
--cc=u-boot@lists.denx.de \
--cc=uboot-imx@nxp.com \
--cc=vladimir.oltean@nxp.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