public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Tim Harvey <tharvey@gateworks.com>
To: "Joe Hershberger" <joe.hershberger@ni.com>,
	"Ramon Fried" <rfried.dev@gmail.com>,
	"Vladimir Oltean" <vladimir.oltean@nxp.com>,
	u-boot@lists.denx.de, "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: Chris Packham <Chris.Packham@alliedtelesis.co.nz>,
	Anatolij Gustschin <agust@denx.de>,
	Tim Harvey <tharvey@gateworks.com>
Subject: [PATCH v2 0/8] Add MV88E61xx DSA driver and use on gwventana
Date: Wed, 11 May 2022 17:19:55 -0700	[thread overview]
Message-ID: <20220512002003.16886-1-tharvey@gateworks.com> (raw)

This series adds a DSA driver for the MV88E61xx based on
drivers/net/phy/mv88e61xx and uses in on 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 MV88E61xx 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

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        |  35 +
 board/gateworks/gw_ventana/gw_ventana.c |  50 +-
 configs/gwventana_gw5904_defconfig      |   7 +-
 drivers/net/Kconfig                     |   7 +
 drivers/net/Makefile                    |   1 +
 drivers/net/fec_mxc.c                   |  90 ++-
 drivers/net/ksz9477.c                   |  23 -
 drivers/net/mv88e61xx.c                 | 843 ++++++++++++++++++++++++
 net/dsa-uclass.c                        |  58 +-
 net/mdio-uclass.c                       |   4 +
 10 files changed, 1045 insertions(+), 73 deletions(-)
 create mode 100644 drivers/net/mv88e61xx.c

-- 
2.17.1


             reply	other threads:[~2022-05-12  0:20 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-05-12  0:19 Tim Harvey [this message]
2022-05-12  0:19 ` [PATCH 1/8] net: mdio-uclass: scan for dm mdio children on post-bind Tim Harvey
2022-05-12  0:19 ` [PATCH 2/8] net: dsa: move cpu port probe to dsa_post_probe Tim Harvey
2022-05-18 14:30   ` Vladimir Oltean
2022-05-12  0:19 ` [PATCH 3/8] net: dsa: ensure dsa driver has proper ops Tim Harvey
2022-05-18 14:31   ` Vladimir Oltean
2022-05-12  0:19 ` [PATCH 4/8] net: dsa: allow rcv() and xmit() to be optional Tim Harvey
2022-05-18 14:31   ` Vladimir Oltean
2022-05-12  0:20 ` [PATCH 5/8] net: ksz9477: remove unnecessary xmit and recv functions Tim Harvey
2022-05-18 14:30   ` Vladimir Oltean
2022-05-12  0:20 ` [PATCH 6/8] net: fec: add support for DM_MDIO Tim Harvey
2022-05-12  0:20 ` [PATCH 7/8] net: add MV88E61xx DSA driver Tim Harvey
2022-05-18 14:33   ` Vladimir Oltean
2022-05-12  0:20 ` [PATCH 8/8] board: gw_ventana: enable MV88E61XX DSA support Tim Harvey
2022-05-18 14:41   ` Vladimir Oltean
2022-05-18 16:15     ` Tim Harvey
2022-05-19 13:15       ` Vladimir Oltean

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=20220512002003.16886-1-tharvey@gateworks.com \
    --to=tharvey@gateworks.com \
    --cc=Chris.Packham@alliedtelesis.co.nz \
    --cc=agust@denx.de \
    --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