Use mdio_alloc() again to allocate MDIO bus. This is possible
because all the miiphybb parameters and ops passing is handled in
at bb_miiphy_read()/bb_miiphy_write() level.

Signed-off-by: Marek Vasut <[email protected]>
---
Cc: Jim Liu <[email protected]>
Cc: Joe Hershberger <[email protected]>
Cc: Mario Six <[email protected]>
Cc: Michael Chang <[email protected]>
Cc: Nobuhiro Iwamatsu <[email protected]>
Cc: Parvathi Bhogaraju <[email protected]>
Cc: Paul Barker <[email protected]>
Cc: Ramon Fried <[email protected]>
Cc: Tom Rini <[email protected]>
Cc: [email protected]
---
 board/gdsys/a38x/ihs_phys.c | 9 ++-------
 1 file changed, 2 insertions(+), 7 deletions(-)

diff --git a/board/gdsys/a38x/ihs_phys.c b/board/gdsys/a38x/ihs_phys.c
index 7aa427e0312..d51301869cd 100644
--- a/board/gdsys/a38x/ihs_phys.c
+++ b/board/gdsys/a38x/ihs_phys.c
@@ -244,14 +244,9 @@ static int mii_bb_miiphy_write(struct mii_dev *miidev, int 
addr,
 
 int register_miiphy_bus(uint k, struct mii_dev **bus)
 {
-       struct bb_miiphy_bus *bb_miiphy = bb_miiphy_alloc();
-       struct mii_dev *mdiodev;
+       struct mii_dev *mdiodev = mdio_alloc();
        int retval;
 
-       if (!bb_miiphy)
-               return -ENOMEM;
-
-       mdiodev = &bb_miiphy->mii;
        snprintf(mdiodev->name, MDIO_NAME_LEN, "ihs%d", k);
        mdiodev->read = mii_bb_miiphy_read;
        mdiodev->write = mii_bb_miiphy_write;
@@ -260,7 +255,7 @@ int register_miiphy_bus(uint k, struct mii_dev **bus)
        retval = mdio_register(mdiodev);
        if (retval < 0)
                return retval;
-       *bus = &bb_miiphy->mii;
+       *bus = mdiodev;
 
        return mii_mdio_init(k);
 }
-- 
2.47.2

Reply via email to