mdio: Move allocation of interrupts into core
Have mdio_alloc() create the array of interrupt numbers, and initialize it to POLLING. This is what most MDIO drivers want, so allowing code to be removed from the drivers. Signed-off-by: Andrew Lunn <andrew@lunn.ch> Reviewed-by: Florian Fainelli <f.fainelli@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
35d2aeac98
commit
e7f4dc3536
@@ -441,12 +441,6 @@ static int macb_mii_init(struct macb *bp)
|
||||
bp->mii_bus->parent = &bp->dev->dev;
|
||||
pdata = dev_get_platdata(&bp->pdev->dev);
|
||||
|
||||
bp->mii_bus->irq = kmalloc(sizeof(int)*PHY_MAX_ADDR, GFP_KERNEL);
|
||||
if (!bp->mii_bus->irq) {
|
||||
err = -ENOMEM;
|
||||
goto err_out_free_mdiobus;
|
||||
}
|
||||
|
||||
dev_set_drvdata(&bp->dev->dev, bp->mii_bus);
|
||||
|
||||
np = bp->pdev->dev.of_node;
|
||||
@@ -471,9 +465,6 @@ static int macb_mii_init(struct macb *bp)
|
||||
goto err_out_unregister_bus;
|
||||
}
|
||||
} else {
|
||||
for (i = 0; i < PHY_MAX_ADDR; i++)
|
||||
bp->mii_bus->irq[i] = PHY_POLL;
|
||||
|
||||
if (pdata)
|
||||
bp->mii_bus->phy_mask = pdata->phy_mask;
|
||||
|
||||
@@ -481,7 +472,7 @@ static int macb_mii_init(struct macb *bp)
|
||||
}
|
||||
|
||||
if (err)
|
||||
goto err_out_free_mdio_irq;
|
||||
goto err_out_free_mdiobus;
|
||||
|
||||
err = macb_mii_probe(bp->dev);
|
||||
if (err)
|
||||
@@ -491,8 +482,6 @@ static int macb_mii_init(struct macb *bp)
|
||||
|
||||
err_out_unregister_bus:
|
||||
mdiobus_unregister(bp->mii_bus);
|
||||
err_out_free_mdio_irq:
|
||||
kfree(bp->mii_bus->irq);
|
||||
err_out_free_mdiobus:
|
||||
mdiobus_free(bp->mii_bus);
|
||||
err_out:
|
||||
@@ -2980,7 +2969,6 @@ static int macb_remove(struct platform_device *pdev)
|
||||
if (bp->phy_dev)
|
||||
phy_disconnect(bp->phy_dev);
|
||||
mdiobus_unregister(bp->mii_bus);
|
||||
kfree(bp->mii_bus->irq);
|
||||
mdiobus_free(bp->mii_bus);
|
||||
|
||||
/* Shutdown the PHY if there is a GPIO reset */
|
||||
|
Reference in New Issue
Block a user