mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2025-01-24 14:54:49 +08:00
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:
parent
99cd149efe
commit
ed9f0e0bf3
@ -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);
|
||||||
|
Loading…
Reference in New Issue
Block a user