X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=drivers%2Fnet%2Fdepca.c;h=b1cbe99249c15afbfbd7ea4fe58fb505611e2f81;hb=e82ca04387dd6c98722f5f48235089839fd04268;hp=0d33a93df96b8a2081ad5e984b14121462cffd76;hpb=3b621ee5df437d3f332a635ab6421aaa61a7dc2b;p=powerpc.git diff --git a/drivers/net/depca.c b/drivers/net/depca.c index 0d33a93df9..b1cbe99249 100644 --- a/drivers/net/depca.c +++ b/drivers/net/depca.c @@ -235,7 +235,6 @@ ========================================================================= */ -#include #include #include #include @@ -398,13 +397,19 @@ static struct mca_driver depca_mca_driver = { }; #endif -static int depca_isa_probe (struct device *); +static int depca_isa_probe (struct platform_device *); -static struct device_driver depca_isa_driver = { - .name = depca_string, - .bus = &platform_bus_type, +static int __devexit depca_isa_remove(struct platform_device *pdev) +{ + return depca_device_remove(&pdev->dev); +} + +static struct platform_driver depca_isa_driver = { .probe = depca_isa_probe, - .remove = __devexit_p(depca_device_remove), + .remove = __devexit_p(depca_isa_remove), + .driver = { + .name = depca_string, + }, }; /* @@ -932,11 +937,8 @@ static int depca_start_xmit(struct sk_buff *skb, struct net_device *dev) if (skb->len < 1) goto out; - if (skb->len < ETH_ZLEN) { - skb = skb_padto(skb, ETH_ZLEN); - if (skb == NULL) - goto out; - } + if (skb_padto(skb, ETH_ZLEN)) + goto out; netif_stop_queue(dev); @@ -1406,7 +1408,7 @@ static int __init depca_mca_probe(struct device *device) irq = 11; break; default: - printk("%s: mca_probe IRQ error. You should never get here (%d).\n", dev->name, where); + printk("%s: mca_probe IRQ error. You should never get here (%d).\n", mdev->name, where); return -EINVAL; } @@ -1525,7 +1527,7 @@ static enum depca_type __init depca_shmem_probe (ulong *mem_start) return adapter; } -static int __init depca_isa_probe (struct device *device) +static int __init depca_isa_probe (struct platform_device *device) { struct net_device *dev; struct depca_private *lp; @@ -1533,7 +1535,7 @@ static int __init depca_isa_probe (struct device *device) enum depca_type adapter = unknown; int status = 0; - ioaddr = (u_long) device->platform_data; + ioaddr = (u_long) device->dev.platform_data; if ((status = depca_common_init (ioaddr, &dev))) goto out; @@ -1553,7 +1555,7 @@ static int __init depca_isa_probe (struct device *device) lp->adapter = adapter; lp->mem_start = mem_start; - if ((status = depca_hw_init(dev, device))) + if ((status = depca_hw_init(dev, &device->dev))) goto out_free; return 0; @@ -2082,7 +2084,7 @@ static int __init depca_module_init (void) #ifdef CONFIG_EISA err |= eisa_driver_register (&depca_eisa_driver); #endif - err |= driver_register (&depca_isa_driver); + err |= platform_driver_register (&depca_isa_driver); depca_platform_probe (); return err; @@ -2097,7 +2099,7 @@ static void __exit depca_module_exit (void) #ifdef CONFIG_EISA eisa_driver_unregister (&depca_eisa_driver); #endif - driver_unregister (&depca_isa_driver); + platform_driver_unregister (&depca_isa_driver); for (i = 0; depca_io_ports[i].iobase; i++) { if (depca_io_ports[i].device) {