[PATCH net-next v2 3/7] net: macb: parse PHY nodes found under an MDIO node
Florian Fainelli
f.fainelli at gmail.com
Thu Jul 23 18:33:55 EDT 2020
On 7/23/20 3:08 PM, Codrin.Ciubotariu at microchip.com wrote:
> On 23.07.2020 21:59, Florian Fainelli wrote:
>> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
>>
>> On 7/21/20 10:13 AM, Codrin Ciubotariu wrote:
>>> The MACB embeds an MDIO bus controller. For this reason, the PHY nodes
>>> were represented as sub-nodes in the MACB node. Generally, the
>>> Ethernet controller is different than the MDIO controller, so the PHYs
>>> are probed by a separate MDIO driver. Since adding the PHY nodes directly
>>> under the ETH node became deprecated, we adjust the MACB driver to look
>>> for an MDIO node and register the subnode MDIO devices.
>>>
>>> Signed-off-by: Codrin Ciubotariu <codrin.ciubotariu at microchip.com>
>>> ---
>>>
>>> Changes in v2:
>>> - readded newline removed by mistake;
>>>
>>> drivers/net/ethernet/cadence/macb_main.c | 10 ++++++++++
>>> 1 file changed, 10 insertions(+)
>>>
>>> diff --git a/drivers/net/ethernet/cadence/macb_main.c b/drivers/net/ethernet/cadence/macb_main.c
>>> index 89fe7af5e408..b25c64b45148 100644
>>> --- a/drivers/net/ethernet/cadence/macb_main.c
>>> +++ b/drivers/net/ethernet/cadence/macb_main.c
>>> @@ -740,10 +740,20 @@ static int macb_mii_probe(struct net_device *dev)
>>> static int macb_mdiobus_register(struct macb *bp)
>>> {
>>> struct device_node *child, *np = bp->pdev->dev.of_node;
>>> + struct device_node *mdio_node;
>>> + int ret;
>>>
>>> if (of_phy_is_fixed_link(np))
>>> return mdiobus_register(bp->mii_bus);
>>
>> Does not this need changing as well? Consider the use case of having
>> your MACB Ethernet node have a fixed-link property to describe how it
>> connects to a switch, and your MACB MDIO controller, expressed as a
>> sub-node, describing the MDIO attached switch it connects to.
>
> Right, this is what I was discussing with Claudiu on the other thread. I
> am thinking to just move the look for mdio before checking for
> fixed-link. This will probe the MDIO devices and simple mdiobus_register
> will be called only if the mdio node is missing.
Found it after I had sent this email. What you propose sounds
reasonable, looking forward to v3.
>
> Thank you for your review(s)!
Of course.
--
Florian
More information about the linux-arm-kernel
mailing list