diff options
Diffstat (limited to 'drivers/nubus')
-rw-r--r-- | drivers/nubus/bus.c | 19 | ||||
-rw-r--r-- | drivers/nubus/nubus.c | 2 |
2 files changed, 8 insertions, 13 deletions
diff --git a/drivers/nubus/bus.c b/drivers/nubus/bus.c index d306c348c857..a59b6c4bb5b8 100644 --- a/drivers/nubus/bus.c +++ b/drivers/nubus/bus.c @@ -63,20 +63,15 @@ static struct device nubus_parent = { .init_name = "nubus", }; -int __init nubus_bus_register(void) +static int __init nubus_bus_register(void) { - int err; - - err = device_register(&nubus_parent); - if (err) - return err; - - err = bus_register(&nubus_bus_type); - if (!err) - return 0; + return bus_register(&nubus_bus_type); +} +postcore_initcall(nubus_bus_register); - device_unregister(&nubus_parent); - return err; +int __init nubus_parent_device_register(void) +{ + return device_register(&nubus_parent); } static void nubus_device_release(struct device *dev) diff --git a/drivers/nubus/nubus.c b/drivers/nubus/nubus.c index 4621ff98138c..bb0d63a44f41 100644 --- a/drivers/nubus/nubus.c +++ b/drivers/nubus/nubus.c @@ -875,7 +875,7 @@ static int __init nubus_init(void) return 0; nubus_proc_init(); - err = nubus_bus_register(); + err = nubus_parent_device_register(); if (err) return err; nubus_scan_bus(); |