]> bbs.cooldavid.org Git - net-next-2.6.git/blobdiff - drivers/net/cpmac.c
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
[net-next-2.6.git] / drivers / net / cpmac.c
index 3c58db5952852ad5319741c7135e452e2ad086a0..38de1a4f825f18d735c4b5103d2d4f9b240ba426 100644 (file)
@@ -964,7 +964,7 @@ static int cpmac_open(struct net_device *dev)
        struct sk_buff *skb;
 
        mem = platform_get_resource_byname(priv->pdev, IORESOURCE_MEM, "regs");
-       if (!request_mem_region(mem->start, mem->end - mem->start, dev->name)) {
+       if (!request_mem_region(mem->start, resource_size(mem), dev->name)) {
                if (netif_msg_drv(priv))
                        printk(KERN_ERR "%s: failed to request registers\n",
                               dev->name);
@@ -972,7 +972,7 @@ static int cpmac_open(struct net_device *dev)
                goto fail_reserve;
        }
 
-       priv->regs = ioremap(mem->start, mem->end - mem->start);
+       priv->regs = ioremap(mem->start, resource_size(mem));
        if (!priv->regs) {
                if (netif_msg_drv(priv))
                        printk(KERN_ERR "%s: failed to remap registers\n",
@@ -1049,7 +1049,7 @@ fail_alloc:
        iounmap(priv->regs);
 
 fail_remap:
-       release_mem_region(mem->start, mem->end - mem->start);
+       release_mem_region(mem->start, resource_size(mem));
 
 fail_reserve:
        return res;
@@ -1077,7 +1077,7 @@ static int cpmac_stop(struct net_device *dev)
        free_irq(dev->irq, dev);
        iounmap(priv->regs);
        mem = platform_get_resource_byname(priv->pdev, IORESOURCE_MEM, "regs");
-       release_mem_region(mem->start, mem->end - mem->start);
+       release_mem_region(mem->start, resource_size(mem));
        priv->rx_head = &priv->desc_ring[CPMAC_QUEUES];
        for (i = 0; i < priv->ring_size; i++) {
                if (priv->rx_head[i].skb) {
@@ -1181,7 +1181,8 @@ static int __devinit cpmac_probe(struct platform_device *pdev)
                if (netif_msg_drv(priv))
                        printk(KERN_ERR "%s: Could not attach to PHY\n",
                               dev->name);
-               return PTR_ERR(priv->phy);
+               rc = PTR_ERR(priv->phy);
+               goto fail;
        }
 
        if ((rc = register_netdev(dev))) {