remove setup of platform device from jazzsonic.c

remove setup platform device from jazzsonic, which is done in arch code now

Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
This commit is contained in:
Thomas Bogendoerfer 2007-09-08 21:46:49 +02:00 committed by David S. Miller
parent 99cd149efe
commit ed9f0e0bf3

View File

@ -45,7 +45,6 @@
#include <asm/jazzdma.h> #include <asm/jazzdma.h>
static char jazz_sonic_string[] = "jazzsonic"; static char jazz_sonic_string[] = "jazzsonic";
static struct platform_device *jazz_sonic_device;
#define SONIC_MEM_SIZE 0x100 #define SONIC_MEM_SIZE 0x100
@ -69,14 +68,6 @@ static unsigned int sonic_debug = SONIC_DEBUG;
static unsigned int sonic_debug = 1; static unsigned int sonic_debug = 1;
#endif #endif
/*
* Base address and interrupt of the SONIC controller on JAZZ boards
*/
static struct {
unsigned int port;
unsigned int irq;
} sonic_portlist[] = { {JAZZ_ETHERNET_BASE, JAZZ_ETHERNET_IRQ}, {0, 0}};
/* /*
* We cannot use station (ethernet) address prefixes to detect the * We cannot use station (ethernet) address prefixes to detect the
* sonic controller since these are board manufacturer depended. * sonic controller since these are board manufacturer depended.
@ -215,13 +206,12 @@ static int __init jazz_sonic_probe(struct platform_device *pdev)
{ {
struct net_device *dev; struct net_device *dev;
struct sonic_local *lp; struct sonic_local *lp;
struct resource *res;
int err = 0; int err = 0;
int i; int i;
/* res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
* Don't probe if we're not running on a Jazz board. if (!res)
*/
if (mips_machgroup != MACH_GROUP_JAZZ)
return -ENODEV; return -ENODEV;
dev = alloc_etherdev(sizeof(struct sonic_local)); dev = alloc_etherdev(sizeof(struct sonic_local));
@ -235,20 +225,9 @@ static int __init jazz_sonic_probe(struct platform_device *pdev)
netdev_boot_setup_check(dev); netdev_boot_setup_check(dev);
if (dev->base_addr >= KSEG0) { /* Check a single specified location. */ dev->base_addr = res->start;
err = sonic_probe1(dev); dev->irq = platform_get_irq(pdev, 0);
} else if (dev->base_addr != 0) { /* Don't probe at all. */ err = sonic_probe1(dev);
err = -ENXIO;
} else {
for (i = 0; sonic_portlist[i].port; i++) {
dev->base_addr = sonic_portlist[i].port;
dev->irq = sonic_portlist[i].irq;
if (sonic_probe1(dev) == 0)
break;
}
if (!sonic_portlist[i].port)
err = -ENODEV;
}
if (err) if (err)
goto out; goto out;
err = register_netdev(dev); err = register_netdev(dev);
@ -303,38 +282,12 @@ static struct platform_driver jazz_sonic_driver = {
static int __init jazz_sonic_init_module(void) static int __init jazz_sonic_init_module(void)
{ {
int err; return platform_driver_register(&jazz_sonic_driver);
if ((err = platform_driver_register(&jazz_sonic_driver))) {
printk(KERN_ERR "Driver registration failed\n");
return err;
}
jazz_sonic_device = platform_device_alloc(jazz_sonic_string, 0);
if (!jazz_sonic_device)
goto out_unregister;
if (platform_device_add(jazz_sonic_device)) {
platform_device_put(jazz_sonic_device);
jazz_sonic_device = NULL;
}
return 0;
out_unregister:
platform_driver_unregister(&jazz_sonic_driver);
return -ENOMEM;
} }
static void __exit jazz_sonic_cleanup_module(void) static void __exit jazz_sonic_cleanup_module(void)
{ {
platform_driver_unregister(&jazz_sonic_driver); platform_driver_unregister(&jazz_sonic_driver);
if (jazz_sonic_device) {
platform_device_unregister(jazz_sonic_device);
jazz_sonic_device = NULL;
}
} }
module_init(jazz_sonic_init_module); module_init(jazz_sonic_init_module);