1
0
mirror of https://xff.cz/git/u-boot/ synced 2025-09-01 08:42:12 +02:00

net: Add eth phy generic driver for shared MDIO

For dual ethernet controllers, the HW design may connect ETH phys to
one MDIO ports. So two different ethernet drivers have to share MDIO bus.
Since two ethernet drivers are independent, we can't ensure their probe
order.

To resolve this problem, introduce an eth phy generic driver and uclass.

After eth-uclass binds, we search the mdio node and binds the phy node
with the eth-phy-generic driver.

When one eth driver get its phy device, the parent of phy device will
probe prior than phy device. So this ensure the eth driver ownes the
MDIO bus will be probed before using its MDIO.

Signed-off-by: Ye Li <ye.li@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
This commit is contained in:
Ye Li
2020-05-03 22:41:14 +08:00
committed by Stefano Babic
parent d2b70205dd
commit 5fe419ef2a
6 changed files with 152 additions and 0 deletions

View File

@@ -13,6 +13,7 @@
#include <dm/uclass-internal.h>
#include <net/pcap.h>
#include "eth_internal.h"
#include <eth_phy.h>
DECLARE_GLOBAL_DATA_PTR;
@@ -461,6 +462,10 @@ static int eth_post_bind(struct udevice *dev)
return -EINVAL;
}
#ifdef CONFIG_DM_ETH_PHY
eth_phy_binds_nodes(dev);
#endif
return 0;
}