From b63cb3abbc626dc918828f302bd8ea72e7c226d2 Mon Sep 17 00:00:00 2001 From: Michal Simek Date: Thu, 8 Dec 2016 10:25:44 +0100 Subject: net: xilinx: Use mdio_register_seq() to support multiple instances axi_emac, emaclite and gem have the same issue with registering multiple instances with mdio busses. mdio bus name has to be uniq but drivers are setting up only one name for all. Use mdio_register_seq() and pass dev->seq number to allow multiple mdio instances registration. Reported-by: Phani Kiran Kara Signed-off-by: Michal Simek Series-to: u-boot Series-cc: Phani Kiran Kara diff --git a/drivers/net/xilinx_axi_emac.c b/drivers/net/xilinx_axi_emac.c index 5de06ef..51c7426 100644 --- a/drivers/net/xilinx_axi_emac.c +++ b/drivers/net/xilinx_axi_emac.c @@ -648,9 +648,8 @@ static int axi_emac_probe(struct udevice *dev) priv->bus->read = axiemac_miiphy_read; priv->bus->write = axiemac_miiphy_write; priv->bus->priv = priv; - strcpy(priv->bus->name, "axi_emac"); - ret = mdio_register(priv->bus); + ret = mdio_register_seq(priv->bus, dev->seq); if (ret) return ret; diff --git a/drivers/net/xilinx_emaclite.c b/drivers/net/xilinx_emaclite.c index 78ff44c..ea93cf9 100644 --- a/drivers/net/xilinx_emaclite.c +++ b/drivers/net/xilinx_emaclite.c @@ -566,9 +566,8 @@ static int emaclite_probe(struct udevice *dev) emaclite->bus->read = emaclite_miiphy_read; emaclite->bus->write = emaclite_miiphy_write; emaclite->bus->priv = emaclite; - strcpy(emaclite->bus->name, "emaclite"); - ret = mdio_register(emaclite->bus); + ret = mdio_register_seq(emaclite->bus, dev->seq); if (ret) return ret; diff --git a/drivers/net/zynq_gem.c b/drivers/net/zynq_gem.c index 526eac6..4ab7b40 100644 --- a/drivers/net/zynq_gem.c +++ b/drivers/net/zynq_gem.c @@ -647,9 +647,8 @@ static int zynq_gem_probe(struct udevice *dev) priv->bus->read = zynq_gem_miiphy_read; priv->bus->write = zynq_gem_miiphy_write; priv->bus->priv = priv; - strcpy(priv->bus->name, "gem"); - ret = mdio_register(priv->bus); + ret = mdio_register_seq_name(priv->bus, dev->seq); if (ret) return ret; -- cgit v0.10.2