diff options
author | Ingo Molnar <mingo@elte.hu> | 2008-11-08 20:23:02 +0100 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-11-08 20:23:02 +0100 |
commit | 895e031707954a9ca26ed4f5f794575313854ed1 (patch) | |
tree | ec7cd5515f346e6f94bc43e63d55ebc8ddf4173d /drivers/net/arm | |
parent | 838e8bb71dc0c892bf8f84abd3c709d8fe3a8d3c (diff) | |
parent | a622cf69b806bbb1887913c04e01d0c25b892876 (diff) |
Merge branch 'linus' into x86/cleanups
Diffstat (limited to 'drivers/net/arm')
-rw-r--r-- | drivers/net/arm/at91_ether.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/net/arm/at91_ether.c b/drivers/net/arm/at91_ether.c index 0fa53464efb..6f431a887e7 100644 --- a/drivers/net/arm/at91_ether.c +++ b/drivers/net/arm/at91_ether.c @@ -1080,7 +1080,8 @@ static int __init at91ether_setup(unsigned long phy_type, unsigned short phy_add init_timer(&lp->check_timer); lp->check_timer.data = (unsigned long)dev; lp->check_timer.function = at91ether_check_link; - } + } else if (lp->board_data.phy_irq_pin >= 32) + gpio_request(lp->board_data.phy_irq_pin, "ethernet_phy"); /* Display ethernet banner */ printk(KERN_INFO "%s: AT91 ethernet at 0x%08x int=%d %s%s (%s)\n", @@ -1167,6 +1168,9 @@ static int __devexit at91ether_remove(struct platform_device *pdev) struct net_device *dev = platform_get_drvdata(pdev); struct at91_private *lp = netdev_priv(dev); + if (lp->board_data.phy_irq_pin >= 32) + gpio_free(lp->board_data.phy_irq_pin); + unregister_netdev(dev); free_irq(dev->irq, dev); dma_free_coherent(NULL, sizeof(struct recv_desc_bufs), lp->dlist, (dma_addr_t)lp->dlist_phys); |