net: dsa: microchip: Make MDIO bus name unique

In configurations with 2 or more DSA clusters it will fail to allocate
unique MDIO bus names as only the switch ID is used, fix this by using
a combination of the tree ID and switch ID when needed

Signed-off-by: Jesse Van Gavere <jesse.vangavere@scioteq.com>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Link: https://patch.msgid.link/20241206204202.649912-1-jesse.vangavere@scioteq.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
Jesse Van Gavere 2024-12-06 21:42:02 +01:00 committed by Jakub Kicinski
parent 2d20773aec
commit ca78588805

View File

@ -2550,7 +2550,11 @@ static int ksz_mdio_register(struct ksz_device *dev)
bus->read = ksz_sw_mdio_read;
bus->write = ksz_sw_mdio_write;
bus->name = "ksz user smi";
snprintf(bus->id, MII_BUS_ID_SIZE, "SMI-%d", ds->index);
if (ds->dst->index != 0) {
snprintf(bus->id, MII_BUS_ID_SIZE, "SMI-%d-%d", ds->dst->index, ds->index);
} else {
snprintf(bus->id, MII_BUS_ID_SIZE, "SMI-%d", ds->index);
}
}
ret = ksz_parse_dt_phy_config(dev, bus, mdio_np);