[PATCH v1 2/2] net: mdio: fixup ethernet phy module auto-load function

From: Yinbo Zhu
Date: Mon Nov 22 2021 - 07:15:41 EST


the phy_id is only phy identifier, that phy module auto-load function
should according the phy_id event rather than other information, this
patch is remove other unnecessary information and add phy_id event in
mdio_uevent function and ethernet phy module auto-load function will
work well.

Signed-off-by: Yinbo Zhu <zhuyinbo@xxxxxxxxxxx>
---
drivers/net/phy/mdio_bus.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/drivers/net/phy/mdio_bus.c b/drivers/net/phy/mdio_bus.c
index 6865d93..999f0d4 100644
--- a/drivers/net/phy/mdio_bus.c
+++ b/drivers/net/phy/mdio_bus.c
@@ -962,12 +962,12 @@ static int mdio_bus_match(struct device *dev, struct device_driver *drv)

static int mdio_uevent(struct device *dev, struct kobj_uevent_env *env)
{
- int rc;
+ struct phy_device *pdev;

- /* Some devices have extra OF data and an OF-style MODALIAS */
- rc = of_device_uevent_modalias(dev, env);
- if (rc != -ENODEV)
- return rc;
+ pdev = to_phy_device(dev);
+
+ if (add_uevent_var(env, "MODALIAS=mdio:p%08X", pdev->phy_id))
+ return -ENOMEM;

return 0;
}
@@ -991,7 +991,7 @@ static int mdio_uevent(struct device *dev, struct kobj_uevent_env *env)
};

struct bus_type mdio_bus_type = {
- .name = "mdio_bus",
+ .name = "mdio",
.dev_groups = mdio_bus_dev_groups,
.match = mdio_bus_match,
.uevent = mdio_uevent,
--
1.8.3.1