[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20210604130809.lbyf2m7hvwi7xugu@skbuf>
Date: Fri, 4 Jun 2021 13:08:10 +0000
From: Vladimir Oltean <vladimir.oltean@....com>
To: Michael Sit Wei Hong <michael.wei.hong.sit@...el.com>
CC: "Jose.Abreu@...opsys.com" <Jose.Abreu@...opsys.com>,
"andrew@...n.ch" <andrew@...n.ch>,
"hkallweit1@...il.com" <hkallweit1@...il.com>,
"linux@...linux.org.uk" <linux@...linux.org.uk>,
"kuba@...nel.org" <kuba@...nel.org>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>,
"peppe.cavallaro@...com" <peppe.cavallaro@...com>,
"alexandre.torgue@...s.st.com" <alexandre.torgue@...s.st.com>,
"davem@...emloft.net" <davem@...emloft.net>,
"mcoquelin.stm32@...il.com" <mcoquelin.stm32@...il.com>,
"weifeng.voon@...el.com" <weifeng.voon@...el.com>,
"boon.leong.ong@...el.com" <boon.leong.ong@...el.com>,
"tee.min.tan@...el.com" <tee.min.tan@...el.com>,
"vee.khee.wong@...ux.intel.com" <vee.khee.wong@...ux.intel.com>,
"vee.khee.wong@...el.com" <vee.khee.wong@...el.com>,
"linux-stm32@...md-mailman.stormreply.com"
<linux-stm32@...md-mailman.stormreply.com>,
"linux-arm-kernel@...ts.infradead.org"
<linux-arm-kernel@...ts.infradead.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: [RESEND PATCH net-next v5 1/3] net: stmmac: split xPCS setup from
mdio register
On Fri, Jun 04, 2021 at 02:51:53PM +0300, Vladimir Oltean wrote:
> On Fri, Jun 04, 2021 at 06:57:31PM +0800, Michael Sit Wei Hong wrote:
> > From: Voon Weifeng <weifeng.voon@...el.com>
> >
> > This patch is a preparation patch for the enabling of Intel mGbE 2.5Gbps
> > link speed. The Intel mGbR link speed configuration (1G/2.5G) is depends on
> > a mdio ADHOC register which can be configured in the bios menu.
> > As PHY interface might be different for 1G and 2.5G, the mdio bus need be
> > ready to check the link speed and select the PHY interface before probing
> > the xPCS.
> >
> > Signed-off-by: Voon Weifeng <weifeng.voon@...el.com>
> > Signed-off-by: Michael Sit Wei Hong <michael.wei.hong.sit@...el.com>
> > ---
> > drivers/net/ethernet/stmicro/stmmac/stmmac.h | 1 +
> > .../net/ethernet/stmicro/stmmac/stmmac_main.c | 7 ++
> > .../net/ethernet/stmicro/stmmac/stmmac_mdio.c | 64 ++++++++++---------
> > 3 files changed, 43 insertions(+), 29 deletions(-)
> >
> > diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac.h b/drivers/net/ethernet/stmicro/stmmac/stmmac.h
> > index b6cd43eda7ac..fd7212afc543 100644
> > --- a/drivers/net/ethernet/stmicro/stmmac/stmmac.h
> > +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac.h
> > @@ -311,6 +311,7 @@ enum stmmac_state {
> > int stmmac_mdio_unregister(struct net_device *ndev);
> > int stmmac_mdio_register(struct net_device *ndev);
> > int stmmac_mdio_reset(struct mii_bus *mii);
> > +int stmmac_xpcs_setup(struct mii_bus *mii);
> > void stmmac_set_ethtool_ops(struct net_device *netdev);
> >
> > void stmmac_ptp_register(struct stmmac_priv *priv);
> > diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
> > index 6d41dd6f9f7a..c1331c07623d 100644
> > --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
> > +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
> > @@ -6991,6 +6991,12 @@ int stmmac_dvr_probe(struct device *device,
> > }
> > }
> >
> > + if (priv->plat->mdio_bus_data->has_xpcs) {
>
> stmmac_mdio_register has:
>
> if (!mdio_bus_data)
> return 0;
>
> which suggests that some platforms might not populate priv->plat->mdio_bus_data.
>
> Are you sure it is safe to go straight to dereferencing mdio_bus_data->has_xpcs
> in the common driver probe function?
This patch seems to agree with me:
https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net.git/commit/?id=593f555fbc6091bbaec8dd2a38b47ee643412e61
Powered by blists - more mailing lists