From: Vladimir Oltean <vladimir.oltean@nxp.com>
To: Andrew Lunn <andrew@lunn.ch>
Cc: Rob Herring <robh@kernel.org>,
netdev@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org, linux-phy@lists.infradead.org,
"Russell King (Oracle)" <rmk+kernel@armlinux.org.uk>,
Heiner Kallweit <hkallweit1@gmail.com>,
Florian Fainelli <f.fainelli@gmail.com>,
Madalin Bucur <madalin.bucur@nxp.com>,
Ioana Ciornei <ioana.ciornei@nxp.com>,
Camelia Groza <camelia.groza@nxp.com>,
Li Yang <leoyang.li@nxp.com>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
Conor Dooley <conor@kernel.org>,
Sean Anderson <sean.anderson@seco.com>,
Maxime Chevallier <maxime.chevallier@bootlin.com>,
Vinod Koul <vkoul@kernel.org>,
Kishon Vijay Abraham I <kishon@kernel.org>
Subject: Re: [RFC PATCH net-next 8/8] dt-bindings: net: fsl,backplane-anlt: new binding document
Date: Mon, 21 Aug 2023 23:34:33 +0300 [thread overview]
Message-ID: <20230821203433.ysulh2bixfypbhsk@skbuf> (raw)
In-Reply-To: <e3afb3d5-6efe-46de-81ca-7f0163c4b04d@lunn.ch>
On Mon, Aug 21, 2023 at 10:20:43PM +0200, Andrew Lunn wrote:
> > > > - items:
> > > > - pattern: "^ethernet-phy-id[a-f0-9]{4}\\.[a-f0-9]{4}$"
> > > > - const: ethernet-phy-ieee802.3-c45
> > > > + - items:
> > > > + - const: fsl,lx2160a-backplane-anlt
> > > > + - const: ethernet-phy-ieee802.3-c45
> > >
> > > What's the benefit of having ethernet-phy-ieee802.3-c45? Will it work if
> > > the OS only understands that and not fsl,lx2160a-backplane-anlt?
> >
> > No. The "is_c45" bool won't get set correctly in fwnode_mdiobus_register_phy().
> >
> > is_c45 = fwnode_device_is_compatible(child, "ethernet-phy-ieee802.3-c45");
> >
> > With that bool set incorrectly, the MDIO protocol cannot access the device's
> > registers.
> >
> > > > + description:
> > > > + Some C45 PHYs have no PHY ID in the standard location, and there is
> > > > + also no PHY ID allocated for them to fake. They are identified by the
> > > > + primary compatible string, plus the secondary one to distinguish them
> > > > + from a raw MDIO device.
>
> Could you fake ID registers? Is this on any arbitrary MDIO bus, or an
> internal bus with its own MDIO driver which could trap reads to the ID
> registers and return well known values?
>
> Andrew
The MDIO bus is not arbitrary, the integration choice with this register
layout is specific to the LX2160A SoC, and it's an internal PHY there.
But, there's already something else at those MDIO registers (where the
standard PHY ID location is), in the MMD that the AN/LT block responds to.
And that would be:
/* Auto-Negotiation Control and Status Registers are on page 0: 0x0 */
static const u16 mtip_lx2160a_an_regs[] = {
[AN_CTRL] = 0,
[AN_STAT] = 1,
[AN_ADV_0] = 2, // overlaps with MII_PHYSID1
[AN_ADV_1] = 3, // overlaps with MII_PHYSID2
[AN_ADV_2] = 4,
[AN_LPA_0] = 5, // overlaps with MDIO_DEVS1
[AN_LPA_1] = 6, // overlaps with MDIO_DEVS2
[AN_LPA_2] = 7,
[AN_MS_CNT] = 8,
[AN_ADV_XNP_0] = 9,
[AN_ADV_XNP_1] = 10,
[AN_ADV_XNP_2] = 11,
[AN_LPA_XNP_0] = 12,
[AN_LPA_XNP_1] = 13,
[AN_LPA_XNP_2] = 14,
[AN_BP_ETH_STAT] = 15,
};
The AN advertisement registers are kinda important to the operation of
the driver, so I wouldn't want to mask them with fake PHY ID values
reported by the MDIO controller.
The other option would be to somehow make the mtip_backplane driver
remap (and thus, standardize) its own register space as phy_read_mmd()
and phy_write_mmd() see it, but it's not clear at all how that would
be done, or if it was done before / would be useful generally.
next prev parent reply other threads:[~2023-08-21 20:34 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-08-17 15:06 [RFC PATCH net-next 0/8] Add C72/C73 copper backplane support for LX2160 Vladimir Oltean
2023-08-17 15:06 ` [RFC PATCH net-next 1/8] phy: introduce the phy_check_cdr_lock() function Vladimir Oltean
2023-08-17 15:06 ` [RFC PATCH net-next 2/8] phy: introduce the PHY_MODE_ETHERNET_PHY mode for phy_set_mode_ext() Vladimir Oltean
2023-08-21 17:30 ` Sean Anderson
2023-08-21 18:13 ` Vladimir Oltean
2023-08-21 19:40 ` Sean Anderson
2023-08-21 18:14 ` Russell King (Oracle)
2023-08-21 18:15 ` Vladimir Oltean
2023-08-17 15:06 ` [RFC PATCH net-next 3/8] phy: xgkr: add configuration interface for copper backplane Ethernet PHYs Vladimir Oltean
2023-08-17 15:06 ` [RFC PATCH net-next 4/8] net: phy: add C73 base page helpers Vladimir Oltean
2023-08-17 15:06 ` [RFC PATCH net-next 5/8] net: phy: balance calls to ->suspend() and ->resume() Vladimir Oltean
2023-08-17 15:06 ` [RFC PATCH net-next 6/8] net: phy: initialize phydev->master_slave_set to MASTER_SLAVE_CFG_UNKNOWN Vladimir Oltean
2023-08-17 15:06 ` [RFC PATCH net-next 7/8] net: phy: mtip_backplane: add driver for MoreThanIP backplane AN/LT core Vladimir Oltean
2023-08-17 15:06 ` [RFC PATCH net-next 8/8] dt-bindings: net: fsl,backplane-anlt: new binding document Vladimir Oltean
2023-08-21 19:58 ` Rob Herring
2023-08-21 20:11 ` Vladimir Oltean
2023-08-21 20:20 ` Andrew Lunn
2023-08-21 20:34 ` Vladimir Oltean [this message]
2023-08-21 21:10 ` Andrew Lunn
2023-08-21 21:55 ` Vladimir Oltean
2023-08-22 14:10 ` Andrew Lunn
2023-09-06 14:02 ` 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=20230821203433.ysulh2bixfypbhsk@skbuf \
--to=vladimir.oltean@nxp.com \
--cc=andrew@lunn.ch \
--cc=camelia.groza@nxp.com \
--cc=conor@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=f.fainelli@gmail.com \
--cc=hkallweit1@gmail.com \
--cc=ioana.ciornei@nxp.com \
--cc=kishon@kernel.org \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=leoyang.li@nxp.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-phy@lists.infradead.org \
--cc=madalin.bucur@nxp.com \
--cc=maxime.chevallier@bootlin.com \
--cc=netdev@vger.kernel.org \
--cc=rmk+kernel@armlinux.org.uk \
--cc=robh@kernel.org \
--cc=sean.anderson@seco.com \
--cc=vkoul@kernel.org \
/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