From: Jesse Brandeburg <jesse.brandeburg@intel.com>
To: Michael Walle <michael@walle.cc>,
Heiner Kallweit <hkallweit1@gmail.com>,
Russell King <linux@armlinux.org.uk>,
"David S. Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
Felix Fietkau <nbd@nbd.name>, John Crispin <john@phrozen.org>,
Sean Wang <sean.wang@mediatek.com>,
Mark Lee <Mark-MC.Lee@mediatek.com>,
"Lorenzo Bianconi" <lorenzo@kernel.org>,
Matthias Brugger <matthias.bgg@gmail.com>,
Bryan Whitehead <bryan.whitehead@microchip.com>,
<UNGLinuxDriver@microchip.com>,
Giuseppe Cavallaro <peppe.cavallaro@st.com>,
Alexandre Torgue <alexandre.torgue@foss.st.com>,
Jose Abreu <joabreu@synopsys.com>,
Maxime Coquelin <mcoquelin.stm32@gmail.com>,
"Joel Stanley" <joel@jms.id.au>, Andrew Jeffery <andrew@aj.id.au>
Cc: <netdev@vger.kernel.org>, <linux-kernel@vger.kernel.org>,
<linux-arm-kernel@lists.infradead.org>,
<linux-mediatek@lists.infradead.org>,
<linux-stm32@st-md-mailman.stormreply.com>,
<linux-aspeed@lists.ozlabs.org>, Andrew Lunn <andrew@lunn.ch>
Subject: Re: [PATCH net-next 3/6] net: mdio: Add workaround for Micrel PHYs which are not C45 compatible
Date: Tue, 17 Jan 2023 17:07:36 -0800 [thread overview]
Message-ID: <feb36396-74ec-06c1-9d91-9c980d0775e7@intel.com> (raw)
In-Reply-To: <20230116-net-next-remove-probe-capabilities-v1-3-5aa29738a023@walle.cc>
On 1/16/2023 4:55 AM, Michael Walle wrote:
> From: Andrew Lunn <andrew@lunn.ch>
>
> After scanning the bus for C22 devices, check if any Micrel PHYs have
> been found. They are known to do bad things if there are C45
> transactions on the bus. Prevent the scanning of the bus using C45 if
> such a PHY has been detected.
>
> Signed-off-by: Andrew Lunn <andrew@lunn.ch>
> Signed-off-by: Michael Walle <michael@walle.cc>
> ---
...
> @@ -600,6 +601,31 @@ static int mdiobus_scan_bus_c45(struct mii_bus *bus)
> return 0;
> }
>
> +/* There are some C22 PHYs which do bad things when where is a C45
> + * transaction on the bus, like accepting a read themselves, and
> + * stomping over the true devices reply, to performing a write to
> + * themselves which was intended for another device. Now that C22
> + * devices have been found, see if any of them are bad for C45, and if we
> + * should skip the C45 scan.
> + */
> +static bool mdiobus_prevent_c45_scan(struct mii_bus *bus)
> +{
> + struct phy_device *phydev;
> + u32 oui;
nit: phydev and oui declarations can move inside the loop
> + int i;
> +
> + for (i = 0; i < PHY_MAX_ADDR; i++) {
> + phydev = mdiobus_get_phy(bus, i);
> + if (!phydev)
> + continue;
> + oui = phydev->phy_id >> 10;
> +
> + if (oui == MICREL_OUI)
> + return true;
> + }
> + return false;
> +}
> +
> /**
> * __mdiobus_register - bring up all the PHYs on a given bus and attach them to bus
> * @bus: target mii_bus
next prev parent reply other threads:[~2023-01-18 1:14 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-01-16 12:55 [PATCH net-next 0/6] net: phy: Remove probe_capabilities Michael Walle
2023-01-16 12:55 ` [PATCH net-next 1/6] net: mdio: Move mdiobus_scan() within file Michael Walle
2023-01-18 1:07 ` Jesse Brandeburg
2023-01-16 12:55 ` [PATCH net-next 2/6] net: mdio: Rework scanning of bus ready for quirks Michael Walle
2023-01-18 1:07 ` Jesse Brandeburg
2023-01-18 1:17 ` Jakub Kicinski
2023-01-16 12:55 ` [PATCH net-next 3/6] net: mdio: Add workaround for Micrel PHYs which are not C45 compatible Michael Walle
2023-01-18 1:07 ` Jesse Brandeburg [this message]
2023-01-16 12:55 ` [PATCH net-next 4/6] net: mdio: scan bus based on bus capabilities for C22 and C45 Michael Walle
2023-01-18 1:07 ` Jesse Brandeburg
2023-01-16 12:55 ` [PATCH net-next 5/6] net: phy: Decide on C45 capabilities based on presence of method Michael Walle
2023-01-18 1:07 ` Jesse Brandeburg
2023-01-16 12:55 ` [PATCH net-next 6/6] net: phy: Remove probe_capabilities Michael Walle
2023-01-18 1:08 ` Jesse Brandeburg
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=feb36396-74ec-06c1-9d91-9c980d0775e7@intel.com \
--to=jesse.brandeburg@intel.com \
--cc=Mark-MC.Lee@mediatek.com \
--cc=UNGLinuxDriver@microchip.com \
--cc=alexandre.torgue@foss.st.com \
--cc=andrew@aj.id.au \
--cc=andrew@lunn.ch \
--cc=bryan.whitehead@microchip.com \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=hkallweit1@gmail.com \
--cc=joabreu@synopsys.com \
--cc=joel@jms.id.au \
--cc=john@phrozen.org \
--cc=kuba@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-aspeed@lists.ozlabs.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mediatek@lists.infradead.org \
--cc=linux-stm32@st-md-mailman.stormreply.com \
--cc=linux@armlinux.org.uk \
--cc=lorenzo@kernel.org \
--cc=matthias.bgg@gmail.com \
--cc=mcoquelin.stm32@gmail.com \
--cc=michael@walle.cc \
--cc=nbd@nbd.name \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=peppe.cavallaro@st.com \
--cc=sean.wang@mediatek.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
all inboxes | Powered by JetHome®