aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid S. Miller2007-07-14 00:41:08 -0700
committerDavid S. Miller2007-07-16 04:04:45 -0700
commitf8be339c02c1e543eee8e09ffe600c0e61be5898 (patch)
tree9a51f8b7e0e584be9bc142c61ef6da39c7924182
parent4f0234f4f9da485ecb9729af1b88567700fd4767 (diff)
[SPARC64]: Unconditionally register vio_bus_type.
The VIO drivers register themselves unconditionally just like those of any other bus type, so to avoid crashes on non-VIO systems we need to always register vio_bus_type. Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--arch/sparc64/kernel/vio.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/arch/sparc64/kernel/vio.c b/arch/sparc64/kernel/vio.c
index 8b269aabff07..49569b44ea1f 100644
--- a/arch/sparc64/kernel/vio.c
+++ b/arch/sparc64/kernel/vio.c
@@ -335,6 +335,13 @@ static int __init vio_init(void)
int err, len;
u64 root;
+ err = bus_register(&vio_bus_type);
+ if (err) {
+ printk(KERN_ERR "VIO: Could not register bus type err=%d\n",
+ err);
+ return err;
+ }
+
hp = mdesc_grab();
if (!hp)
return 0;
@@ -374,13 +381,6 @@ static int __init vio_init(void)
cdev_cfg_handle = *cfg_handle;
- err = bus_register(&vio_bus_type);
- if (err) {
- printk(KERN_ERR "VIO: Could not register bus type err=%d\n",
- err);
- return err;
- }
-
create_devices(hp, root);
mdesc_release(hp);